summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gilbert <floppym@gentoo.org>2020-05-02 14:42:21 -0400
committerMike Gilbert <floppym@gentoo.org>2020-05-02 14:47:06 -0400
commit8150f54880d314e05ea95e167a77fab7af230146 (patch)
tree78b78fcc22de910a8ea12f8c8052fadb025b75d7 /app-shells
parentapp-portage/ufed: x86 stable wrt bug #720388 (diff)
downloadgentoo-8150f54880d314e05ea95e167a77fab7af230146.tar.gz
gentoo-8150f54880d314e05ea95e167a77fab7af230146.tar.bz2
gentoo-8150f54880d314e05ea95e167a77fab7af230146.zip
app-shells/dash: fix build with gcc -fno-common
Closes: https://bugs.gentoo.org/707364 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
Diffstat (limited to 'app-shells')
-rw-r--r--app-shells/dash/dash-0.5.10.2-r1.ebuild5
-rw-r--r--app-shells/dash/files/dash-0.5.20.2-gcc-fno-common.patch38
2 files changed, 42 insertions, 1 deletions
diff --git a/app-shells/dash/dash-0.5.10.2-r1.ebuild b/app-shells/dash/dash-0.5.10.2-r1.ebuild
index f04c97dff904..a552c0f62f00 100644
--- a/app-shells/dash/dash-0.5.10.2-r1.ebuild
+++ b/app-shells/dash/dash-0.5.10.2-r1.ebuild
@@ -19,7 +19,10 @@ RDEPEND="!static? ( libedit? ( dev-libs/libedit ) )"
DEPEND="${RDEPEND}
libedit? ( static? ( dev-libs/libedit[static-libs] ) )"
-PATCHES=( "${FILESDIR}/${PN}-0.5.9.1-format-security.patch" )
+PATCHES=(
+ "${FILESDIR}/dash-0.5.9.1-format-security.patch"
+ "${FILESDIR}/dash-0.5.20.2-gcc-fno-common.patch"
+)
src_prepare() {
default
diff --git a/app-shells/dash/files/dash-0.5.20.2-gcc-fno-common.patch b/app-shells/dash/files/dash-0.5.20.2-gcc-fno-common.patch
new file mode 100644
index 000000000000..08d5ed08a398
--- /dev/null
+++ b/app-shells/dash/files/dash-0.5.20.2-gcc-fno-common.patch
@@ -0,0 +1,38 @@
+From 4459ec7f6cd394b9d01bd9d537b0f04975583dff Mon Sep 17 00:00:00 2001
+From: Jeroen Roovers <jer@gentoo.org>
+Date: Mon, 16 Mar 2020 19:25:00 +0100
+Subject: [PATCH] input: Fix compiling against libedit with -fno-common
+To: dash@vger.kernel.org
+
+With -fno-common, which will be enabled by default in GCC 10, we see
+this error:
+
+ld: input.o:(.bss+0x0): multiple definition of `el';
+histedit.o:(.bss+0x8): first defined here
+
+To fix this, simply remove the definition as it is not needed.
+
+Signed-off-by: Jeroen Roovers <jer@gentoo.org>
+Signed-off-by: Mike Gilbert <floppym@gentoo.org>
+---
+ src/input.c | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/src/input.c b/src/input.c
+index ae0c4c8..e84eca8 100644
+--- a/src/input.c
++++ b/src/input.c
+@@ -67,10 +67,6 @@ MKINIT char basebuf[IBUFSIZ]; /* buffer for top level input file */
+ struct parsefile *parsefile = &basepf; /* current input file */
+ int whichprompt; /* 1 == PS1, 2 == PS2 */
+
+-#ifndef SMALL
+-EditLine *el; /* cookie for editline package */
+-#endif
+-
+ STATIC void pushfile(void);
+ static int preadfd(void);
+ static void setinputfd(int fd, int push);
+--
+2.25.1
+