diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 17 |
1 files changed, 15 insertions, 2 deletions
@@ -36,11 +36,12 @@ SCANINC := tools/scaninc/scaninc$(EXE) RAMSCRGEN := tools/ramscrgen/ramscrgen$(EXE) GBAFIX := tools/gbafix/gbafix$(EXE) MAPJSON := tools/mapjson/mapjson$(EXE) +JSONPROC := tools/jsonproc/jsonproc$(EXE) ASFLAGS := -mcpu=arm7tdmi -I include --defsym $(GAME_VERSION)=1 --defsym REVISION=$(GAME_REVISION) --defsym $(GAME_LANGUAGE)=1 --defsym DEBUG=$(DEBUG) --defsym MODERN=$(MODERN) CPPFLAGS := -iquote include -Werror -Wno-trigraphs -D $(GAME_VERSION) -D REVISION=$(GAME_REVISION) -D $(GAME_LANGUAGE) -D DEBUG=$(DEBUG) -D MODERN=$(MODERN) ifeq ($(MODERN),0) -CPPFLAGS += -I tools/agbcc/include -I tools/agbcc -nostdinc -undef +CPPFLAGS += -I tools/agbcc/include -nostdinc -undef CC1FLAGS := -mthumb-interwork -Wimplicit -Wparentheses -Wunused -Werror -O2 -fhex-asm else CC1FLAGS := -mthumb -mthumb-interwork -mabi=apcs-gnu -mtune=arm7tdmi -march=armv4t -O2 -fno-toplevel-reorder -fno-aggressive-loop-optimizations -Wno-pointer-to-int-cast @@ -50,6 +51,11 @@ ifneq (,$(DINFO)) CC1FLAGS += -g endif +ifneq (,$(NONMATCHING)) +CPPFLAGS += -DNONMATCHING +ASFLAGS += --defsym NONMATCHING=1 +endif + #### Files #### ROM := poke$(BUILD_NAME).gba @@ -64,7 +70,8 @@ C_OBJECTS := $(addprefix $(BUILD_DIR)/, $(C_SOURCES:%.c=%.o)) ASM_OBJECTS := $(addprefix $(BUILD_DIR)/, $(ASM_SOURCES:%.s=%.o)) ALL_OBJECTS := $(C_OBJECTS) $(ASM_OBJECTS) -SUBDIRS := $(sort $(dir $(ALL_OBJECTS))) +SUBDIRS := $(sort $(dir $(ALL_OBJECTS))) +DATA_SRC_SUBDIR = src/data GCC_VER = $(shell $(CC) -dumpversion) @@ -130,6 +137,8 @@ MAKEFLAGS += --no-print-directory # Create build subdirectories $(shell mkdir -p $(SUBDIRS)) +AUTO_GEN_TARGETS := + all: $(ROM) ifeq ($(COMPARE),1) @$(SHA1SUM) $(BUILD_NAME).sha1 @@ -142,6 +151,7 @@ mostlyclean: tidy rm -f data/layouts/layouts.inc data/layouts/layouts_table.inc rm -f data/maps/connections.inc data/maps/events.inc data/maps/groups.inc data/maps/headers.inc find data/maps \( -iname 'connections.inc' -o -iname 'events.inc' -o -iname 'header.inc' \) -exec rm {} + + rm -f $(AUTO_GEN_TARGETS) clean: mostlyclean $(MAKE) clean -C tools/gbagfx @@ -153,6 +163,7 @@ clean: mostlyclean $(MAKE) clean -C tools/ramscrgen $(MAKE) clean -C tools/gbafix $(MAKE) clean -C tools/mapjson + $(MAKE) clean -C tools/jsonproc tools: @$(MAKE) -C tools/gbagfx @@ -165,6 +176,7 @@ tools: @$(MAKE) -C tools/mid2agb @$(MAKE) -C tools/gbafix @$(MAKE) -C tools/mapjson + @$(MAKE) -C tools/jsonproc tidy: $(RM) $(ALL_BUILDS:%=poke%{.gba,.elf,.map}) @@ -230,6 +242,7 @@ include misc.mk include spritesheet_rules.mk include override.mk include map_data_rules.mk +include json_data_rules.mk %.1bpp: %.png ; $(GBAGFX) $< $@ $(GFX_OPTS) %.4bpp: %.png ; $(GBAGFX) $< $@ $(GFX_OPTS) |