2023-06-25 11:08:38 +01:00

32 lines
897 B
Makefile

BACKGROUND_ELM_FILES=$(shell find src/Background/ -name '*.elm')
FOREGROUND_ELM_FILES=$(shell find src/Foreground/ -name '*.elm')
BACKGROUND_JS_FILES=$(patsubst src/%.elm,build/%.js,$(BACKGROUND_ELM_FILES))
FOREGROUND_JS_FILES=$(patsubst src/%.elm,build/%.js,$(FOREGROUND_ELM_FILES))
DEPENDS_BACKGROUND := background.js
DEPENDS_FOREGROUND := app.js
DEPENDS := build/background.js build/foreground.js
COPY := manifest.json app.html
package: all
cd build && zip -FS extension.xpi *
all: clean prepare $(COPY) $(DEPENDS)
cp $(COPY) build
build/foreground.js: $(FOREGROUND_JS_FILES) $(DEPENDS_FOREGROUND)
cat $^ > $@
build/background.js: $(BACKGROUND_JS_FILES) $(DEPENDS_BACKGROUND)
cat $^ > $@
build/%.js: src/%.elm
elm make --optimize $^ --output=$@
clean:
[ -e build ] && rm -r build || /bin/true
prepare:
[ ! -e build ] && mkdir build || /bin/true
.PHONY: package all clean prepare