diff options
| author | YamaArashi <shadow962@live.com> | 2016-04-21 23:03:41 -0700 |
|---|---|---|
| committer | YamaArashi <shadow962@live.com> | 2016-04-21 23:06:36 -0700 |
| commit | 0601fb4d0013bd0f2508364b313acbdc371da674 (patch) | |
| tree | 8d11fa93697da09a4e0eb84bb0957d4722f5c8f4 /Makefile | |
| parent | 8890ea36eef541ba571df102c3353ee411033261 (diff) | |
Prepare for switch to standard gas (with preprocessor)
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 43 |
1 files changed, 15 insertions, 28 deletions
@@ -21,11 +21,11 @@ SCANINC := tools/scaninc/scaninc .PHONY: rom tools gbagfx scaninc clean compare deps CSRCS := $(wildcard src/*.c) -OBJS := asm/rom.o - -$(foreach obj, $(OBJS), \ - $(eval $(obj)_deps := $(shell $(SCANINC) $(obj:.o=.s))) \ -) +OBJS := asm/crt0.o asm/rom1.o asm/rom2.o asm/rom3.o asm/rom4.o asm/rom5.o \ + asm/libgcnmultiboot.o asm/libmks4agb.o asm/libagbsyscall.o asm/libgcc.o \ + src/string_util.o src/rtc.o src/play_time.o src/task.o \ + src/agb_flash.o src/agb_flash_1m.o src/agb_flash_mx.o src/siirtc.o \ + data/data1.o data/data2.o ROM := pokeruby.gba ELF := $(ROM:.gba=.elf) @@ -46,7 +46,6 @@ compare: $(ROM) clean: $(RM) $(ROM) $(ELF) $(OBJS) - $(RM) genasm/* find . \( -iname '*.1bpp' -o -iname '*.4bpp' -o -iname '*.8bpp' -o -iname '*.gbapal' -o -iname '*.lz' -o -iname '*.latfont' -o -iname '*.hwjpnfont' -o -iname '*.fwjpnfont' \) -exec rm {} + include castform.mk @@ -60,32 +59,20 @@ include tilesets.mk %.gbapal: %.pal ; $(GFX) $< $@ %.lz: % ; $(GFX) $< $@ -$(OBJS): $(CSRCS:src/%.c=genasm/%.s) - -genasm/siirtc.s: CFLAGS := -mthumb-interwork -Iinclude - -genasm/agb_flash.s: CFLAGS := -O -mthumb-interwork -Iinclude -genasm/agb_flash_1m.s: CFLAGS := -O -mthumb-interwork -Iinclude -genasm/agb_flash_mx.s: CFLAGS := -O -mthumb-interwork -Iinclude - -# TODO: fix this .syntax hack +$(OBJS): $(CSRCS:src/%.c=src/%.s) -genasm/prefix.tmp: - mkdir -p genasm - echo -e "\t.syntax divided" >$@ +src/siirtc.s: CFLAGS := -mthumb-interwork -Iinclude -genasm/suffix.tmp: - mkdir -p genasm - echo -e "\t.syntax unified" >$@ +src/agb_flash.s: CFLAGS := -O -mthumb-interwork -Iinclude +src/agb_flash_1m.s: CFLAGS := -O -mthumb-interwork -Iinclude +src/agb_flash_mx.s: CFLAGS := -O -mthumb-interwork -Iinclude -genasm/%.s: src/%.c genasm/prefix.tmp genasm/suffix.tmp - mkdir -p genasm - $(CC) $(CFLAGS) -o $@.tmp $< -S - cat genasm/prefix.tmp $@.tmp genasm/suffix.tmp >$@.tmp2 - perl fix_local_labels.pl $@.tmp2 $@ - $(RM) $@.tmp $@.tmp2 +src/%.s: src/%.c + $(CC) $(CFLAGS) -o $@ $< -S + echo -e ".text\n\t.align\t2, 0\n" >> $@ -%.o: %.s $$($$@_deps) +%.o: dep = $(shell $(SCANINC) $(@D)/$*.s) +%.o: %.s $$(dep) $(AS) $(ASFLAGS) -o $@ $< # Link objects to produce the ROM. |
