From a09104c281a092ed5d69f2179980e0de33c5c380 Mon Sep 17 00:00:00 2001 From: Uwe Bonnes Date: Mon, 20 Apr 2020 17:36:21 +0200 Subject: [PATCH] Build firmware executables as *.elf file --- .gitignore | 1 + src/Makefile | 14 ++++++++++---- src/platforms/native/Makefile.inc | 2 +- src/platforms/stlink/Makefile.inc | 8 ++++---- src/platforms/swlink/Makefile.inc | 4 ++-- 5 files changed, 18 insertions(+), 11 deletions(-) diff --git a/.gitignore b/.gitignore index 945fd3d9..322deda3 100644 --- a/.gitignore +++ b/.gitignore @@ -16,4 +16,5 @@ tags *.b#* blackmagic_upgrade *.exe +*.elf .vscode diff --git a/src/Makefile b/src/Makefile index 6c9d931d..35ec8f2f 100644 --- a/src/Makefile +++ b/src/Makefile @@ -67,7 +67,11 @@ CFLAGS += $(OPT_FLAGS) LDFLAGS += $(OPT_FLAGS) ifndef TARGET -TARGET=blackmagic +ifdef PC_HOSTED +TARGET = blackmagic +else +TARGET = blackmagic.elf +endif endif ifdef NO_OWN_LL @@ -96,19 +100,21 @@ $(TARGET): include/version.h $(OBJ) @echo " AS $<" $(Q)$(CC) $(CFLAGS) -c $< -o $@ -%.bin: % +ifndef PC_HOSTED +%.bin: %.elf @echo " OBJCOPY $@" $(Q)$(OBJCOPY) -O binary $^ $@ -%.hex: % +%.hex: %.elf @echo " OBJCOPY $@" $(Q)$(OBJCOPY) -O ihex $^ $@ +endif .PHONY: clean host_clean all_platforms FORCE clean: host_clean $(Q)echo " CLEAN" - -$(Q)$(RM) *.o *.d *~ blackmagic $(HOSTFILES) + -$(Q)$(RM) *.o *.d *.elf *~ $(TARGET) $(HOSTFILES) -$(Q)$(RM) platforms/*/*.o platforms/*/*.d mapfile include/version.h all_platforms: diff --git a/src/platforms/native/Makefile.inc b/src/platforms/native/Makefile.inc index d3cef33c..6d3e8ea4 100644 --- a/src/platforms/native/Makefile.inc +++ b/src/platforms/native/Makefile.inc @@ -30,7 +30,7 @@ SRC += cdcacm.c \ all: blackmagic.bin blackmagic_dfu.bin blackmagic_dfu.hex -blackmagic_dfu: usbdfu.o dfucore.o dfu_f1.o +blackmagic_dfu.elf: usbdfu.o dfucore.o dfu_f1.o @echo " LD $@" $(Q)$(CC) $^ -o $@ $(LDFLAGS_BOOT) diff --git a/src/platforms/stlink/Makefile.inc b/src/platforms/stlink/Makefile.inc index a0cf7def..66feef6b 100644 --- a/src/platforms/stlink/Makefile.inc +++ b/src/platforms/stlink/Makefile.inc @@ -37,18 +37,18 @@ SRC += cdcacm.c \ stlink_common.c \ ifeq ($(ST_BOOTLOADER), 1) -all: blackmagic.bin blackmagic_dfu.bin blackmagic_dfu.hex +all: blackmagic.bin else all: blackmagic.bin blackmagic_dfu.bin blackmagic_dfu.hex dfu_upgrade.bin dfu_upgrade.hex endif -blackmagic_dfu: usbdfu.o dfucore.o dfu_f1.o stlink_common.o +blackmagic_dfu.elf: usbdfu.o dfucore.o dfu_f1.o stlink_common.o @echo " LD $@" $(Q)$(CC) $^ -o $@ $(LDFLAGS_BOOT) -dfu_upgrade: dfu_upgrade.o dfucore.o dfu_f1.o stlink_common.o +dfu_upgrade.elf: dfu_upgrade.o dfucore.o dfu_f1.o stlink_common.o @echo " LD $@" $(Q)$(CC) $^ -o $@ $(LDFLAGS) host_clean: - -$(Q)$(RM) blackmagic.bin blackmagic_dfu blackmagic_dfu.bin blackmagic_dfu.hex dfu_upgrade dfu_upgrade.bin dfu_upgrade.hex + -$(Q)$(RM) *.bin *elf *hex diff --git a/src/platforms/swlink/Makefile.inc b/src/platforms/swlink/Makefile.inc index b3831f7c..5ac76ec7 100644 --- a/src/platforms/swlink/Makefile.inc +++ b/src/platforms/swlink/Makefile.inc @@ -31,11 +31,11 @@ SRC += cdcacm.c \ all: blackmagic.bin blackmagic_dfu.bin blackmagic_dfu.hex dfu_upgrade.bin dfu_upgrade.hex -blackmagic_dfu: usbdfu.o dfucore.o dfu_f1.o platform_common.o +blackmagic_dfu.elf: usbdfu.o dfucore.o dfu_f1.o platform_common.o @echo " LD $@" $(Q)$(CC) $^ -o $@ $(LDFLAGS_BOOT) -dfu_upgrade: dfu_upgrade.o dfucore.o dfu_f1.o platform_common.o +dfu_upgrade.elf: dfu_upgrade.o dfucore.o dfu_f1.o platform_common.o @echo " LD $@" $(Q)$(CC) $^ -o $@ $(LDFLAGS)