diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2018-04-09 08:32:02 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2018-04-09 08:32:02 -0400 |
commit | 86d8f1762df0977e060f740381529e466a2074d3 (patch) | |
tree | 972f9dfa137e4ae778353b7a038f898628f8ef9e | |
parent | e651e6a7847bb8f1a55506c8f7729176f84fabf9 (diff) | |
parent | 562dcc4bcdc14d5b6c0bb2a638410156945cdd41 (diff) |
Merge branch 'master' into unk_debug_menu_3
-rw-r--r-- | Makefile | 61 | ||||
-rw-r--r-- | tools/aif2pcm/Makefile | 5 | ||||
-rw-r--r-- | tools/bin2c/Makefile | 5 | ||||
-rw-r--r-- | tools/gbagfx/Makefile | 5 | ||||
-rw-r--r-- | tools/mid2agb/Makefile | 5 | ||||
-rw-r--r-- | tools/preproc/Makefile | 5 | ||||
-rw-r--r-- | tools/ramscrgen/Makefile | 5 | ||||
-rw-r--r-- | tools/rsfont/Makefile | 5 | ||||
-rw-r--r-- | tools/scaninc/Makefile | 5 |
9 files changed, 58 insertions, 43 deletions
@@ -29,29 +29,17 @@ CPPFLAGS := -I tools/agbcc/include -iquote include -nostdinc -undef -Werror -Wno ROM := poke$(BUILD_NAME).gba MAP := $(ROM:%.gba=%.map) -SUBDIRS := \ - sound \ - sound/songs \ - asm \ - data \ - src \ - src/battle \ - src/battle/anim \ - src/field \ - src/debug \ - src/scene \ - src/pokemon \ - src/engine \ - src/libs BUILD_DIR := build/$(BUILD_NAME) -C_SOURCES := $(foreach dir, $(SUBDIRS), $(wildcard $(dir)/*.c)) -ASM_SOURCES := $(foreach dir, $(SUBDIRS), $(wildcard $(dir)/*.s)) +C_SOURCES := $(wildcard src/*.c src/*/*.c src/*/*/*.c) +ASM_SOURCES := $(wildcard src/*.s src/*/*.s asm/*.s data/*.s sound/*.s sound/*/*.s) 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))) + LIBC := tools/agbcc/lib/libc.a LIBGCC := tools/agbcc/lib/libgcc.a @@ -75,10 +63,12 @@ ALL_BUILDS := ruby ruby_rev1 ruby_rev1 sapphire sapphire_rev1 sapphire_rev2 ruby # Available targets .PHONY: all clean tidy tools $(ALL_BUILDS) +infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line)))) + # Build tools when building the rom # Disable dependency scanning for clean/tidy/tools ifeq (,$(filter-out all,$(MAKECMDGOALS))) -$(info $(shell $(MAKE) tools)) +$(call infoshell, $(MAKE) tools) else NODEP := 1 endif @@ -91,6 +81,7 @@ ifeq ($(NODEP),) $(BUILD_DIR)/data/%.o: ASM_DEP = $(shell $(SCANINC) data/$(*F).s) endif +MAKEFLAGS += --no-print-directory # Secondary expansion is required for dependency variables in object rules. .SECONDEXPANSION: # Clear the default suffixes @@ -101,7 +92,7 @@ endif .DELETE_ON_ERROR: # Create build subdirectories -$(shell mkdir -p $(addprefix $(BUILD_DIR)/, $(SUBDIRS))) +$(shell mkdir -p $(SUBDIRS)) all: $(ROM) ifeq ($(COMPARE),1) @@ -121,13 +112,13 @@ clean: tidy $(MAKE) clean -C tools/ramscrgen tools: - $(MAKE) -C tools/gbagfx - $(MAKE) -C tools/scaninc - $(MAKE) -C tools/preproc - $(MAKE) -C tools/bin2c - $(MAKE) -C tools/rsfont - $(MAKE) -C tools/aif2pcm - $(MAKE) -C tools/ramscrgen + @$(MAKE) -C tools/gbagfx + @$(MAKE) -C tools/scaninc + @$(MAKE) -C tools/preproc + @$(MAKE) -C tools/bin2c + @$(MAKE) -C tools/rsfont + @$(MAKE) -C tools/aif2pcm + @$(MAKE) -C tools/ramscrgen tidy: $(RM) $(ALL_BUILDS:%=poke%{.gba,.elf,.map}) @@ -148,7 +139,7 @@ $(C_OBJECTS): $(BUILD_DIR)/%.o: %.c $$(C_DEP) $(CPP) $(CPPFLAGS) $< -o $(BUILD_DIR)/$*.i $(PREPROC) $(BUILD_DIR)/$*.i charmap.txt | $(CC1) $(CC1FLAGS) -o $(BUILD_DIR)/$*.s @printf ".text\n\t.align\t2, 0\n" >> $(BUILD_DIR)/$*.s - @$(AS) $(ASFLAGS) -o $@ $(BUILD_DIR)/$*.s + @$(AS) $(ASFLAGS) -W -o $@ $(BUILD_DIR)/$*.s # Only .s files in data need preproc $(BUILD_DIR)/data/%.o: data/%.s $$(ASM_DEP) @@ -158,15 +149,15 @@ $(BUILD_DIR)/%.o: %.s $$(ASM_DEP) $(AS) $(ASFLAGS) $< -o $@ # "friendly" target names for convenience sake -ruby: ; @$(MAKE) --no-print-directory GAME_VERSION=RUBY -ruby_rev1: ; @$(MAKE) --no-print-directory GAME_VERSION=RUBY GAME_REVISION=1 -ruby_rev2: ; @$(MAKE) --no-print-directory GAME_VERSION=RUBY GAME_REVISION=2 -sapphire: ; @$(MAKE) --no-print-directory GAME_VERSION=SAPPHIRE -sapphire_rev1: ; @$(MAKE) --no-print-directory GAME_VERSION=SAPPHIRE GAME_REVISION=1 -sapphire_rev2: ; @$(MAKE) --no-print-directory GAME_VERSION=SAPPHIRE GAME_REVISION=2 -ruby_de: ; @$(MAKE) --no-print-directory GAME_VERSION=RUBY GAME_LANGUAGE=GERMAN -sapphire_de: ; @$(MAKE) --no-print-directory GAME_VERSION=SAPPHIRE GAME_LANGUAGE=GERMAN -ruby_de_debug: ; @$(MAKE) --no-print-directory GAME_VERSION=RUBY GAME_LANGUAGE=GERMAN DEBUG=1 +ruby: ; @$(MAKE) GAME_VERSION=RUBY +ruby_rev1: ; @$(MAKE) GAME_VERSION=RUBY GAME_REVISION=1 +ruby_rev2: ; @$(MAKE) GAME_VERSION=RUBY GAME_REVISION=2 +sapphire: ; @$(MAKE) GAME_VERSION=SAPPHIRE +sapphire_rev1: ; @$(MAKE) GAME_VERSION=SAPPHIRE GAME_REVISION=1 +sapphire_rev2: ; @$(MAKE) GAME_VERSION=SAPPHIRE GAME_REVISION=2 +ruby_de: ; @$(MAKE) GAME_VERSION=RUBY GAME_LANGUAGE=GERMAN +sapphire_de: ; @$(MAKE) GAME_VERSION=SAPPHIRE GAME_LANGUAGE=GERMAN +ruby_de_debug: ; @$(MAKE) GAME_VERSION=RUBY GAME_LANGUAGE=GERMAN DEBUG=1 #### Graphics Rules #### diff --git a/tools/aif2pcm/Makefile b/tools/aif2pcm/Makefile index 967930c59..790ed71f2 100644 --- a/tools/aif2pcm/Makefile +++ b/tools/aif2pcm/Makefile @@ -6,7 +6,10 @@ LIBS = -lm SRCS = main.c extended.c -.PHONY: clean +.PHONY: all clean + +all: aif2pcm + @: aif2pcm: $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) diff --git a/tools/bin2c/Makefile b/tools/bin2c/Makefile index 4cc23a25a..dd4e537a2 100644 --- a/tools/bin2c/Makefile +++ b/tools/bin2c/Makefile @@ -2,10 +2,13 @@ CC = gcc CFLAGS = -Wall -Wextra -Werror -std=c11 -O2 -s -.PHONY: clean +.PHONY: all clean SRCS = bin2c.c +all: bin2c + @: + bin2c: $(SRCS) $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) diff --git a/tools/gbagfx/Makefile b/tools/gbagfx/Makefile index d791dabb5..c10b258de 100644 --- a/tools/gbagfx/Makefile +++ b/tools/gbagfx/Makefile @@ -6,7 +6,10 @@ LIBS = -lpng -lz SRCS = main.c convert_png.c gfx.c jasc_pal.c lz.c rl.c util.c font.c -.PHONY: clean +.PHONY: all clean + +all: gbagfx + @: gbagfx: $(SRCS) convert_png.h gfx.h global.h jasc_pal.h lz.h rl.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) diff --git a/tools/mid2agb/Makefile b/tools/mid2agb/Makefile index f27f2cad4..4dc2f123f 100644 --- a/tools/mid2agb/Makefile +++ b/tools/mid2agb/Makefile @@ -6,7 +6,10 @@ SRCS := agb.cpp error.cpp main.cpp midi.cpp tables.cpp HEADERS := agb.h error.h main.h midi.h tables.h -.PHONY: clean +.PHONY: all clean + +all: mid2agb + @: mid2agb: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) diff --git a/tools/preproc/Makefile b/tools/preproc/Makefile index ec4a5f365..bf1c11b4b 100644 --- a/tools/preproc/Makefile +++ b/tools/preproc/Makefile @@ -8,7 +8,10 @@ SRCS := asm_file.cpp c_file.cpp charmap.cpp preproc.cpp string_parser.cpp \ HEADERS := asm_file.h c_file.h char_util.h charmap.h preproc.h string_parser.h \ utf8.h -.PHONY: clean +.PHONY: all clean + +all: preproc + @: preproc: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) diff --git a/tools/ramscrgen/Makefile b/tools/ramscrgen/Makefile index cc6d458ba..2e51e4cba 100644 --- a/tools/ramscrgen/Makefile +++ b/tools/ramscrgen/Makefile @@ -6,7 +6,10 @@ SRCS := main.cpp sym_file.cpp elf.cpp HEADERS := ramscrgen.h sym_file.h elf.h char_util.h -.PHONY: clean +.PHONY: all clean + +all: ramscrgen + @: ramscrgen: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) diff --git a/tools/rsfont/Makefile b/tools/rsfont/Makefile index a78beca50..041ee0c43 100644 --- a/tools/rsfont/Makefile +++ b/tools/rsfont/Makefile @@ -6,7 +6,10 @@ LIBS = -lpng -lz SRCS = main.c convert_png.c util.c font.c -.PHONY: clean +.PHONY: all clean + +all: rsfont + @: rsfont: $(SRCS) convert_png.h gfx.h global.h util.h font.h $(CC) $(CFLAGS) $(SRCS) -o $@ $(LDFLAGS) $(LIBS) diff --git a/tools/scaninc/Makefile b/tools/scaninc/Makefile index 3e1c031a8..32c16c31f 100644 --- a/tools/scaninc/Makefile +++ b/tools/scaninc/Makefile @@ -6,7 +6,10 @@ SRCS = scaninc.cpp c_file.cpp asm_file.cpp HEADERS := scaninc.h asm_file.h c_file.h -.PHONY: clean +.PHONY: all clean + +all: scaninc + @: scaninc: $(SRCS) $(HEADERS) $(CXX) $(CXXFLAGS) $(SRCS) -o $@ $(LDFLAGS) |