1 src = $(wildcard src/*.c)
2 ssrc = $(wildcard src/*.s)
3 obj = $(src:.c=.o) $(ssrc:.s=.o) $(dataobj)
9 data = data/tuncross.raw data/tuncross.pal \
12 audata = data/audio/popcorn.mod
13 dataobj = data/aas_data.o
15 libs = libs/aas/libaas.a
17 TCPREFIX = arm-none-eabi-
22 OBJCOPY = $(TCPREFIX)objcopy
23 OBJDUMP = $(TCPREFIX)objdump
26 opt = -O3 -fomit-frame-pointer -mcpu=arm7tdmi -mtune=arm7tdmi -mthumb -mthumb-interwork
30 CFLAGS = $(opt) $(dbg) -pedantic -Wall -MMD $(def) $(inc)
31 ASFLAGS = -mthumb-interwork
32 LDFLAGS = -mthumb -mthumb-interwork $(libs)
33 EMUFLAGS = -T 100 -f 1 --agb-print
41 $(OBJCOPY) -O binary $(elf) $(bin)
44 $(elf): data/aas_data.h $(obj) $(libs)
45 $(CC) -o $(elf) $(obj) -specs=gba.specs $(LDFLAGS)
49 src/data.o: src/data.s $(data)
51 tools/pngdump/pngdump:
52 $(MAKE) -C tools/pngdump
54 tools/conv2aas/conv2aas:
55 $(MAKE) -C tools/conv2aas
57 tools/tungen: tools/tungen.c
60 #data/sprites.raw: data/sprites1.png data/sprites2.png data/sprites3.png data/sprites4.png data/sprites5.png data/sprites6.png
61 # tools/pngdump/pngdump -o $@ -n $^
63 %.raw: %.png tools/pngdump/pngdump
64 tools/pngdump/pngdump -o $@ -n $<
66 %.pal: %.png tools/pngdump/pngdump
67 tools/pngdump/pngdump -o $@ -c $<
69 data/tun.map: tools/tungen
70 tools/tungen -s 240x160 >$@
72 data/aas_data.h: data/aas_data.s
74 data/aas_data.s: $(audata) tools/conv2aas/conv2aas
75 tools/conv2aas/conv2aas data/audio
79 rm -f $(obj) $(bin) $(bin_mb) $(elf) $(elf_mb)
87 $(MAKE) -C libs/aas clean