10 { cc: gcc, cxx: g++ },
11 { cc: clang, cxx: clang++ },
15 - uses: actions/checkout@v4
19 - uses: actions/checkout@v4
21 repository: emscripten-core/emsdk
25 _/emsdk/emsdk install latest
26 _/emsdk/emsdk activate latest
27 . _/emsdk/emsdk_env.sh
28 pushd _/emsdk/upstream/emscripten
29 $(dirname $EMSDK_NODE)/npm install
33 CXX: ${{ matrix.cxx }}
37 python3 -m pip install ninja
38 python3 -m pip install -r requirements.txt
44 CXX: ${{ matrix.cxx }}
45 CMAKE_PREFIX_PATH: ${{ github.workspace }}/_
48 . _/emsdk/emsdk_env.sh
50 cmake -S . -B build -G "Ninja Multi-Config" \
51 -DCMAKE_INSTALL_PREFIX=_ \
57 -DLIBA_JAVASCRIPT_TSGEN=1 \
58 -DLIBA_JAVASCRIPT_BIGINT=1 \
62 -DLIBA_WITH_QUICKJS=1 \
68 CXX: ${{ matrix.cxx }}
69 LIBA_OPENMP: ${{ startsWith(matrix.cc, 'gcc') }}
72 cmake --build build --config Debug --target package
75 CTEST_OUTPUT_ON_FAILURE: 1
78 cmake --build build --config Debug --target test
82 CXX: ${{ matrix.cxx }}
83 LIBA_OPENMP: ${{ startsWith(matrix.cc, 'gcc') }}
86 cmake --build build --config RelWithDebInfo --target package
89 CTEST_OUTPUT_ON_FAILURE: 1
92 cmake --build build --config RelWithDebInfo --target test
96 CXX: ${{ matrix.cxx }}
97 CMAKE_PREFIX_PATH: ${{ github.workspace }}/_
100 cmake --build build --config RelWithDebInfo --target install
101 cmake -S demo -B demo/build
102 cmake --build demo/build -v
103 - uses: actions/checkout@v4
105 repository: microsoft/vcpkg
110 CXX: ${{ matrix.cxx }}
113 cmake -B build -DLIBA_VCPKG=_/vcpkg
114 _/vcpkg/bootstrap-vcpkg.sh -disableMetrics
115 _/vcpkg/vcpkg install liba[ipo,pkgconfig]