test: cover exact package tool invocation paths

This commit is contained in:
2026-08-12 14:29:17 +09:00
parent d78020baf7
commit bb71b31f81
6 changed files with 321 additions and 31 deletions

View File

@@ -851,11 +851,11 @@ clean:
# (it takes no -o/-I and writes asm to stdout), so the chainable sep
# frontend w6c is the bootstrapped target (test 994 pins w6c ==
# wwdump -c).
# - The wwstage DRIVER (`ww_ww`) is NOT yet in this loop: it cannot
# swap its frontend (it hardcodes <selfdir>/w6c_ww and honors no
# WW_W6C override). Closing that — so `ww_ww` itself carries the
# glue — is task #66. Until then cstage `ww` orchestrates and this
# bootstrap does NOT claim a fully wwstage-driven self-host.
# - The wwstage DRIVER (`ww_ww`) can now swap all three tools through
# exact-path WW_W6C/WW_W6A/WW_W6L overrides. This loop deliberately
# still keeps cstage `ww` as its fixed orchestrator, so the driver is
# outside the compared artifacts and this target does NOT yet claim a
# fully wwstage-driven self-host.
#
# Why a fourth stage? Stage 3 proves stage-1 w6c_ww and ww2 (which differ
# in how they were built) emit the same machine code. Stage 4 proves ww3 is
@@ -940,7 +940,7 @@ nocc:
@rm -rf $(NOCC_OUT)
@mkdir -p $(NOCC_BIN) $(NOCC_LIB) $(NOCC_OBJ)
@# Stage 0: drop bootstrap binaries under both natural names and
@# the _ww-suffixed names the driver expects when shelling out.
@# the _ww-suffixed names used by the driver's default sibling lookup.
@for f in ww w6c w6a w6l; do \
cp $(STAGE0)/$$f $(NOCC_BIN)/$$f; \
cp $(STAGE0)/$$f $(NOCC_BIN)/$${f}_ww; \