summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/battlemap/Makefile')
-rw-r--r--src/battlemap/Makefile31
1 files changed, 24 insertions, 7 deletions
diff --git a/src/battlemap/Makefile b/src/battlemap/Makefile
index d5372f1..3b58a08 100644
--- a/src/battlemap/Makefile
+++ b/src/battlemap/Makefile
@@ -1,15 +1,26 @@
-ELM_CC = elm-make --warn
+################################################################################
+## CONFIG ######################################################################
+################################################################################
+SRC_DIR ?= src
+WWW_DIR ?= www
+WWW_SCRIPT_DIR ?= $(WWW_DIR)/script
-SRC_DIR = src
-WWW_DIR = www
-WWW_SCRIPT_DIR = $(WWW_DIR)/script
+ELM_CC ?= elm-make --warn
-MAIN_MODULE = $(SRC_DIR)/Main.elm
+MAIN_MODULE ?= $(SRC_DIR)/Main.elm
+
+################################################################################
+## MAKEFILE MAGIC ##############################################################
+################################################################################
SUB_MODULES = $(shell find $(SRC_DIR) -type f | grep "elm$$")
-$(WWW_SCRIPT_DIR)/main.js: $(MAIN_MODULE) $(SUB_MODULES)
- $(ELM_CC) $(MAIN_MODULE) --output $@
+################################################################################
+## SANITY CHECKS ###############################################################
+################################################################################
+################################################################################
+## TARGET RULES ################################################################
+################################################################################
build: $(WWW_SCRIPT_DIR)/main.js
clean:
@@ -17,3 +28,9 @@ clean:
reset:
rm -rf elm-stuff
+
+################################################################################
+## INTERNAL RULES ##############################################################
+################################################################################
+$(WWW_SCRIPT_DIR)/main.js: $(MAIN_MODULE) $(SUB_MODULES)
+ $(ELM_CC) $(MAIN_MODULE) --output $@