about summary refs log tree commit diff
path: root/extra/js/makefile
diff options
context:
space:
mode:
Diffstat (limited to 'extra/js/makefile')
-rw-r--r--extra/js/makefile29
1 files changed, 29 insertions, 0 deletions
diff --git a/extra/js/makefile b/extra/js/makefile
new file mode 100644
index 000000000000..fc6075bfe8fa
--- /dev/null
+++ b/extra/js/makefile
@@ -0,0 +1,29 @@
+
+BOOST=.
+EMCXX=em++
+EMCXXFLAGS=-O3 -std=c++14 --bind \
+	-I ../.. \
+	-I $(BOOST)
+WASM_BACKEND=0
+
+ALL= \
+	out/immer.asmjs.js \
+	out/immer.asmjs.html \
+	out/immer.wasm.js \
+	out/immer.wasm.html
+
+all: $(ALL)
+
+out/immer.asmjs.js: immer.cpp
+	@mkdir -p $(@D)
+	$(EMCXX) $(EMCXXFLAGS) $< -o $@
+
+out/immer.wasm.js: immer.cpp
+	@mkdir -p $(@D)
+	EMCC_WASM_BACKEND=$(WASM_BACKEND) $(EMCXX) -s WASM=1 $(EMCXXFLAGS) $< -o $@
+
+%.html: %.js index.tpl.html
+	sed s/%IMMER_JS%/`basename $<`/ < index.tpl.html > $@
+
+clean:
+	rm -f $(ALL)