|
19 | 19 | BUILD_FOLDER="release"
|
20 | 20 | fi
|
21 | 21 |
|
22 |
| -# Build normally |
23 |
| -cargo build -p bitwarden-wasm-internal --target wasm32-unknown-unknown ${RELEASE_FLAG} |
24 |
| -wasm-bindgen --target bundler --out-dir crates/bitwarden-wasm-internal/npm ./target/wasm32-unknown-unknown/${BUILD_FOLDER}/bitwarden_wasm_internal.wasm |
25 |
| -wasm-bindgen --target nodejs --out-dir crates/bitwarden-wasm-internal/npm/node ./target/wasm32-unknown-unknown/${BUILD_FOLDER}/bitwarden_wasm_internal.wasm |
26 |
| - |
27 |
| -# Build with MVP CPU target, for wasm2js support |
| 22 | +# Build with MVP CPU target, two reasons: |
| 23 | +# 1. It is required for wasm2js support |
| 24 | +# 2. While webpack supports it, it has some compatibility issues that lead to strange results |
28 | 25 | # Note that this requirest build-std which is an unstable feature,
|
29 | 26 | # this normally requires a nightly build, but we can also use the
|
30 | 27 | # RUSTC_BOOTSTRAP hack to use the same stable version as the normal build
|
31 | 28 | RUSTFLAGS=-Ctarget-cpu=mvp RUSTC_BOOTSTRAP=1 cargo build -p bitwarden-wasm-internal -Zbuild-std=panic_abort,std --target wasm32-unknown-unknown ${RELEASE_FLAG}
|
32 |
| -wasm-bindgen --target bundler --out-dir crates/bitwarden-wasm-internal/npm/mvp ./target/wasm32-unknown-unknown/${BUILD_FOLDER}/bitwarden_wasm_internal.wasm |
| 29 | +wasm-bindgen --target bundler --out-dir crates/bitwarden-wasm-internal/npm ./target/wasm32-unknown-unknown/${BUILD_FOLDER}/bitwarden_wasm_internal.wasm |
| 30 | +wasm-bindgen --target nodejs --out-dir crates/bitwarden-wasm-internal/npm/node ./target/wasm32-unknown-unknown/${BUILD_FOLDER}/bitwarden_wasm_internal.wasm |
33 | 31 |
|
34 | 32 | # Format
|
35 | 33 | npx prettier --write ./crates/bitwarden-wasm-internal/npm
|
36 | 34 |
|
37 | 35 | # Optimize size
|
38 | 36 | wasm-opt -Os ./crates/bitwarden-wasm-internal/npm/bitwarden_wasm_internal_bg.wasm -o ./crates/bitwarden-wasm-internal/npm/bitwarden_wasm_internal_bg.wasm
|
39 | 37 | wasm-opt -Os ./crates/bitwarden-wasm-internal/npm/node/bitwarden_wasm_internal_bg.wasm -o ./crates/bitwarden-wasm-internal/npm/node/bitwarden_wasm_internal_bg.wasm
|
40 |
| -wasm-opt -Os crates/bitwarden-wasm-internal/npm/mvp/bitwarden_wasm_internal_bg.wasm -o ./crates/bitwarden-wasm-internal/npm/bitwarden_wasm_internal_bg.mvp.wasm |
41 | 38 |
|
42 | 39 | # Transpile to JS
|
43 |
| -wasm2js ./crates/bitwarden-wasm-internal/npm/bitwarden_wasm_internal_bg.mvp.wasm -o ./crates/bitwarden-wasm-internal/npm/bitwarden_wasm_internal_bg.wasm.js |
| 40 | +wasm2js ./crates/bitwarden-wasm-internal/npm/bitwarden_wasm_internal_bg.wasm -o ./crates/bitwarden-wasm-internal/npm/bitwarden_wasm_internal_bg.wasm.js |
44 | 41 | npx terser ./crates/bitwarden-wasm-internal/npm/bitwarden_wasm_internal_bg.wasm.js -o ./crates/bitwarden-wasm-internal/npm/bitwarden_wasm_internal_bg.wasm.js
|
45 |
| - |
46 |
| -# Remove unneeded files |
47 |
| -rm -rf ./crates/bitwarden-wasm-internal/npm/mvp |
0 commit comments