From 98e7783a19cd0c9f2707c1e3af3a204e33be2792 Mon Sep 17 00:00:00 2001 From: S Rupesh Date: Wed, 5 Nov 2025 00:31:13 +0100 Subject: [PATCH] allow SharedArrayBuffer for wasm builds with atomic --- hf_xet_wasm/build_wasm.sh | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/hf_xet_wasm/build_wasm.sh b/hf_xet_wasm/build_wasm.sh index 4efa58197..a15e3a055 100755 --- a/hf_xet_wasm/build_wasm.sh +++ b/hf_xet_wasm/build_wasm.sh @@ -12,10 +12,24 @@ set -ex # features enabled, ensuring that LLVM will generate atomic instructions, # shared memory, passive segments, etc. -RUSTFLAGS='-C target-feature=+atomics,+bulk-memory,+mutable-globals --cfg getrandom_backend="wasm_js"' \ - cargo +nightly build --example simple --target wasm32-unknown-unknown --release -Z build-std=std,panic_abort +RUSTFLAGS="-C target-feature=+atomics,+bulk-memory,+mutable-globals \ + -C link-arg=--shared-memory \ + -C link-arg=--max-memory=1073741824 \ + -C link-arg=--import-memory \ + -C link-arg=--export=__wasm_init_tls \ + -C link-arg=--export=__tls_size \ + -C link-arg=--export=__tls_align \ + -C link-arg=--export=__tls_base \ + --cfg getrandom_backend=\"wasm_js\"" \ +cargo +nightly build \ + --example simple \ + --target wasm32-unknown-unknown \ + --release \ + -Z build-std=std,panic_abort -RUSTFLAGS='--cfg getrandom_backend="wasm_js"' wasm-bindgen \ +# Generate JS/WASM glue for web targets +RUSTFLAGS='--cfg getrandom_backend="wasm_js"' \ +wasm-bindgen \ target/wasm32-unknown-unknown/release/examples/simple.wasm \ --out-dir ./examples/target/ \ --typescript \