From c7dc706efaceb4816df5eedb45cd7c79ef1c3ef4 Mon Sep 17 00:00:00 2001 From: Mike Gilbert Date: Sun, 29 Nov 2015 15:03:23 -0500 Subject: [PATCH] app-shells/ksh: Fix build with GCC 5 Bug: https://bugs.gentoo.org/555670 Package-Manager: portage-2.2.26_p3 --- app-shells/ksh/files/cpp.patch | 24 ++++++++++++++++++++++++ app-shells/ksh/ksh-93.20140625.ebuild | 3 ++- 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 app-shells/ksh/files/cpp.patch diff --git a/app-shells/ksh/files/cpp.patch b/app-shells/ksh/files/cpp.patch new file mode 100644 index 0000000000000..7075bcfc1f7ff --- /dev/null +++ b/app-shells/ksh/files/cpp.patch @@ -0,0 +1,24 @@ +iffe depends on cc -E not inserting newlines between tokens + +https://build.opensuse.org/package/view_file/home:Andreas_Schwab:Factory/ksh/cpp.patch?expand=1 + +--- a/src/cmd/INIT/iffe.sh ++++ b/src/cmd/INIT/iffe.sh +@@ -3427,7 +3427,7 @@ + (eval "$src") <&$nullin || e=1 + ;; + mac*|nomac*) +- if compile $cc -E $tmp.c <&$nullin >$tmp.i ++ if compile $cc -E -P $tmp.c <&$nullin >$tmp.i + then sed -e '/<<[ ]*".*"[ ]*>>/!d' -e 's/<<[ ]*"//g' -e 's/"[ ]*>>//g' $tmp.i + else e=1 + fi +@@ -3718,7 +3718,7 @@ + <<\"#define $v\">> $v <<\"/* native $v */\">> + <<\"#endif\">> + #endif" > $tmp.c +- if compile $cc -E $tmp.c <&$nullin >$tmp.i ++ if compile $cc -E -P $tmp.c <&$nullin >$tmp.i + then sed -e '/<<[ ]*".*"[ ]*>>/!d' -e 's/<<[ ]*"//g' -e 's/"[ ]*>>//g' $tmp.i > $tmp.t + if test -s $tmp.t + then success diff --git a/app-shells/ksh/ksh-93.20140625.ebuild b/app-shells/ksh/ksh-93.20140625.ebuild index 5276f82cf8560..020d6b97cab69 100644 --- a/app-shells/ksh/ksh-93.20140625.ebuild +++ b/app-shells/ksh/ksh-93.20140625.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2014 Gentoo Foundation +# Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ @@ -29,6 +29,7 @@ src_prepare() { bin/package src/cmd/INIT/package.sh || die epatch "${FILESDIR}"/${PN}-prefix.patch + epatch "${FILESDIR}"/cpp.patch eprefixify src/cmd/ksh93/data/msg.c }