diff options
Diffstat (limited to 'support/scripts')
-rwxr-xr-x | support/scripts/test-pkg | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/support/scripts/test-pkg b/support/scripts/test-pkg index 0e7779de49..f9f994402d 100755 --- a/support/scripts/test-pkg +++ b/support/scripts/test-pkg @@ -6,7 +6,7 @@ TOOLCHAINS_URL='http://autobuild.buildroot.org/toolchains/configs/toolchain-conf main() { local o O opts local cfg dir pkg random toolchain - local ret nb nb_skip nb_fail + local ret nb nb_skip nb_fail nb_tc local -a toolchains o='hc:d:p:r:' @@ -60,7 +60,8 @@ main() { ) ) - if [ ${#toolchains[@]} -eq 0 ]; then + nb_tc="${#toolchains[@]}" + if [ ${nb_tc} -eq 0 ]; then printf "error: no toolchain found (networking issue?)\n" >&2; exit 1 fi @@ -68,13 +69,15 @@ main() { nb_skip=0 nb_fail=0 for toolchain in "${toolchains[@]}"; do + : $((nb++)) + printf "%40s [%*d/%d]: " "$(basename "${toolchain}" .config)" \ + ${#nb_tc} ${nb} ${nb_tc} build_one "${dir}" "${toolchain}" "${cfg}" "${pkg}" && ret=0 || ret=${?} case ${ret} in - (0) ;; - (1) : $((nb_skip++));; - (2) : $((nb_fail++));; + (0) printf "OK\n";; + (1) : $((nb_skip++)); printf "SKIPPED\n";; + (2) : $((nb_fail++)); printf "FAILED\n";; esac - : $((nb++)) done printf "%d builds, %d skipped, %d failed\n" ${nb} ${nb_skip} ${nb_fail} @@ -90,13 +93,10 @@ build_one() { # Using basename(1) on a URL works nicely toolchain="$(basename "${url}" .config)" - printf "%40s: " "${toolchain}" - dir="${dir}/${toolchain}" mkdir -p "${dir}" if ! curl -s "${url}" >"${dir}/.config"; then - printf "FAILED\n" return 2 fi @@ -109,7 +109,6 @@ build_one() { cat "${cfg}" >>"${dir}/.config" if ! make O="${dir}" olddefconfig > "${dir}/logfile" 2>&1; then - printf "FAILED\n" return 2 fi # We want all the options from the snippet to be present as-is (set @@ -120,7 +119,6 @@ build_one() { # done in the same locale. comm -23 <(sort "${cfg}") <(sort "${dir}/.config") >"${dir}/missing.config" if [ -s "${dir}/missing.config" ]; then - printf "SKIPPED\n" return 1 fi # Remove file, it's empty anyway. @@ -128,18 +126,14 @@ build_one() { if [ -n "${pkg}" ]; then if ! make O="${dir}" "${pkg}-dirclean" >> "${dir}/logfile" 2>&1; then - printf "FAILED\n" return 2 fi fi # shellcheck disable=SC2086 if ! make O="${dir}" ${pkg} >> "${dir}/logfile" 2>&1; then - printf "FAILED\n" return 2 fi - - printf "OK\n" } help() { |