Skip to content

[pscm-core] a new simplest implementation based on LLVM #166

[pscm-core] a new simplest implementation based on LLVM

[pscm-core] a new simplest implementation based on LLVM #166

Workflow file for this run

name: Linux WASM
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
env:
EM_VERSION: 3.1.35
EM_CACHE_FOLDER: 'emsdk-cache'
jobs:
setup_emsdk:
runs-on: [ ubuntu-22.04 ]
steps:
- name: Setup cache
id: cache-system-libraries
uses: actions/cache@v3
with:
path: ${{env.EM_CACHE_FOLDER}}
key: emsdk-${{env.EM_VERSION}}-${{ runner.os }}
- name: Setup emsdk
uses: PikachuHy/setup-emsdk@master
with:
version: ${{env.EM_VERSION}}
actions-cache-folder: ${{env.EM_CACHE_FOLDER}}
- name: Verify emsdk
run: emcc -v
- name: Check EMSDK
run: echo $EMSDK
build_on_wasm:
strategy:
matrix:
mode: [ Release ]
needs: setup_emsdk
runs-on: [ ubuntu-22.04 ]
steps:
- uses: actions/checkout@v3
- name: Clone Deps
run: git submodule update --init
working-directory: ${{github.workspace}}
- name: Setup cache
id: cache-system-libraries
uses: actions/cache@v3
with:
path: ${{env.EM_CACHE_FOLDER}}
key: emsdk-${{env.EM_VERSION}}-${{ runner.os }}
- name: Setup emsdk
uses: PikachuHy/setup-emsdk@master
with:
version: ${{env.EM_VERSION}}
actions-cache-folder: ${{env.EM_CACHE_FOLDER}}
- name: Verify emsdk
run: emcc -v
- name: Check EMSDK
run: echo $EMSDK
- name: Install ninja-build tool
uses: seanmiddleditch/gha-setup-ninja@master
- name: ccache
uses: hendrikmuhs/[email protected]
with:
key: ${{ github.job }}-${{ matrix.mode}}
- name: Configure CMake
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{matrix.mode}} -G Ninja -DCMAKE_TOOLCHAIN_FILE=$EMSDK/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake -DUSE_CCACHE=ON
- name: Build
run: cmake --build ${{github.workspace}}/build -j --verbose
- name: Upload krabby wasm
uses: actions/upload-artifact@v3
with:
name: linux-krabby-wasm
path: |
build/project/krabby/index.html
build/project/krabby/krabby.data
build/project/krabby/krabby.js
build/project/krabby/krabby.wasm
build/project/krabby/icon
build/project/krabby/images
- name: Test
working-directory: ${{github.workspace}}/build/test
run: ctest -C ${{matrix.mode}} --output-on-failure