feat(wasm-dom): dual-mode build scaffold — native DOM port builds, links and boots alongside canvas

Build/test plumbing for the second wxWidgets mode: --dom on
build-wxuniversal-wasm.sh (build-wasm/wxwidgets-dom, no universal,
--disable-tooltips, libwx_wasmu_* stubs) and build-wasm-test.sh
(mirrors sources into tests/apps-dom, PORT=dom). Build script now
reconfigures when Makefile.in or autoconf_inc.m4 regenerate (bakefile
chain). Harness: WX_PORT=dom serves apps-dom, namespaces screenshots
into test-results/dom and logs into logs/wxwidgets/dom; compare/update
screenshot scripts take --port dom with baseline-screenshots-dom.
New port-agnostic boot.spec.ts (green on both ports).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Viktor Vaczi 2026-06-10 17:17:57 +02:00
commit 249010a582
10 changed files with 205 additions and 29 deletions

View file

@ -62,6 +62,10 @@ function findFreePort(): number {
const port = resolvePort();
// WX_PORT=dom runs the suite against the DOM-port bundles (built by
// scripts/build-wasm-test.sh --dom into tests/apps-dom with identical layout).
const appsDir = process.env.WX_PORT === 'dom' ? 'apps-dom' : 'apps';
export default defineConfig({
globalSetup: './global-setup.ts',
testDir: './e2e',
@ -98,7 +102,7 @@ export default defineConfig({
],
webServer: {
command: `npx serve apps -p ${port} -c ../serve.json`,
command: `npx serve ${appsDir} -p ${port} -c ../serve.json`,
port: port,
reuseExistingServer: !process.env.CI,
},