Files
AnyPS5/.github/workflows/emscripten-libraries.yml
T
MarcZX10 1f5e6db9c0 ci: fail the emscripten and Windows ctest steps when no test is registered
ctest runs with --no-tests=ignore unless asked, so a configuration that registers no test passes with 'No tests were found'. The emscripten native and portable builds and the Windows build each register at least one test today, so the flag changes nothing on a healthy configuration; it closes the gap for a future change that drops every registration.
2026-11-01 08:03:18 +00:00

44 lines
1.5 KiB
YAML

name: Emscripten library portability
on:
pull_request:
paths:
- .github/workflows/emscripten-libraries.yml
- core/libs/**
push:
branches: [main]
paths:
- .github/workflows/emscripten-libraries.yml
- core/libs/**
permissions:
contents: read
jobs:
library-portability:
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v7
with:
persist-credentials: false
- name: Compile native library sources and test guest long doubles
run: |
cmake -S core/libs/tests/emscripten -B build-native -DCMAKE_BUILD_TYPE=Release
cmake --build build-native --parallel 2
ctest --test-dir build-native --output-on-failure --no-tests=error
- uses: actions/setup-node@v6
with:
node-version: '26'
- name: Compile memory64 libraries and test conversions and module errors
shell: bash
run: |
ANYPS5_TEST_NODE="$(command -v node)"
git clone --depth 1 https://github.com/emscripten-core/emsdk.git "$RUNNER_TEMP/emsdk"
"$RUNNER_TEMP/emsdk/emsdk" install 6.0.12
"$RUNNER_TEMP/emsdk/emsdk" activate 6.0.12
source "$RUNNER_TEMP/emsdk/emsdk_env.sh"
emcmake cmake -S core/libs/tests/emscripten -B build-portable -DCMAKE_BUILD_TYPE=Release -DANYPS5_NODE="$ANYPS5_TEST_NODE"
cmake --build build-portable --parallel 2
ctest --test-dir build-portable --output-on-failure --no-tests=error