initial commit
[retrocrawl] / Makefile.amiga
1 src = $(wildcard src/*.c) \
2           $(wildcard src/amiga/*.c)
3 asrc = $(wildcard src/amiga/*.s)
4 obj = $(src:.c=.o) $(asrc:.s=.o) 
5
6 name = retrocrawl
7 elf = $(name).elf
8 bin = $(name).bin
9 adf = $(name).adf
10 bootblock = boot.bin
11
12 tool_prefix = m68k-linux-gnu-
13
14 CC = $(tool_prefix)gcc
15 AS = $(tool_prefix)as
16 LD = $(tool_prefix)ld
17 OBJCOPY = $(tool_prefix)objcopy
18
19 ASFLAGS = -m68000
20 CFLAGS = -m68000 -ffreestanding -pedantic -Wall -Os
21 LDFLAGS = -T amiga.ld -print-gc-sections \
22                   -L/usr/lib/gcc-cross/m68k-linux-gnu/6 -lgcc
23
24 $(adf): $(bin) $(bootblock)
25         tools/mk_adf.py $(bootblock) $(bin) $@
26
27 $(bin): $(elf)
28         $(OBJCOPY) -O binary $< $@
29
30 $(elf): $(obj)
31         $(LD) -o $@ $(obj) -Map link.map $(LDFLAGS)
32
33 $(bootblock): src/amiga/boot/boot.o
34         $(OBJCOPY) -O binary $< $@
35
36 .PHONY: clean
37 clean:
38         rm -f $(obj) src/amiga/boot/boot.o $(bin) $(elf)
39
40 .PHONY: run
41 run:
42         fs-uae