From 6ff5ed2e583d3ec0c683235584a17b04c044cc90 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sat, 10 Oct 2020 19:51:35 +0100 Subject: [PATCH] stamp files to avoid rerunning cargo Signed-off-by: Ian Jackson --- .gitignore | 1 + Makefile | 34 +++++++++++++++++++++++++--------- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index 3cd8f27b..5518ee02 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ save/lock /library/*/*.usvg *.tmp .tsconfig.*.json +cargo/* diff --git a/Makefile b/Makefile index 86f65be6..8837069e 100644 --- a/Makefile +++ b/Makefile @@ -13,6 +13,8 @@ default: debug #---------- funky macros etc. ---------- cr = $(addprefix --,$(filter-out debug,$1)) +rsrcs = $(shell \ + find $1 \( -name Cargo.toml -o -name Cargo.lock -o -name \*.rs \) ) #---------- programs and config variables ---------- @@ -87,24 +89,38 @@ extra-release: bundled-sources DR=debug release CARGOES=$(foreach t,/ /wasm-,$(addprefix $t,check $(DR))) +rstamp:=@mkdir -p cargo; touch $@ -X := $(shell echo >&2 PHONY $(addprefix cargo, $(CARGOES))) +$(addprefix cargo/,$(DR)):: cargo/%: $(call rsrcs,. ! -path './wasm/*') + $(CARGO) build $(call cr,$*) + $(rstamp) -.PHONY: $(addprefix cargo, $(CARGOES)) +cargo/check: $(call $(csrcs,.)) + $(CARGO) test + $(rstamp) -$(addprefix cargo/,$(DR)):: cargo/%: - $(CARGO) test $(call cr,$*) - -$(addprefix cargo/wasm-,$(DR)):: cargo/wasm-%: +$(addprefix cargo/wasm-,$(DR)):: cargo/wasm-%: $(call rsrcs, zcoord wasm) + : $@ out of date $? $(CARGO) -TWASM build -p otter-wasm $(call cr,$*) + $(rstamp) -cargo/deploy-build: +cargo/deploy-build: $(call rsrcs,.) $(CARGO) -T$(DEPLOY_ARCH) build $(call cr,$(DEPLOY_RELEASE)) + $(rstamp) #---------- wasm ---------- -#WASM_ASSETS := $(addprefix otter_wasm,.js _bg.wasm) -#WASM_OUTPUTS := $(addprefix otter_wasm,.d.ts +WASM_ASSETS := $(addprefix otter_wasm,.js _bg.wasm) +WASM_OUTPUTS := $(addprefix otter_wasm,.d.ts) + +$(WASM_ASSETS) $(WASM_OUTPUTS): wasm-pack +.PHONY: wasm-pack +wasm-pack: cargo/wasm-release + +real/wasm-pack: + +wasm-pack: + $(MAKE) real/$@ #---------- bundle-sources ---------- -- 2.30.2