]> Dogcows Code - chaz/yoink/blobdiff - src/rules.mk
testing new non-autotools build system
[chaz/yoink] / src / rules.mk
diff --git a/src/rules.mk b/src/rules.mk
new file mode 100644 (file)
index 0000000..e452ae4
--- /dev/null
@@ -0,0 +1,75 @@
+
+#########################
+sp             := $(sp).x
+dirstack_$(sp) := $(d)
+d              := $(dir)
+#########################
+
+#
+# Include the subdirectories--order is not important.
+#
+
+dir := $(d)/moof
+include $(dir)/rules.mk
+
+dir := $(d)/stlplus
+include $(dir)/rules.mk
+
+
+#
+# Define rules and targets for Yoink.
+#
+
+OBJS_$(d) := \
+             $(d)/Animation.o \
+             $(d)/Character.o \
+             $(d)/GameLayer.o \
+             $(d)/Heroine.o \
+             $(d)/Hud.o \
+             $(d)/Main.o \
+             $(d)/Scene.o \
+             $(d)/TilemapFont.o \
+             $(d)/TitleLayer.o \
+             $(d)/Typesetter.o \
+             $(d)/version.o \
+                        $(_END_)
+
+ifeq ($(HOST),win32)
+OBJS_$(d) += $(d)/yoink.o
+endif
+
+TGTS_$(d) := $(d)/yoink$(EXEEXT)
+DEPS_$(d) := $(OBJS_$(d):%=%.d)
+
+TGT_BIN   := $(TGT_BIN) $(TGTS_$(d))
+CLEAN     := $(CLEAN) $(OBJS_$(d)) $(DEPS_$(d)) $(TGTS_$(d))
+
+
+$(OBJS_$(d)): CF_TGT := -I$(d)
+$(OBJS_$(d)): $(d)/rules.mk
+
+$(TGTS_$(d)): $(OBJS_$(d)) $(d)/moof/libmoof.a $(d)/stlplus/libstlplus.a
+       $(DO_LDX)
+
+
+#
+# Define the run and debug targets.
+#
+
+YOINK_ENVIRONMENT = YOINK_DATADIR="./data"
+
+.PHONY: run
+run: $(TGTS_$(d))
+       @$(YOINK_ENVIRONMENT) $< $(YOINK_OPTS)
+
+.PHONY: debug
+debug: $(TGTS_$(d))
+       @$(YOINK_ENVIRONMENT) gdb $<
+
+
+#######################
+-include $(DEPS_$(d))
+d  := $(dirstack_$(sp))
+sp := $(basename $(sp))
+#######################
+
This page took 0.021363 seconds and 4 git commands to generate.