offline-web/Makefile

58 lines
1.3 KiB
Makefile

OUT ?= target
all: build test
release: build-wasm-release
build: wasm native
build-wasm-release: wasm-bindgen-offline-web-storage-release
native: model-native storage-native
model-native:
cargo build --features native -p offline-web-model
storage-native:
cargo build --features native -p offline-web-storage
wasm: model-wasm storage-wasm
model-wasm:
cargo build --target=wasm32-unknown-unknown --features wasm -p offline-web-model --verbose
storage-wasm:
cargo build \
--target=wasm32-unknown-unknown \
--features wasm \
-p offline-web-storage \
storage-wasm-release:
cargo build \
--target=wasm32-unknown-unknown \
--target-dir=${OUT} \
--features wasm \
-p offline-web-storage \
--release
wasm-bindgen-offline-web-storage-release: storage-wasm-release
wasm-bindgen ${OUT}/wasm32-unknown-unknown/release/offline_web_storage.wasm \
--out-dir ${OUT}/ \
--typescript \
--target web
test: test-native test-wasm
test-native: test-model-native test-storage-native
test-model-native:
cargo test --features native -p offline-web-model
test-storage-native:
cargo test --features native -p offline-web-storage
test-wasm: test-storage-wasm
test-storage-wasm:
cd offline-web-storage && wasm-pack test --headless --firefox --features wasm --release