liba 0.1.15

An algorithm library based on C/C++
Documentation
name: wasm
on:
  workflow_dispatch:
jobs:
  wasm:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          lfs: true
          submodules: true
      - uses: actions/checkout@v4
        with:
          repository: emscripten-core/emsdk
          path: _/emsdk
      - name: Run emsdk
        run: |
          _/emsdk/emsdk install latest
          _/emsdk/emsdk activate latest
          . _/emsdk/emsdk_env.sh
          pushd _/emsdk/upstream/emscripten
          $(dirname $EMSDK_NODE)/npm install
      - name: Run cmake
        env:
          EMSDK_QUIET: 1
        run: |
          . _/emsdk/emsdk_env.sh
          set -x
          emcmake cmake -S . -B build -DCMAKE_BUILD_TYPE=Release \
            -DBUILD_TESTING=0 \
            -DLIBA_WARNINGS=1 \
            -DLIBA_JAVASCRIPT=1 \
            -DLIBA_JAVASCRIPT_BIGINT=1 \
            -DLIBA_SYMLINK=0 -DLIBA_IPO=1
          cmake --build build --config Release
      - uses: actions/upload-artifact@v4
        with:
          if-no-files-found: ignore
          name: ${{ github.sha }}-wasm
          path: |
            javascript/README.md
            javascript/liba.d.ts
            javascript/liba.js
            javascript/liba.wasm
            javascript/package.json