All checks were successful
Build and test project / build-and-test (push) Successful in 1m32s
41 lines
1.1 KiB
Bash
Executable File
41 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
WEB_DIR="$SCRIPT_DIR/../web"
|
|
SRC_DIR="$WEB_DIR/src"
|
|
DIST_DIR="$WEB_DIR/dist"
|
|
LOCAL_GO_DIR="$SCRIPT_DIR/go"
|
|
|
|
if [ ! -d "$SCRIPT_DIR/kobopatch-src" ]; then
|
|
echo "Error: kobopatch source not found. Run ./setup.sh first."
|
|
exit 1
|
|
fi
|
|
|
|
# Use local Go if available
|
|
if [ -x "$LOCAL_GO_DIR/bin/go" ]; then
|
|
export GOROOT="$LOCAL_GO_DIR"
|
|
export PATH="$LOCAL_GO_DIR/bin:$PATH"
|
|
fi
|
|
|
|
echo "Building kobopatch WASM..."
|
|
cd "$SCRIPT_DIR"
|
|
GOOS=js GOARCH=wasm go build -o kobopatch.wasm .
|
|
|
|
echo "WASM binary size: $(du -h kobopatch.wasm | cut -f1)"
|
|
|
|
echo "Copying artifacts..."
|
|
mkdir -p "$DIST_DIR/wasm"
|
|
cp kobopatch.wasm "$DIST_DIR/wasm/kobopatch.wasm"
|
|
GOROOT="$(go env GOROOT)"
|
|
if [ -f "$GOROOT/lib/wasm/wasm_exec.js" ]; then
|
|
cp "$GOROOT/lib/wasm/wasm_exec.js" "$SRC_DIR/js/wasm_exec.js"
|
|
elif [ -f "$GOROOT/misc/wasm/wasm_exec.js" ]; then
|
|
cp "$GOROOT/misc/wasm/wasm_exec.js" "$SRC_DIR/js/wasm_exec.js"
|
|
else
|
|
echo "Error: could not find wasm_exec.js in Go SDK (GOROOT=$GOROOT)"
|
|
exit 1
|
|
fi
|
|
|
|
echo "Done."
|