test: retarget Pattern-A combined-feed gates to sep .sepwork layout (M4 E3, #94)

94a of the C-mig2 split (rob rule-11): 13 Pattern-A gates that fed a
.combined.ww to w6c/w6c_ww now drive two --sep builds (ww / ww_ww) and
byte-diff the concatenated per-package .sepwork/*.s, mirroring #93's
convention. Lands pre-flip while combined.ww still exists as the
reversible safety net. Test-only; all 5 binary pins HOLD.

989_enumcap_run deferred to 94b (its decisive assertion is a combined.ww
content diff, not a .s diff).
This commit is contained in:
2026-06-18 16:44:41 +09:00
parent 7b6f24adea
commit bbd2ad390a
14 changed files with 377 additions and 391 deletions

View File

@@ -139,10 +139,15 @@ run_build(const char *driver, const struct row *r, int i)
return -2;
if (write_file(dir, "main.ww", r->root) != 0) return -2;
/* cd into the build dir so the source-dir-first search path finds the
* sibling package tree (mirrors Hare's CWD == module-dir). */
snprintf(cmd, sizeof cmd, "cd '%s' && %s build main.ww 2>/dev/null",
dir, driver);
/* #94 sep layout: cd into the build dir so the source-dir-first search
* path finds the sibling package tree (mirrors Hare's CWD ==
* module-dir); --sep emits per-package units to main.sepwork/ and links
* the runnable binary at main. Pin WW_PKGCACHE under the temp dir so
* out/.pkgcache is untouched. #99 (imported-pkg `fn main` mangle under
* sep) is what makes the imported_main row link here. */
snprintf(cmd, sizeof cmd,
"cd '%s' && WW_PKGCACHE='%s/pkgc' %s build --sep -o main main.ww "
"2>/dev/null", dir, dir, driver);
int brc = runwait(cmd);
int got = -1;