Merge pull request #2132 from freifunk-gluon/v2019.1.x-openwrt-bump-build-fix
[2019.1.x] update openwrt, routing packages and fix build with GCC10
This commit is contained in:
commit
c8d708e585
4
modules
4
modules
@ -2,7 +2,7 @@ GLUON_FEEDS='packages routing luci gluon'
|
||||
|
||||
OPENWRT_REPO=https://git.openwrt.org/openwrt/openwrt.git
|
||||
OPENWRT_BRANCH=openwrt-18.06
|
||||
OPENWRT_COMMIT=0c25ece262e8ec44d7414d472afa8d8e5858edfa
|
||||
OPENWRT_COMMIT=6d94a6eca41da34f4df845d9876be2acfbf5881f
|
||||
|
||||
PACKAGES_PACKAGES_REPO=https://github.com/openwrt/packages.git
|
||||
PACKAGES_PACKAGES_BRANCH=openwrt-18.06
|
||||
@ -10,7 +10,7 @@ PACKAGES_PACKAGES_COMMIT=b2978d83db29693c00ed44547ab2967a764ef899
|
||||
|
||||
PACKAGES_ROUTING_REPO=https://github.com/openwrt-routing/packages.git
|
||||
PACKAGES_ROUTING_BRANCH=openwrt-18.06
|
||||
PACKAGES_ROUTING_COMMIT=1f4d94422d4a229bf267f9df3653ecb4043ac616
|
||||
PACKAGES_ROUTING_COMMIT=3862f61ee8d74783064d6b59f693e9dad1ea13fd
|
||||
|
||||
PACKAGES_LUCI_REPO=https://github.com/openwrt/luci.git
|
||||
PACKAGES_LUCI_BRANCH=openwrt-18.06
|
||||
|
@ -0,0 +1,130 @@
|
||||
From: Ken Wong <xinxijishuwyq@gmail.com>
|
||||
Date: Sat, 16 May 2020 13:30:42 +0800
|
||||
Subject: perl: fix build failure in GCC10
|
||||
|
||||
The perl Configure file was matching GCC 10 against "1*" and treating it
|
||||
as GCC 1, causing ABI breakage and segfaults.
|
||||
|
||||
Cherry-pick the upstream patch which fixes it to check against (e.g)
|
||||
"1.*" instead, which will make it work for hundreds more GCC versions
|
||||
to come.
|
||||
|
||||
https://github.com/Perl/perl5/commit/6bd6308fcea3541
|
||||
"Adapt Configure to GCC version 10"
|
||||
|
||||
Also includes the previous commit just adding GCC 8 and 9 to one case:
|
||||
https://github.com/Perl/perl5/commit/ae195500577d707
|
||||
"Add gcc-8 and gcc-9 for FORTIFY_SOURCE"
|
||||
|
||||
Signed-off-by: Ken Wong <xinxijishuwyq@gmail.com>
|
||||
(cherry picked from commit 65578a43f0d12c02888df00b6fdc90c73a02875c)
|
||||
|
||||
diff --git a/lang/perl/patches/999-fix-build-failure-against-gcc-10.patch b/lang/perl/patches/999-fix-build-failure-against-gcc-10.patch
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..55d9a0e8ae15b400294b6a20b60155cecd26db0b
|
||||
--- /dev/null
|
||||
+++ b/lang/perl/patches/999-fix-build-failure-against-gcc-10.patch
|
||||
@@ -0,0 +1,103 @@
|
||||
+From 6bd6308fcea3541e505651bf8e8127a4a03d22cd Mon Sep 17 00:00:00 2001
|
||||
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
+Date: Tue, 12 Nov 2019 09:19:18 +0100
|
||||
+Subject: [PATCH] Adapt Configure to GCC version 10
|
||||
+
|
||||
+I got a notice from Jeff Law <law@redhat.com>:
|
||||
+
|
||||
+ Your particular package fails its testsuite. This was ultimately
|
||||
+ tracked down to a Configure problem. The perl configure script treated
|
||||
+ gcc-10 as gcc-1 and turned on -fpcc-struct-return. This is an ABI
|
||||
+ changing flag and caused Perl to not be able to interact properly with
|
||||
+ the dbm libraries on the system leading to a segfault.
|
||||
+
|
||||
+His proposed patch corrected only this one instance of the version
|
||||
+mismatch. Reading the Configure script revealed more issues. This
|
||||
+patch fixes all of them I found.
|
||||
+
|
||||
+---
|
||||
+ Configure | 14 +++++++-------
|
||||
+ cflags.SH | 2 +-
|
||||
+ 2 files changed, 8 insertions(+), 8 deletions(-)
|
||||
+
|
||||
+diff --git a/Configure b/Configure
|
||||
+index fad1c9f2b1..706c0b64ed 100755
|
||||
+--- a/Configure
|
||||
++++ b/Configure
|
||||
+@@ -4701,7 +4701,7 @@ else
|
||||
+ fi
|
||||
+ $rm -f try try.*
|
||||
+ case "$gccversion" in
|
||||
+-1*) cpp=`./loc gcc-cpp $cpp $pth` ;;
|
||||
++1.*) cpp=`./loc gcc-cpp $cpp $pth` ;;
|
||||
+ esac
|
||||
+ case "$gccversion" in
|
||||
+ '') gccosandvers='' ;;
|
||||
+@@ -4741,7 +4741,7 @@ esac
|
||||
+ # gcc 3.* complain about adding -Idirectories that they already know about,
|
||||
+ # so we will take those off from locincpth.
|
||||
+ case "$gccversion" in
|
||||
+-3*)
|
||||
++3.*)
|
||||
+ echo "main(){}">try.c
|
||||
+ for incdir in $locincpth; do
|
||||
+ warn=`$cc $ccflags -I$incdir -c try.c 2>&1 | \
|
||||
+@@ -5467,13 +5467,13 @@ fi
|
||||
+ case "$hint" in
|
||||
+ default|recommended)
|
||||
+ case "$gccversion" in
|
||||
+- 1*) dflt="$dflt -fpcc-struct-return" ;;
|
||||
++ 1.*) dflt="$dflt -fpcc-struct-return" ;;
|
||||
+ esac
|
||||
+ case "$optimize:$DEBUGGING" in
|
||||
+ *-g*:old) dflt="$dflt -DDEBUGGING";;
|
||||
+ esac
|
||||
+ case "$gccversion" in
|
||||
+- 2*) if $test -d /etc/conf/kconfig.d &&
|
||||
++ 2.*) if $test -d /etc/conf/kconfig.d &&
|
||||
+ $contains _POSIX_VERSION $usrinc/sys/unistd.h >/dev/null 2>&1
|
||||
+ then
|
||||
+ # Interactive Systems (ISC) POSIX mode.
|
||||
+@@ -5482,7 +5482,7 @@ default|recommended)
|
||||
+ ;;
|
||||
+ esac
|
||||
+ case "$gccversion" in
|
||||
+- 1*) ;;
|
||||
++ 1.*) ;;
|
||||
+ 2.[0-8]*) ;;
|
||||
+ ?*) set strict-aliasing -fno-strict-aliasing
|
||||
+ eval $checkccflag
|
||||
+@@ -5600,7 +5600,7 @@ case "$cppflags" in
|
||||
+ ;;
|
||||
+ esac
|
||||
+ case "$gccversion" in
|
||||
+-1*) cppflags="$cppflags -D__GNUC__"
|
||||
++1.*) cppflags="$cppflags -D__GNUC__"
|
||||
+ esac
|
||||
+ case "$mips_type" in
|
||||
+ '');;
|
||||
+@@ -23103,7 +23103,7 @@ fi
|
||||
+
|
||||
+ : add -D_FORTIFY_SOURCE if feasible and not already there
|
||||
+ case "$gccversion" in
|
||||
+-[4567].*) case "$optimize$ccflags" in
|
||||
++[456789].*|[1-9][0-9]*) case "$optimize$ccflags" in
|
||||
+ *-O*) case "$ccflags$cppsymbols" in
|
||||
+ *_FORTIFY_SOURCE=*) # Don't add it again.
|
||||
+ echo "You seem to have -D_FORTIFY_SOURCE already, not adding it." >&4
|
||||
+diff --git a/cflags.SH b/cflags.SH
|
||||
+index e60742fed1..f1bcd6c38e 100755
|
||||
+--- a/cflags.SH
|
||||
++++ b/cflags.SH
|
||||
+@@ -156,7 +156,7 @@ esac
|
||||
+
|
||||
+ case "$gccversion" in
|
||||
+ '') ;;
|
||||
+-[12]*) ;; # gcc versions 1 (gasp!) and 2 are not good for this.
|
||||
++[12].*) ;; # gcc versions 1 (gasp!) and 2 are not good for this.
|
||||
+ Intel*) ;; # # Is that you, Intel C++?
|
||||
+ #
|
||||
+ # NOTE 1: the -std=c89 without -pedantic is a bit pointless.
|
||||
+--
|
||||
+2.17.1
|
||||
+
|
@ -8,7 +8,7 @@ or batman-adv-legacy module, depending on the configured routing
|
||||
algorithm in UCI.
|
||||
|
||||
diff --git a/batman-adv/Makefile b/batman-adv/Makefile
|
||||
index 75bf5327c73a388f136b713c107eae0ec82771b8..4b595de790d7b61c8e5151449b8764a539cdae94 100644
|
||||
index b4f7768464127bb5f1bc7ed9416d54747fdaa0be..765e6781d17e53afffcc35368351cba9271e6cb3 100644
|
||||
--- a/batman-adv/Makefile
|
||||
+++ b/batman-adv/Makefile
|
||||
@@ -30,7 +30,6 @@ define KernelPackage/batman-adv
|
||||
|
Loading…
Reference in New Issue
Block a user