aboutsummaryrefslogtreecommitdiffstats
path: root/package/boot
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2021-08-21 00:08:42 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2021-08-21 00:10:43 +0200
commitfcfeb47eb02faeca865ee8676776aa97e123fbda (patch)
tree8a9e289c34f65cdedf2a81c461fe0d348e286d20 /package/boot
parenta1034afba8ea8bec48e2528fdae0fb74a6757e53 (diff)
downloadupstream-fcfeb47eb02faeca865ee8676776aa97e123fbda.tar.gz
upstream-fcfeb47eb02faeca865ee8676776aa97e123fbda.tar.bz2
upstream-fcfeb47eb02faeca865ee8676776aa97e123fbda.zip
at91bootstrap: Fix compile with binutils 2.36
This fixes a build problem seen after binutils 2.36 is used by default. Fixes: 3f41153b1c28 ("toolchain/binutils: switch to version 2.36.1 by default") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'package/boot')
-rw-r--r--package/boot/at91bootstrap/patches/001-Makefile-Remove-nostartfiles-from-LDFLAGS.patch38
1 files changed, 38 insertions, 0 deletions
diff --git a/package/boot/at91bootstrap/patches/001-Makefile-Remove-nostartfiles-from-LDFLAGS.patch b/package/boot/at91bootstrap/patches/001-Makefile-Remove-nostartfiles-from-LDFLAGS.patch
new file mode 100644
index 0000000000..9d48758bda
--- /dev/null
+++ b/package/boot/at91bootstrap/patches/001-Makefile-Remove-nostartfiles-from-LDFLAGS.patch
@@ -0,0 +1,38 @@
+From 59c8963d8e6a08222616d1b384e1009ba05e6b82 Mon Sep 17 00:00:00 2001
+From: Chris Elledge <celledge@digitallumensinc.com>
+Date: Tue, 8 Jun 2021 14:01:14 -0400
+Subject: Makefile: Remove -nostartfiles from LDFLAGS
+
+Binutils linker ld does not support the flag -nostartfiles.
+This is interpreted as "-n -o startfiles" which fortunately has no impact
+on the build process. Removing -nostartfiles has no impact on the build.
+
+Binutils 2.36 and later ld has improved flag parsing and throws an error if
+-nostartfiles is passed as an argument. Removing the flag fixes the problem.
+
+Details on the Binutils ML:
+https://sourceware.org/pipermail/binutils/2021-June/116826.html
+
+In our ld command line there are explicit
+-n -o $(BINDIR)/$(BOOT_NAME).elf options,
+hence removing -nostartfiles will not alter the build.
+
+Signed-off-by: Chris Elledge <celledge@digitallumensinc.com>
+Reviewed-by: Aubin Constans <aubin.constans@microchip.com>
+[eugen.hristev@microchip.com: ported to at91bootstrap4]
+Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/Makefile
++++ b/Makefile
+@@ -275,7 +275,7 @@ endif
+ # --cref: add cross reference to map file
+ # -lc : tells the linker to tie in newlib
+ # -lgcc : tells the linker to tie in newlib
+-LDFLAGS=-nostartfiles -Map=$(BINDIR)/$(BOOT_NAME).map --cref -static
++LDFLAGS=-Map=$(BINDIR)/$(BOOT_NAME).map --cref -static
+ LDFLAGS+=-T $(link_script) $(GC_SECTIONS) -Ttext $(LINK_ADDR)
+
+ ifneq ($(DATA_SECTION_ADDR),)