X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=Makefile;h=6c173f86b8cf2c520a07f5d43fff01a8e7b07da4;hb=dc2165689855c0517d30fb10c1b71464e42d8b6b;hp=8f847511636ef8f6d4716b8ec591339571097c75;hpb=c01146f8ecd395bfcdeb8af3b50f8a9ab2b87488;p=mdlife diff --git a/Makefile b/Makefile index 8f84751..6c173f8 100644 --- a/Makefile +++ b/Makefile @@ -1,8 +1,8 @@ csrc = $(wildcard src/*.c) $(wildcard src/libc/*.c) -asrc = $(wildcard src/*.s) -aSsrc = $(wildcard src/*.S) +asrc = $(wildcard src/*.s) $(wildcard src/libc/*.s) +aSsrc = $(wildcard src/*.S) $(wildcard src/libc/*.S) obj = $(asrc:.s=-asm.o) $(aSsrc:.S=-asm.o) $(csrc:.c=.o) -dep = $(csrc:.c=.d) +dep = $(csrc:.c=.d) $(aSsrc:.S=-asm.d) z80src = $(wildcard src/z80/*.asm) z80obj = $(z80src:.asm=.z80) @@ -14,22 +14,23 @@ bin = $(name).bin warn = -pedantic -Wall dbg = -g -opt = -O2 +opt = -O3 def = -D__NO_CTYPE inc = -I. -Isrc -Isrc/libc -TC = m68k-linux-gnu- +ARCH = m68k-elf +TC = $(ARCH)- CC = $(TC)gcc AS = $(TC)as LD = $(TC)ld OBJCOPY = $(TC)objcopy +OBJDUMP = $(TC)objdump CFLAGS = -m68000 -ffreestanding -fno-builtin -fcommon $(warn) $(dbg) $(opt) $(def) $(inc) -MMD CPPFLAGS = $(def) ASFLAGS = -m68000 $(inc) -LDFLAGS = -T megadrive.ld -print-gc-sections \ - -L/usr/lib/gcc-cross/m68k-linux-gnu/11 -lgcc +LDFLAGS = -T megadrive.ld -Wl,-print-gc-sections -nostdlib -lgcc Z80AS = vasmz80_oldstyle Z80ASFLAGS = -Fvobj @@ -41,21 +42,27 @@ $(bin): $(elf) $(OBJCOPY) -O binary $< $@ $(elf): $(obj) - $(LD) -o $@ $(obj) -Map link.map $(LDFLAGS) + $(CC) -o $@ $(obj) -Wl,-Map,link.map $(LDFLAGS) $(z80bin): $(z80obj) $(Z80LD) -o $@ $(Z80LDFLAGS) $(z80obj) -src/data.o: src/data.s data/font8x8.img +disasm: $(elf) + $(OBJDUMP) -D $< >$@ + +src/data-asm.o: src/data.s data/font8x8.img data/cellspr.img data/simbabg.tiles \ + data/simbafg.tiles src/z80prog-asm.o: src/z80prog.s $(z80bin) +data/cellspr.img: data/cellspr.png + -include $(dep) %-asm.o: %.s $(AS) -o $@ $(ASFLAGS) $< %-asm.o: %.S - $(CC) -o $@ $(ASFLAGS) -c $< + $(CC) -o $@ $(ASFLAGS) -DASM -MMD -c $< %.z80: %.asm $(Z80AS) -o $@ $(Z80ASFLAGS) $< >/dev/null @@ -90,5 +97,8 @@ PNGDUMP = tools/pngdump/pngdump $(PNGDUMP): tools/pngdump/main.c tools/pngdump/image.c tools/pngdump/quant.c $(MAKE) -C tools/pngdump +%.tiles: %.png $(PNGDUMP) + $(PNGDUMP) -o $@ -oc $(@:.tiles=.cmap) -om $(@:.tiles=.tmap) -T 8x8 -D $< + %.img: %.png $(PNGDUMP) $(PNGDUMP) -o $@ -oc $(@:.img=.cmap) -T 8x8 $<