ci: use emsdk instead of download emsdk each build.

This commit is contained in:
Jixun 2022-11-27 00:38:13 +00:00
parent ff06c81735
commit 1fc7142957
3 changed files with 42 additions and 33 deletions

View File

@ -4,12 +4,16 @@ type: docker
name: default name: default
steps: steps:
- name: build-wasm
image: emscripten/emsdk:3.0.0
commands:
- ./scripts/build-wasm.sh
- name: build - name: build
image: node:16.18-bullseye image: node:16.18-bullseye
commands: commands:
- apt-get update - apt-get update
- apt-get install -y cmake jq zip - apt-get install -y jq zip
- ./scripts/build-wasm.sh
- npm ci - npm ci
- npm run test - npm run test
- ./scripts/build-and-package.sh legacy - ./scripts/build-and-package.sh legacy

View File

@ -11,18 +11,20 @@ if [ -z "$BUILD_TYPE" ]; then
BUILD_TYPE=Release BUILD_TYPE=Release
fi fi
mkdir -p build/wasm # CI: already had emsdk installed.
if ! command -v emcc; then
if [ ! -d ../../build/emsdk ]; then if [ ! -d ../../build/emsdk ]; then
git clone https://github.com/emscripten-core/emsdk.git ../../build/emsdk git clone https://github.com/emscripten-core/emsdk.git ../../build/emsdk
fi fi
pushd ../../build/emsdk pushd ../../build/emsdk
#git pull
./emsdk install 3.0.0 ./emsdk install 3.0.0
./emsdk activate 3.0.0 ./emsdk activate 3.0.0
source ./emsdk_env.sh source ./emsdk_env.sh
popd # ../../build/emsdk popd # ../../build/emsdk
fi
mkdir -p build/wasm
pushd build/wasm pushd build/wasm
emcmake cmake -DCMAKE_BUILD_TYPE="$BUILD_TYPE" ../.. emcmake cmake -DCMAKE_BUILD_TYPE="$BUILD_TYPE" ../..
make -j make -j

View File

@ -11,7 +11,8 @@ if [ -z "$BUILD_TYPE" ]; then
BUILD_TYPE=Release BUILD_TYPE=Release
fi fi
mkdir -p build/wasm # CI: already had emsdk installed.
if ! command -v emcc; then
if [ ! -d ../../build/emsdk ]; then if [ ! -d ../../build/emsdk ]; then
git clone https://github.com/emscripten-core/emsdk.git ../../build/emsdk git clone https://github.com/emscripten-core/emsdk.git ../../build/emsdk
fi fi
@ -21,7 +22,9 @@ pushd ../../build/emsdk
./emsdk activate 3.0.0 ./emsdk activate 3.0.0
source ./emsdk_env.sh source ./emsdk_env.sh
popd # ../../build/emsdk popd # ../../build/emsdk
fi
mkdir -p build/wasm
pushd build/wasm pushd build/wasm
emcmake cmake -DCMAKE_BUILD_TYPE="$BUILD_TYPE" ../.. emcmake cmake -DCMAKE_BUILD_TYPE="$BUILD_TYPE" ../..
make -j make -j