example-spa-elm-app/frontend/Makefile

31 lines
684 B
Makefile

SRC_FILES := $(shell find src -name "*.elm")
all: elm.min.js
.PHONY: elm.min.js serve
ifeq ($(DEBUG)$(RELEASE),) # Both are empty
$(error You must set exactly one of DEBUG=1 or RELEASE=1)
endif
ifeq ($(DEBUG)$(RELEASE),11) # Both are set
$(error Both DEBUG and RELEASE cannot be set at the same time)
endif
elm.min.js:
ifeq ($(DEBUG),1)
./build.sh --debug src/Main.elm
else ifeq ($(RELEASE),1)
./build.sh --optimize src/Main.elm
endif
serve:
ifeq ($(DEBUG),1)
elm-go src/Main.elm --port=8000 --dir=../public --start-page=index.html -- --output=../public/elm.min.js
else ifeq ($(RELEASE),1)
$(error Cannot use serve target with RELEASE=1)
endif
clean:
rm elm.js elm.min.js