Skip to content

Commit

Permalink
at91bootstrap: Fix compile with binutils 2.36
Browse files Browse the repository at this point in the history
This fixes a build problem seen after binutils 2.36 is used by default.

Fixes: 3f41153 ("toolchain/binutils: switch to version 2.36.1 by default")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
  • Loading branch information
hauke committed Aug 20, 2021
1 parent a1034af commit fcfeb47
Showing 1 changed file with 38 additions and 0 deletions.
@@ -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),)

0 comments on commit fcfeb47

Please sign in to comment.