diff --git a/Earthfile b/Earthfile index 0e4d5652..7ecac849 100644 --- a/Earthfile +++ b/Earthfile @@ -92,7 +92,7 @@ deps-rust: echo "retry #$retry..."; \ sleep 10; \ done - RUN cargo install wasm-pack wasm-tools --locked + RUN cargo install wasm-pack wasm-opt --locked RUN cargo install -f wasm-bindgen-cli --locked --version $WASM_BINDGEN_CLI_VERSION # Caching tool RUN cargo install cargo-chef --locked diff --git a/dev-setup/setup_linux.sh b/dev-setup/setup_linux.sh index fd483564..fef2e108 100755 --- a/dev-setup/setup_linux.sh +++ b/dev-setup/setup_linux.sh @@ -111,7 +111,7 @@ fi rustup target add aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android wasm32-unknown-unknown # install cargo packages -cargo install wasm-bindgen-cli wasm-pack cargo-edit@0.13.0 wasm-tools +cargo install wasm-bindgen-cli wasm-pack wasm-opt cargo-edit@0.13.0 # install pip packages pip3 install --upgrade bumpversion diff --git a/dev-setup/setup_macos.sh b/dev-setup/setup_macos.sh index f40eb77a..c6c2f742 100755 --- a/dev-setup/setup_macos.sh +++ b/dev-setup/setup_macos.sh @@ -146,7 +146,7 @@ $BREW_COMMAND install capnp cmake llvm jq rustup target add aarch64-apple-darwin aarch64-apple-ios aarch64-apple-ios-sim x86_64-apple-darwin x86_64-apple-ios wasm32-unknown-unknown aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android # install cargo packages -cargo install wasm-bindgen-cli wasm-pack cargo-edit@0.13.0 wasm-tools +cargo install wasm-bindgen-cli wasm-pack wasm-opt cargo-edit@0.13.0 # attempt to install pip packages - this may result in an error, which we will try to catch pip3 install --upgrade bumpversion || ( \ diff --git a/veilid-wasm/wasm_build.sh b/veilid-wasm/wasm_build.sh index ce3615f4..bbc81291 100755 --- a/veilid-wasm/wasm_build.sh +++ b/veilid-wasm/wasm_build.sh @@ -17,8 +17,8 @@ if [[ "$1" == "release" ]]; then ./wasm_remap_paths.sh cargo build --target wasm32-unknown-unknown --release mkdir -p $OUTPUTDIR wasm-bindgen --out-dir $OUTPUTDIR --target web --weak-refs $INPUTDIR/veilid_wasm.wasm - wasm-tools strip $OUTPUTDIR/veilid_wasm_bg.wasm -o $OUTPUTDIR/veilid_wasm_bg.wasm.stripped - mv $OUTPUTDIR/veilid_wasm_bg.wasm.stripped $OUTPUTDIR/veilid_wasm_bg.wasm + wasm-opt -O --enable-mutable-globals $OUTPUTDIR/veilid_wasm_bg.wasm -o $OUTPUTDIR/veilid_wasm_bg.wasm.optimized + mv $OUTPUTDIR/veilid_wasm_bg.wasm.optimized $OUTPUTDIR/veilid_wasm_bg.wasm else OUTPUTDIR=$SCRIPTDIR/../target/wasm32-unknown-unknown/debug/pkg INPUTDIR=$SCRIPTDIR/../target/wasm32-unknown-unknown/debug diff --git a/veilid-wasm/wasm_setup_check.sh b/veilid-wasm/wasm_setup_check.sh index 3759650d..407ea3b0 100755 --- a/veilid-wasm/wasm_setup_check.sh +++ b/veilid-wasm/wasm_setup_check.sh @@ -37,11 +37,19 @@ else exit 1 fi -if command -v wasm-tools &> /dev/null; then - echo '[X] wasm-tools is available in the path' +if command -v wasm-pack &> /dev/null; then + echo '[X] wasm-pack is available in the path' else - echo -e 'wasm-tools is not available in the path. - Install wasm-tools: cargo install wasm-tools' + echo -e 'wasm-pack is not available in the path. + Install wasm-pack: cargo install wasm-pack' + exit 1 +fi + +if command -v wasm-opt &> /dev/null; then + echo '[X] wasm-opt is available in the path' +else + echo -e 'wasm-opt is not available in the path. + Install wasm-opt: cargo install wasm-opt' exit 1 fi