summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile60
1 files changed, 55 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index ff45e1a..e82a7ef 100644
--- a/Makefile
+++ b/Makefile
@@ -1,11 +1,61 @@
+#
+# Settings
+# Use Makefile.local for local settings
+#
+
+FS_BASEPATH ?= $(HOME)/tremulous
+FS_HOMEPATH ?= $(HOME)/.tremulous
+
+Q3MAP ?= q3map2
+Q3MAP_FLAGS += -fs_basepath $(FS_BASEPATH) -fs_homebase $(FS_HOMEPATH) \
+ -fs_game base -threads 4
+Q3MAP_BSP += -leaktest -meta
+Q3MAP_VIS += -vis
+Q3MAP_LIGHT += -light -bounce 1 -dirty -bouncegrid -dirtscale 0.3 \
+ -dirtdepth 32 -fastbounce -patchshadows -samples 8 \
+ -samplesize 8 -cpma
+
+MAPCAT ?= mapcat
+MAPCAT_FLAGS +=
+
PARTS := maps/p1_bases.map \
maps/p2_clockroom.map
-OUT := maps/analmango
+WHOLE := maps/analmango
+
+.DEFAULT_GOAL := $(WHOLE).bsp
+
+-include Makefile.local
+
+#
+# Creating a .pk3 with all the assets
+#
+
+analmango.pk3: $(WHOLE).bsp
+ zip -r9 $@ maps/analmango.bsp scripts sound textures
+
+#
+# Assembling the complete .map from parts
+#
+
+$(WHOLE).map: $(PARTS)
+ $(MAPCAT) $(MAPCAT_FLAGS) $^ -o $@
+
+#
+# Compiling .map files into .bsp files
+#
+
+maps/%.bsp: maps/%.map
+ $(Q3MAP) $(Q3MAP_FLAGS) $(Q3MAP_BSP) $<
+ $(Q3MAP) $(Q3MAP_FLAGS) $(Q3MAP_VIS) $<
+ $(Q3MAP) $(Q3MAP_FLAGS) $(Q3MAP_LIGHT) $<
-$(OUT).map: $(PARTS)
- mapcat $^ -o $@
+#
+# Miscellaneous Make stuff
+#
clean:
- rm $(OUT)
+ rm -f *.pk3
+ rm -f maps/*.bsp
+ rm -f $(WHOLE).*
-.PHONY: clean
+.PHONY: clean default