Skip to content

Commit 82fa56d

Browse files
committed
feat: macOS CI aligned with Linux — adds mcpp test + E2E suite
macOS CI now runs the same validation as Linux: - mcpp build (self-host) - mcpp test (unit + integration) - E2E suite (run_all.sh) - Self-host smoke Toolchain default set to llvm@20.1.7 for macOS E2E tests.
1 parent a213d9f commit 82fa56d

1 file changed

Lines changed: 23 additions & 1 deletion

File tree

.github/workflows/ci-macos.yml

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -283,12 +283,34 @@ jobs:
283283
export MCPP_VENDORED_XLINGS="$XLINGS_BIN"
284284
"$MCPP" build
285285
286+
- name: Unit + integration tests via `mcpp test`
287+
run: |
288+
# Use freshly-built mcpp (has --mirror support)
289+
MCPP=$(find target -path "*/bin/mcpp" | head -1)
290+
MCPP=$(cd "$(dirname "$MCPP")" && pwd)/$(basename "$MCPP")
291+
"$MCPP" self config --mirror GLOBAL
292+
"$MCPP" test
293+
294+
- name: E2E suite
295+
run: |
296+
MCPP=$(find target -path "*/bin/mcpp" | head -1)
297+
MCPP=$(cd "$(dirname "$MCPP")" && pwd)/$(basename "$MCPP")
298+
test -x "$MCPP"
299+
export MCPP
300+
export MCPP_VENDORED_XLINGS="$XLINGS_BIN"
301+
test -x "$MCPP_VENDORED_XLINGS"
302+
export MCPP_E2E_TOOLCHAIN_MIRROR=GLOBAL
303+
"$MCPP" self config --mirror "$MCPP_E2E_TOOLCHAIN_MIRROR"
304+
"$MCPP" self config
305+
# macOS default toolchain is LLVM
306+
"$MCPP" toolchain default llvm@20.1.7
307+
bash tests/e2e/run_all.sh
308+
286309
- name: Self-host smoke (freshly-built mcpp builds itself again)
287310
run: |
288311
MCPP=$(find target -path "*/bin/mcpp" | head -1)
289312
MCPP=$(cd "$(dirname "$MCPP")" && pwd)/$(basename "$MCPP")
290313
test -x "$MCPP"
291-
"$MCPP" --version
292314
export PATH="$(dirname "$MCPP"):$PATH"
293315
"$MCPP" build
294316
"$MCPP" --version

0 commit comments

Comments
 (0)