arm: makefile improvements

This commit is contained in:
Paul Mathieu 2022-05-16 20:28:24 -07:00
parent d7a8f5b26d
commit 0226d314ec
2 changed files with 11 additions and 9 deletions

View File

@ -7,7 +7,7 @@ SECTIONS
{
.text :
{
KEEP(vector_table.o(.vector_table))
KEEP(*(.vector_table))
*(.text*)
*(.rodata*)

View File

@ -7,12 +7,13 @@ linker_script = bootloader.ld
includes =
sources =
CFLAGS = -march=armv6-m -g -ffunction-sections -fdata-sections -O2 -Werror -Wall
CXXFLAGS = $(CFLAGS) -std=c++20 -fno-exceptions
CFLAGS = -march=armv6-m -g -ffunction-sections -fdata-sections -Os -Werror -Wall -flto
CXXFLAGS = $(CFLAGS) -std=c++20 -fno-exceptions -fcoroutines
CPPFLAGS = -MD -MP
LDFLAGS = -march=armv6-m \
-g --specs=nano.specs --specs=nosys.specs \
-Wl,--gc-sections -O2 \
-Wl,--print-memory-usage
-Wl,--gc-sections -Os \
-Wl,--print-memory-usage -flto
sources += hal/lib/common/xil_assert.c
includes += -Ihal/lib/common
@ -23,17 +24,18 @@ includes += -Ihal/uart
bootloader_objects = uart.o bootloader.o vector_table.o $(sources:.c=.o)
app_objects = app_init.o main.o
CFLAGS += $(includes)
CPPFLAGS += $(includes)
all: bootloader.elf app.bin
%.bin: %.elf
$(OBJCOPY) -O binary $< $@
bootloader.elf: $(bootloader_objects)
$(LD) -Wl,-Tbootloader.ld $(LDFLAGS) -o $@ $^
bootloader.elf: $(bootloader_objects) bootloader.ld
$(LD) -Wl,-Tbootloader.ld $(LDFLAGS) -o $@ $(bootloader_objects)
app.elf: $(app_objects)
app.elf: $(app_objects) app.ld
$(LD) -Wl,-Tapp.ld $(LDFLAGS) -o $@ $(app_objects)
%.elf:
$(LD) -Wl,-Tapp.ld $(LDFLAGS) -o $@ $^