10 { cc: gcc, cxx: g++, type: Debug },
11 { cc: clang, cxx: clang++, type: Debug },
12 { cc: gcc, cxx: g++, type: Release },
13 { cc: clang, cxx: clang++, type: Release },
17 - uses: mymindstorm/setup-emsdk@v13
18 - uses: actions/checkout@v4
25 CXX: ${{ matrix.cxx }}
28 source venv/bin/activate
29 python3 -m pip install -r requirements.txt
30 curl https://bellard.org/quickjs/quickjs-2024-01-13.tar.xz | tar -xJf -
31 make -C quickjs-2024-01-13 && sudo make install -C quickjs-2024-01-13
37 CXX: ${{ matrix.cxx }}
39 source venv/bin/activate
41 cmake -S . -B build.${{ matrix.cc }} -DCMAKE_BUILD_TYPE=${{ matrix.type }} \
46 -DLIBA_JAVASCRIPT_BIGINT=1 \
47 -DLIBA_JAVASCRIPT_DEBUG=1 \
48 -DLIBA_JAVASCRIPT_TSGEN=1 \
56 cmake --build build.${{ matrix.cc }} --config ${{ matrix.type }} --target package
58 if: ${{ matrix.type == 'Release' }}
61 CXX: ${{ matrix.cxx }}
64 cp -r build.${{ matrix.cc }}/vcpkg/* $VCPKG_INSTALLATION_ROOT
65 vcpkg install liba[ipo,pkgconfig]
68 CTEST_OUTPUT_ON_FAILURE: 1
71 cmake --build build.${{ matrix.cc }} --target test