From 7b5f025e20411e0c6496ca0011dd43bbf9eefd15 Mon Sep 17 00:00:00 2001 From: Drew Hess Date: Thu, 30 Nov 2023 12:32:24 +0000 Subject: [PATCH] feat: build & run `primer-benchmark` for Wasm32 targets Signed-off-by: Drew Hess --- Makefile | 1 + primer-benchmark/Makefile | 35 ++++++++++++++++++++++++++++++----- 2 files changed, 31 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index df723a504..f42ffa16b 100644 --- a/Makefile +++ b/Makefile @@ -20,6 +20,7 @@ wasm32 = wasm32-build wasm32-build-opt wasm32-configure wasm32-check wasm32-test $(wasm32): $(MAKE) -C primer $@ $(MAKE) -C primer-api $@ + $(MAKE) -C primer-benchmark $@ weeder: cabal build all --enable-benchmarks --enable-tests diff --git a/primer-benchmark/Makefile b/primer-benchmark/Makefile index 9f5cc7937..c6c884f23 100644 --- a/primer-benchmark/Makefile +++ b/primer-benchmark/Makefile @@ -3,16 +3,44 @@ # Most commands assume you're running this from the top-level `nix # develop` shell. -# Note: no libs or exes to build in this project. +wasm32-primer-benchmark-test = $(shell wasm32-wasi-cabal list-bin -v0 test:primer-benchmark-test) +wasm32-primer-benchmark-test-opt = $(shell wasm32-wasi-cabal list-bin -O2 -v0 test:primer-benchmark-test) + build: + cabal build + +wasm32-build: + wasm32-wasi-cabal build + +wasm32-build-opt: + wasm32-wasi-cabal build -O2 configure: cabal configure +wasm32-configure: + wasm32-wasi-cabal configure + check: test -# Note: no tests to run in this project. +wasm32-check: wasm32-test + test: + cabal test + +wasm32-test: + wasm32-wasi-cabal build test:primer-benchmark-test + wasmtime --dir test::test "$(wasm32-primer-benchmark-test)" + +wasm32-test-opt: + wasm32-wasi-cabal build -O2 test:primer-benchmark-test + wasmtime --dir test::test "$(wasm32-primer-benchmark-test-opt)" + +bench: + cabal bench + +wasm32-bench: wasm32-build-opt + wasmtime "$(wasm32-primer-benchmark-test-opt)" docs: cabal haddock @@ -20,9 +48,6 @@ docs: clean: cabal clean -bench: - cabal bench - realclean: deps: