update web
This commit is contained in:
@@ -38,7 +38,9 @@ fi
|
||||
# Step 1: Build WASM
|
||||
echo -e "${GREEN}Step 1: Building WASM...${NC}"
|
||||
cd "$PROJECT_ROOT"
|
||||
cargo build --target wasm32-unknown-unknown $RELEASE_FLAG
|
||||
export CARGO_TARGET_DIR="$PROJECT_ROOT/target"
|
||||
RUSTFLAGS='-C target-feature=+atomics,+bulk-memory -C link-arg=--shared-memory -C link-arg=--max-memory=4294967296 -C link-arg=--import-memory -C link-arg=--export=__heap_base -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' \
|
||||
cargo build --target wasm32-unknown-unknown $RELEASE_FLAG
|
||||
|
||||
# Determine the build directory
|
||||
if [[ "$RELEASE_FLAG" == "--release" ]]; then
|
||||
@@ -48,8 +50,7 @@ else
|
||||
fi
|
||||
|
||||
# WASM file is in workspace target directory
|
||||
WORKSPACE_ROOT="$PROJECT_ROOT/../.."
|
||||
WASM_PATH="$WORKSPACE_ROOT/target/wasm32-unknown-unknown/$BUILD_MODE/coop_web.wasm"
|
||||
WASM_PATH="$PROJECT_ROOT/target/wasm32-unknown-unknown/$BUILD_MODE/coop_web.wasm"
|
||||
|
||||
# Check if WASM file exists
|
||||
if [[ ! -f "$WASM_PATH" ]]; then
|
||||
@@ -57,10 +58,14 @@ if [[ ! -f "$WASM_PATH" ]]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Step 1.5: Force shared memory (linker --shared-memory is not working)
|
||||
echo -e "${GREEN}Step 1.5: Enabling shared memory...${NC}"
|
||||
wasm-opt --enable-threads "$WASM_PATH" -o "$WASM_PATH"
|
||||
|
||||
# Step 2: Generate JavaScript bindings
|
||||
echo -e "${GREEN}Step 2: Generating JavaScript bindings...${NC}"
|
||||
wasm-bindgen "$WASM_PATH" \
|
||||
--out-dir "$PROJECT_ROOT/www/src/wasm" \
|
||||
--out-dir "$PROJECT_ROOT/www/wasm" \
|
||||
--target web \
|
||||
--no-typescript
|
||||
|
||||
|
||||
Reference in New Issue
Block a user