blob: 3b58a0886166a2e0f0dbcdfc28d55cd86776ab30 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
################################################################################
## CONFIG ######################################################################
################################################################################
SRC_DIR ?= src
WWW_DIR ?= www
WWW_SCRIPT_DIR ?= $(WWW_DIR)/script
ELM_CC ?= elm-make --warn
MAIN_MODULE ?= $(SRC_DIR)/Main.elm
################################################################################
## MAKEFILE MAGIC ##############################################################
################################################################################
SUB_MODULES = $(shell find $(SRC_DIR) -type f | grep "elm$$")
################################################################################
## SANITY CHECKS ###############################################################
################################################################################
################################################################################
## TARGET RULES ################################################################
################################################################################
build: $(WWW_SCRIPT_DIR)/main.js
clean:
rm -f $(WWW_SCRIPT_DIR)/main.js
reset:
rm -rf elm-stuff
################################################################################
## INTERNAL RULES ##############################################################
################################################################################
$(WWW_SCRIPT_DIR)/main.js: $(MAIN_MODULE) $(SUB_MODULES)
$(ELM_CC) $(MAIN_MODULE) --output $@
|