blob: c66436d0a96dcabd39a7c70300a675874a90a5fa (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
WARNFLAGS = -Wall -Wextra -pedantic -Wshadow -Wlogical-op
OPTFLAGS = -Os
ARCHFLAGS = -m68000
_CFLAGS = $(CFLAGS) $(WARNFLAGS) $(ARCHFLAGS) $(OPTFLAGS) -g3 -ffunction-sections -fdata-sections
LDSCRIPTS = m68k.ld _sram.ld _rom.ld
_LDFLAGS = $(LDFLAGS) $(OPTFLAGS) $(addprefix -T,$(LDSCRIPTS)) --gc-sections
OBJECTS=startup.o main.o
.PHONY: all
all: hellorom.bin
%.bin: %.elf Makefile
m68k-none-elf-objcopy -O binary $< $@
hellorom.elf: $(OBJECTS) $(LDSCRIPTS) Makefile
m68k-none-elf-ld -o $@ $(OBJECTS) $(_LDFLAGS)
OBJECTS: Makefile
%.o: %.c Makefile
m68k-none-elf-gcc -m68000 -c $< -o $@ $(_CFLAGS)
clean:
rm -rfv hellorom.elf hellorom.bin $(OBJECTS)
|