diff mbox series

package/elf2flt: fix build with Binutils >= 2.31

Message ID 1531845102-20058-1-git-send-email-romain.naour@smile.fr
State Accepted
Commit 846c6a3b385e78be419ca27caeb88014e0324f56
Headers show
Series package/elf2flt: fix build with Binutils >= 2.31 | expand

Commit Message

Romain Naour July 17, 2018, 4:31 p.m. UTC
Binutils added diagnostics.h to bfd.h [1], so elf2flt must create a
symlink for this header.

Fixes:
https://gitlab.com/free-electrons/toolchains-builder/-/jobs/82284139

[1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=95da9854466ada2572b42f5528711a06a2d42db1

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

---
Note: for Binutils < 2.31 elf2flt create a broken symlink diagnostics.h
in bfd-headers:
diagnostics.h -> output/build/host-binutils-2.30/include/diagnostics.h

We can add a HOST_ELF2FLT_POST_INSTALL_HOOKS to remove it if necessary.
---
 ...002-Makefile-fix-build-with-Binutils-2.31.patch | 34 ++++++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 package/elf2flt/0002-Makefile-fix-build-with-Binutils-2.31.patch

Comments

Peter Korsgaard July 17, 2018, 7:57 p.m. UTC | #1
>>>>> "Romain" == Romain Naour <romain.naour@smile.fr> writes:

 > Binutils added diagnostics.h to bfd.h [1], so elf2flt must create a
 > symlink for this header.

 > Fixes:
 > https://gitlab.com/free-electrons/toolchains-builder/-/jobs/82284139

 > [1]
 > https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=95da9854466ada2572b42f5528711a06a2d42db1

 > Signed-off-by: Romain Naour <romain.naour@smile.fr>
 > Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

 > ---
 > Note: for Binutils < 2.31 elf2flt create a broken symlink diagnostics.h
 > in bfd-headers:
 > diagnostics.h -> output/build/host-binutils-2.30/include/diagnostics.h

 > We can add a HOST_ELF2FLT_POST_INSTALL_HOOKS to remove it if necessary.

Committed, thanks.
Thomas Petazzoni July 18, 2018, 11:14 a.m. UTC | #2
Hello Romain,

On Tue, 17 Jul 2018 18:31:42 +0200, Romain Naour wrote:
> Binutils added diagnostics.h to bfd.h [1], so elf2flt must create a
> symlink for this header.
> 
> Fixes:
> https://gitlab.com/free-electrons/toolchains-builder/-/jobs/82284139
> 
> [1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=95da9854466ada2572b42f5528711a06a2d42db1
> 
> Signed-off-by: Romain Naour <romain.naour@smile.fr>
> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

Thanks for this fix. After it was applied by Peter, I used it for the
Bootlin toolchains, and I was able to build the ARMv7-M and m68k
Coldfire toolchains with binutils 2.31. They are now online on
toolchains.bootlin.com.

The only remaining toolchain not building with binutils 2.31 is the
xtensa toolchain.

Thanks!

Thomas
Romain Naour July 18, 2018, 11:35 a.m. UTC | #3
Hi Thomas,

Le 18/07/2018 à 13:14, Thomas Petazzoni a écrit :
> Hello Romain,
> 
> On Tue, 17 Jul 2018 18:31:42 +0200, Romain Naour wrote:
>> Binutils added diagnostics.h to bfd.h [1], so elf2flt must create a
>> symlink for this header.
>>
>> Fixes:
>> https://gitlab.com/free-electrons/toolchains-builder/-/jobs/82284139
>>
>> [1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=95da9854466ada2572b42f5528711a06a2d42db1
>>
>> Signed-off-by: Romain Naour <romain.naour@smile.fr>
>> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> 
> Thanks for this fix. After it was applied by Peter, I used it for the
> Bootlin toolchains, and I was able to build the ARMv7-M and m68k
> Coldfire toolchains with binutils 2.31. They are now online on
> toolchains.bootlin.com.

Great :)

> 
> The only remaining toolchain not building with binutils 2.31 is the
> xtensa toolchain.

Yes I know, this require more time to find a fix.
Maybe Max Filippov can help us (once again :) )

Best regards,
Romain

> 
> Thanks!
> 
> Thomas
>
diff mbox series

Patch

diff --git a/package/elf2flt/0002-Makefile-fix-build-with-Binutils-2.31.patch b/package/elf2flt/0002-Makefile-fix-build-with-Binutils-2.31.patch
new file mode 100644
index 0000000..8255825
--- /dev/null
+++ b/package/elf2flt/0002-Makefile-fix-build-with-Binutils-2.31.patch
@@ -0,0 +1,34 @@ 
+From faf1a1646093fbc5ed279bae1c7250c7dfea56f8 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@smile.fr>
+Date: Tue, 17 Jul 2018 16:36:16 +0200
+Subject: [PATCH] Makefile: fix build with Binutils 2.31
+
+Binutils added diagnostics.h to bfd.h [1], so elf2flt must create a symlink
+for this header.
+
+Fixes:
+https://gitlab.com/free-electrons/toolchains-builder/-/jobs/82284139
+
+[1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=95da9854466ada2572b42f5528711a06a2d42db1
+
+Signed-off-by: Romain Naour <romain.naour@smile.fr>
+---
+ Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index cfad06c..164e306 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -127,7 +127,7 @@ bfd-headers/.stamp:
+ 	rm -rf bfd-headers
+ 	mkdir bfd-headers
+ 	ln -sf $(BFD_INCLUDE_DIR)/bfd.h bfd-headers/bfd.h
+-	for f in ansidecl filenames hashtab libiberty symcat; do \
++	for f in ansidecl diagnostics filenames hashtab libiberty symcat; do \
+ 		ln -sf $(BINUTILS_INCLUDE_DIR)/$$f.h bfd-headers/$$f.h || exit 1; \
+ 	done
+ 	ln -sf $(BINUTILS_INCLUDE_DIR)/elf bfd-headers/elf
+-- 
+2.7.4
+