diff --git a/Makefile b/Makefile index 16fc7c2..63a0750 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,13 @@ +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: @@ -14,8 +20,26 @@ 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 --verbose + 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 @@ -30,4 +54,4 @@ test-storage-native: test-wasm: test-storage-wasm test-storage-wasm: - cd offline-web-storage && wasm-pack test --headless --firefox --features wasm + cd offline-web-storage && wasm-pack test --headless --firefox --features wasm --release diff --git a/flake.nix b/flake.nix index 3674925..4481bdb 100644 --- a/flake.nix +++ b/flake.nix @@ -40,7 +40,7 @@ { packages.default = project; devShells.default = pkgs.mkShell { - buildInputs = [ rust-bin pkgs.rust-analyzer pkgs.cargo-tarpaulin pkgs.wasm-pack ]; + buildInputs = [ rust-bin ] ++ (with pkgs; [ rust-analyzer cargo-tarpaulin wasm-pack wasm-bindgen-cli_0_2_100 binaryen cargo-wasm2map ]); packages = with pkgs; [ gnumake ]; }; });