aboutsummaryrefslogtreecommitdiffstats
path: root/sbo-batch-test
diff options
context:
space:
mode:
Diffstat (limited to 'sbo-batch-test')
-rwxr-xr-xsbo-batch-test37
1 files changed, 34 insertions, 3 deletions
diff --git a/sbo-batch-test b/sbo-batch-test
index 01280a3..a6ec6b4 100755
--- a/sbo-batch-test
+++ b/sbo-batch-test
@@ -646,6 +646,31 @@ CHROOT_EOF
return 1
}
+# Echo a human label for a package's cache outcome, given its SlackBuild dir and
+# whether it is the run's target. Mirrors cache_decision but renders text.
+# target, build (new) | target, rebuild: A -> B | cached (V) | rebuild: A -> B | build (new)
+cache_label() {
+ local dir="$1" is_target="$2"
+ local cat prog ver dec
+ cat="$(category_of "$dir")"; prog="$(basename "$dir")"; ver="$(version_of "$dir")"
+ dec="$(cache_decision "$cat" "$prog" "$ver")"
+ local label
+ case "$dec" in
+ cached) label="cached ($ver)" ;;
+ bump:*) label="rebuild: ${dec#bump:}"; label="${label/:/ -> }" ;;
+ *) label="build (new)" ;;
+ esac
+ # The target always builds; never show it as plain "cached".
+ if [[ "$is_target" == "1" ]]; then
+ case "$dec" in
+ cached) label="build (cached $ver, rebuilt as target)" ;;
+ esac
+ echo "target, $label"
+ else
+ echo "$label"
+ fi
+}
+
# =============================================================================
# Run one target: fresh overlay, build its resolved chain, teardown.
# Args: <target-slackbuild-dir>
@@ -677,14 +702,20 @@ run_target() {
echo " build order:"
local d
for d in "${RESOLVED_ORDER[@]}"; do
- echo " $(pkg_key "$d")$([[ "${HAS_README[$d]:-}" == 1 ]] && echo " [%README%]")"
+ local it=0; [[ "$d" == "$target_dir" ]] && it=1
+ local rdm=""; [[ "${HAS_README[$d]:-}" == 1 ]] && rdm=" [%README%]"
+ printf " %-30s %s%s\n" "$(pkg_key "$d")" "$(cache_label "$d" "$it")" "$rdm"
echo "$(pkg_key "$d")" >> "$RUN_DIR/build-order.txt"
done
return
fi
- echo " build order: ${RESOLVED_ORDER[*]##*/}"
- for d in "${RESOLVED_ORDER[@]}"; do echo "$(pkg_key "$d")" >> "$RUN_DIR/build-order.txt"; done
+ echo " build order:"
+ for d in "${RESOLVED_ORDER[@]}"; do
+ local it=0; [[ "$d" == "$target_dir" ]] && it=1
+ printf " %-30s %s\n" "$(pkg_key "$d")" "$(cache_label "$d" "$it")"
+ echo "$(pkg_key "$d")" >> "$RUN_DIR/build-order.txt"
+ done
local tmpdir; tmpdir="$(setup_overlay)"