diff options
| author | PikalaxALT <pikalaxalt@gmail.com> | 2019-07-03 09:30:05 -0400 |
|---|---|---|
| committer | PikalaxALT <pikalaxalt@gmail.com> | 2019-07-03 09:30:05 -0400 |
| commit | f9c6d3bbb80fa8eba8122c3af0b583cee3b1dfc1 (patch) | |
| tree | 102220b878f621275136708e6b40bb56063d6c82 /Makefile | |
| parent | 48d2923bc693a41ec9b7b9fad2728262415c2cd7 (diff) | |
Link modern libs and allow custom toolchain
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 24 |
1 files changed, 19 insertions, 5 deletions
@@ -1,4 +1,12 @@ +TOOLCHAIN ?= $(DEVKITARM) +ifneq (,$(wildcard $(TOOLCHAIN)/base_tools)) include $(DEVKITARM)/base_tools +else +PREFIX := $(TOOLCHAIN)/bin/arm-none-eabi- +OBJCOPY := $(PREFIX)objcopy +CC := $(PREFIX)gcc +AS := $(PREFIX)as +endif include config.mk ifeq ($(OS),Windows_NT) @@ -11,7 +19,6 @@ endif #### Tools #### SHELL := /bin/bash -o pipefail -AS := $(PREFIX)as ifeq ($(MODERN),0) CC1 := tools/agbcc/bin/agbcc$(EXE) else @@ -19,7 +26,6 @@ CC1 := $(shell $(PREFIX)gcc --print-prog-name=cc1) endif CPP := $(PREFIX)cpp LD := $(PREFIX)ld -OBJCOPY := $(PREFIX)objcopy SHA1SUM := sha1sum -c GBAGFX := tools/gbagfx/gbagfx$(EXE) RSFONT := tools/rsfont/rsfont$(EXE) @@ -56,9 +62,16 @@ ALL_OBJECTS := $(C_OBJECTS) $(ASM_OBJECTS) SUBDIRS := $(sort $(dir $(ALL_OBJECTS))) -LIBC := tools/agbcc/lib/libc.a -LIBGCC := tools/agbcc/lib/libgcc.a -LDFLAGS := -L ../../tools/agbcc/lib -lgcc -lc +GCC_VER = $(shell $(CC) -dumpversion) + +ifeq ($(MODERN),0) +LIBDIRS := ../../tools/agbcc/lib +else +LIBDIRS := \ + $(TOOLCHAIN)/lib/gcc/arm-none-eabi/$(GCC_VER)/thumb \ + $(TOOLCHAIN)/arm-none-eabi/lib/thumb +endif +LDFLAGS := $(LIBDIRS:%=-L %) -lgcc -lc LD_SCRIPT := $(BUILD_DIR)/ld_script.ld @@ -149,6 +162,7 @@ tools: tidy: $(RM) $(ALL_BUILDS:%=poke%{.gba,.elf,.map}) + $(RM) $(MODERN_BUILDS:%=poke%{.gba,.elf,.map}) $(RM) -r build $(ROM): %.gba: %.elf |
