test: make test-run target for the runww behavior harness (fold 2)

Drives test/runww.ww over every test/wcc/data/*/case.ww through both
stages and propagates the harness exit code. Infra only; not wired into
`make test` yet (fold 6).
This commit is contained in:
2026-06-21 23:48:36 +09:00
parent 93b671808c
commit c7eeb475b1

View File

@@ -3665,6 +3665,16 @@ test: all sizelint peellint $(TESTS)
test-unit: all sizelint peellint $(TESTS)
@WW=$(BIN)/ww BIN=$(BIN) UNIT=1 sh test/run
# ---- test-run: ww-native behavior harness (fold 2) ---------------------
# Drives test/runww.ww over every test/wcc/data/<name>/case.ww, building
# and running each case through BOTH compiler stages and checking its
# leading `//ww:` directive. The harness prints `runww: all ok` and exits
# 0 only if every case passes; the target propagates that exit code. NOT
# yet wired into `make test` (fold 6). See test/runww.ww header.
RUNWW_CASES = $(wildcard test/wcc/data/*/case.ww)
test-run: all
@BIN=$(BIN) $(BIN)/ww run test/runww.ww $(RUNWW_CASES)
# ---- test-commit: per-commit default (task #10 T1) ---------------------
# Full suite, but content-key-SKIPS the expensive wwstage byte-id /
# self-compile gates (950/989_lib_byteid/990-997) when their input set is
@@ -3855,4 +3865,4 @@ nocc:
@echo
@echo "NOCC OK: $(STAGE0)/* reproduces itself from source. cc not invoked."
.PHONY: all cstage wwstage test test-unit test-commit smoke sizelint peellint install clean bootstrap nocc bootstrap-snapshot
.PHONY: all cstage wwstage test test-unit test-commit test-run smoke sizelint peellint install clean bootstrap nocc bootstrap-snapshot