diff options
author | Aaron Giles <aaron@aarongiles.com> | 2010-09-14 01:15:26 +0000 |
---|---|---|
committer | Aaron Giles <aaron@aarongiles.com> | 2010-09-14 01:15:26 +0000 |
commit | db797ba7913c0edfbc8a7d9fae4b1065d61a1ad2 (patch) | |
tree | f5c8c3043ab4acebdc2e45da7dc826990f9542b7 /makefile | |
parent | 7d09104932a3e0e8cd9eb20e8296c26a907f0c6b (diff) |
New build tool makedep.c, derived from src2html.c (really!).
Does basic dependency analysis and supports excluding paths.
Makefile now supports a depend target which will run makedep
on the src/$(TARGET) tree and create dependencies. It deliberately
excludes the root of src/emu as well as the osd directories in
order to keep the dependency file down to a reasonable size, so
if a core header file changes, you still need to clean and build
all.
Diffstat (limited to 'makefile')
-rw-r--r-- | makefile | 35 |
1 files changed, 30 insertions, 5 deletions
@@ -489,7 +489,7 @@ COBJFLAGS += \ #------------------------------------------------- # add core include paths -CCOMFLAGS += \ +INCPATH += \ -I$(SRC)/$(TARGET) \ -I$(OBJ)/$(TARGET)/layout \ -I$(SRC)/emu \ @@ -500,6 +500,7 @@ CCOMFLAGS += \ -I$(SRC)/osd/$(OSD) \ + #------------------------------------------------- # archiving flags #------------------------------------------------- @@ -585,7 +586,7 @@ LIBS = # add expat XML library ifeq ($(BUILD_EXPAT),1) -CCOMFLAGS += -I$(SRC)/lib/expat +INCPATH += -I$(SRC)/lib/expat EXPAT = $(OBJ)/libexpat.a else LIBS += -lexpat @@ -594,7 +595,7 @@ endif # add ZLIB compression library ifeq ($(BUILD_ZLIB),1) -CCOMFLAGS += -I$(SRC)/lib/zlib +INCPATH += -I$(SRC)/lib/zlib ZLIB = $(OBJ)/libz.a else LIBS += -lz @@ -643,6 +644,7 @@ include $(SRC)/build/build.mak include $(SRC)/tools/tools.mak # combine the various definitions to one +CCOMFLAGS += $(INCPATH) CDEFS = $(DEFS) @@ -655,6 +657,22 @@ emulator: maketree $(BUILD) $(EMULATOR) buildtools: maketree $(BUILD) +# In order to keep dependencies reasonable, we exclude objects in the base of +# $(SRC)/emu, as well as all the OSD objects and anything in the $(OBJ) tree +depend: maketree $(MAKEDEP_TARGET) + @echo Rebuilding depend.mak... + $(MAKEDEP) -I. $(INCPATH) -X$(SRC)/emu -X$(SRC)/osd/... -X$(OBJ)/... src/mame > depend.mak + +INCPATH += \ + -I$(SRC)/$(TARGET) \ + -I$(OBJ)/$(TARGET)/layout \ + -I$(SRC)/emu \ + -I$(OBJ)/emu \ + -I$(OBJ)/emu/layout \ + -I$(SRC)/lib/util \ + -I$(SRC)/osd \ + -I$(SRC)/osd/$(OSD) \ + tools: maketree $(TOOLS) maketree: $(sort $(OBJDIRS)) @@ -725,11 +743,11 @@ $(OBJ)/%.s: $(SRC)/%.c | $(OSPREBUILD) @echo Compiling $<... $(CC) $(CDEFS) $(CFLAGS) -S $< -o $@ -$(OBJ)/%.lh: $(SRC)/%.lay $(FILE2STR) +$(OBJ)/%.lh: $(SRC)/%.lay $(FILE2STR_TARGET) @echo Converting $<... @$(FILE2STR) $< $@ layout_$(basename $(notdir $<)) -$(OBJ)/%.fh: $(SRC)/%.png $(PNG2BDC) $(FILE2STR) +$(OBJ)/%.fh: $(SRC)/%.png $(PNG2BDC_TARGET) $(FILE2STR_TARGET) @echo Converting $<... @$(PNG2BDC) $< $(OBJ)/temp.bdc @$(FILE2STR) $(OBJ)/temp.bdc $@ font_$(basename $(notdir $<)) UINT8 @@ -745,3 +763,10 @@ $(OBJ)/%.o: $(SRC)/%.m | $(OSPREBUILD) $(CC) $(CDEFS) $(COBJFLAGS) $(CCOMFLAGS) -c $< -o $@ endif + + +#------------------------------------------------- +# optional dependencies file +#------------------------------------------------- + +-include depend.mak |