|
|
- name: Build (Emscripten)
-
- on: [push, pull_request]
-
- jobs:
- emscripten:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v3
- - uses: mymindstorm/setup-emsdk@v12
- with:
- version: 2.0.32
- - name: Install ninja
- run: |
- sudo apt-get -y update
- sudo apt-get install -y ninja-build
- - name: Configure CMake
- run: |
- emcmake cmake -S . -B build \
- -DSDL_WERROR=ON \
- -DSDL_TESTS=ON \
- -DSDL_INSTALL_TESTS=ON \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=prefix \
- -GNinja
- - name: Build
- run: cmake --build build/ --verbose
- - name: Run build-time tests
- run: |
- set -eu
- export SDL_TESTS_QUICK=1
- # FIXME: enable Emscripten build time tests
- # ctest -VV --test-dir build/
- - name: Install
- run: |
- echo "SDL2_DIR=$(pwd)/prefix" >> $GITHUB_ENV
- cmake --install build/
- - name: Verify CMake configuration files
- run: |
- emcmake cmake -S cmake/test -B cmake_config_build \
- -DCMAKE_BUILD_TYPE=Release \
- -DSDL_VENDOR_INFO="Github Workflow" \
- -DTEST_SHARED=FALSE \
- -DCMAKE_PREFIX_PATH=${{ env.SDL2_DIR }}
- cmake --build cmake_config_build --verbose
|