[openwrt/openwrt] uboot-kirkwood: Fix build with GCC-10 as host compiler

LEDE Commits lede-commits at lists.infradead.org
Wed Sep 15 06:35:27 PDT 2021


hauke pushed a commit to openwrt/openwrt.git, branch openwrt-19.07:
https://git.openwrt.org/d059ce28f50aaae7a5b25443e3d50c38b341ef79

commit d059ce28f50aaae7a5b25443e3d50c38b341ef79
Author: Sven Eckelmann <sven at narfation.org>
AuthorDate: Sat Sep 11 21:03:34 2021 +0200

    uboot-kirkwood: Fix build with GCC-10 as host compiler
    
    The package uses the host compiler to build the dtc binary. With gcc-10,
    the option -fno-common is now the default behavior. Thus multiple
    definitions of the same variable are now forbidden and results in following
    error during linking:
    
      HOSTLD  scripts/dtc/dtc
      /usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss+0x10): multiple definition of `yylloc'; scripts/dtc/dtc-lexer.lex.o:(.bss+0x0): first defined here
      collect2: error: ld returned 1 exit status
    
    The easiest workaround is to add the upstream commit 018921ee79d3 ("Remove
    redundant YYLOC global declaration").
    
    Signed-off-by: Sven Eckelmann <sven at narfation.org>
---
 .../patches/002-yylloc-redefinition.patch          | 23 ++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/package/boot/uboot-kirkwood/patches/002-yylloc-redefinition.patch b/package/boot/uboot-kirkwood/patches/002-yylloc-redefinition.patch
new file mode 100644
index 0000000000..134d58439e
--- /dev/null
+++ b/package/boot/uboot-kirkwood/patches/002-yylloc-redefinition.patch
@@ -0,0 +1,23 @@
+From 018921ee79d3f30893614b3b2b63b588d8544f73 Mon Sep 17 00:00:00 2001
+From: Peter Robinson <pbrobinson at gmail.com>
+Date: Thu, 30 Jan 2020 09:37:15 +0000
+Subject: [PATCH] Remove redundant YYLOC global declaration
+
+Same as the upstream fix for building dtc with gcc 10.
+
+Signed-off-by: Peter Robinson <pbrobinson at gmail.com>
+Origin: upstream, https://github.com/u-boot/u-boot/commit/018921ee79d3f30893614b3b2b63b588d8544f73
+---
+ scripts/dtc/dtc-lexer.l | 1 -
+ 1 file changed, 1 deletion(-)
+
+--- a/scripts/dtc/dtc-lexer.l
++++ b/scripts/dtc/dtc-lexer.l
+@@ -38,7 +38,6 @@ LINECOMMENT	"//".*\n
+ #include "srcpos.h"
+ #include "dtc-parser.tab.h"
+ 
+-YYLTYPE yylloc;
+ extern bool treesource_error;
+ 
+ /* CAUTION: this will stop working if we ever use yyless() or yyunput() */



More information about the lede-commits mailing list