arnaucube
arnaucube/sonobePublic Self-hosted repository
sonobe/.github/scripts/wasm-target-test-build.sh
.github/scripts/wasm-target-test-build.shRaw
 1#!/bin/sh
 2
 3GIT_ROOT=$(pwd)
 4
 5cd /tmp
 6
 7# create test project
 8cargo new foobar
 9cd foobar
10
11# set rust-toolchain same as "sonobe"
12cp "${GIT_ROOT}/rust-toolchain" .
13
14# add wasm32-* targets
15rustup target add wasm32-unknown-unknown wasm32-wasi 
16
17# add dependencies
18cargo add --path "${GIT_ROOT}/frontends" --features wasm, parallel
19cargo add --path "${GIT_ROOT}/folding-schemes" --features parallel
20cargo add getrandom --features js --target wasm32-unknown-unknown
21
22# test build for wasm32-* targets
23cargo build --release --target wasm32-unknown-unknown
24cargo build --release --target wasm32-wasi
25# Emscripten would require to fetch the `emcc` tooling. Hence we don't build the lib as a dep for it.
26# cargo build --release --target wasm32-unknown-emscripten
27
28# delete test project
29cd ../
30rm -rf foobar