blob: da61f6ad53072b716292b6e86c16cd24c4b3f276 (
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) $(ARCHFLAGS) $(OPTFLAGS) $(addprefix -T,$(LDSCRIPTS)) -Wl,--gc-sections -Wl,--build-id=none -nostartfiles
OBJECTS=startup.o main.o
.PHONY: all
all: hello.bin
%.bin: %.elf Makefile
m68k-none-elf-objcopy -O binary $< $@
hello.elf: $(OBJECTS) $(LDSCRIPTS) Makefile
m68k-none-elf-gcc -o $@ $(OBJECTS) $(_LDFLAGS)
OBJECTS: Makefile
%.o: %.c Makefile
m68k-none-elf-gcc -c $< -o $@ $(_CFLAGS)
clean:
rm -rfv hello.elf hello.bin $(OBJECTS)
|