summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rwxr-xr-xMakefile14
1 files changed, 11 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index e568dcf..c91a4e2 100755
--- a/Makefile
+++ b/Makefile
@@ -41,6 +41,14 @@ ASM_OBJS := $(ASM_SRCS:%.s=%.o)
DATA_ASM_SRCS := $(wildcard data/*.s)
DATA_ASM_OBJS := $(DATA_ASM_SRCS:%.s=%.o)
+# Disable dependency scanning when NODEP is used for quick building
+ifeq ($(NODEP),)
+ src/%.o: C_DEP = $(shell $(SCANINC) -I include src/$(*F).c)
+ asm/%.o: ASM_DEP = $(shell $(SCANINC) asm/$(*F).s)
+ data/%.o: ASM_DEP = $(shell $(SCANINC) data/$(*F).s)
+endif
+
+
OBJS := $(C_OBJS) $(ASM_OBJS) $(DATA_ASM_OBJS)
all: pmd_red.gba
@@ -67,16 +75,16 @@ src/agb_flash.o: CFLAGS := -O -mthumb-interwork
src/agb_flash_1m.o: CFLAGS := -O -mthumb-interwork
src/agb_flash_mx.o: CFLAGS := -O -mthumb-interwork
-$(C_OBJS): %.o : %.c
+$(C_OBJS): %.o : %.c $$(C_DEP)
@$(CPP) $(CPPFLAGS) $< -o $*.i
@$(CC1) $(CFLAGS) $*.i -o $*.s
@printf ".text\n\t.align\t2, 0\n" >> $*.s
$(AS) $(ASFLAGS) -o $@ $*.s
-$(ASM_OBJS): %.o: %.s
+$(ASM_OBJS): %.o: %.s $$(ASM_DEP)
$(AS) $(ASFLAGS) -o $@ $<
-$(DATA_ASM_OBJS): %.o: %.s
+$(DATA_ASM_OBJS): %.o: %.s $$(ASM_DEP)
$(AS) $(ASFLAGS) -o $@ $<
sym_ewram.ld: sym_ewram.txt