summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wendler <polynomial-c@gentoo.org>2014-04-25 18:41:07 +0000
committerLars Wendler <polynomial-c@gentoo.org>2014-04-25 18:41:07 +0000
commite5294f706a224c120f08b621f7554ea2780ca2e8 (patch)
tree30db4eeb2b3c9c2a67bba5100e4f0fe6bd7128d5 /sys-apps/gawk
parentDrop old (diff)
downloadgentoo-2-e5294f706a224c120f08b621f7554ea2780ca2e8.tar.gz
gentoo-2-e5294f706a224c120f08b621f7554ea2780ca2e8.tar.bz2
gentoo-2-e5294f706a224c120f08b621f7554ea2780ca2e8.zip
Add sigpipe fix from upstream so makewhatis works again (bug #507340). Removed old
(Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key 0x981CA6FC)
Diffstat (limited to 'sys-apps/gawk')
-rw-r--r--sys-apps/gawk/ChangeLog9
-rw-r--r--sys-apps/gawk/files/gawk-4.1.1-sigpipe.patch34
-rw-r--r--sys-apps/gawk/gawk-4.1.1-r1.ebuild (renamed from sys-apps/gawk/gawk-4.1.1.ebuild)5
3 files changed, 45 insertions, 3 deletions
diff --git a/sys-apps/gawk/ChangeLog b/sys-apps/gawk/ChangeLog
index c05975d4a17c..05dd9e65f8e3 100644
--- a/sys-apps/gawk/ChangeLog
+++ b/sys-apps/gawk/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-apps/gawk
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/gawk/ChangeLog,v 1.178 2014/04/10 08:42:37 polynomial-c Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/gawk/ChangeLog,v 1.179 2014/04/25 18:41:07 polynomial-c Exp $
+
+*gawk-4.1.1-r1 (25 Apr 2014)
+
+ 25 Apr 2014; Lars Wendler <polynomial-c@gentoo.org> -gawk-4.1.1.ebuild,
+ +gawk-4.1.1-r1.ebuild, +files/gawk-4.1.1-sigpipe.patch:
+ Add sigpipe fix from upstream so makewhatis works again (bug #507340).
+ Removed old.
*gawk-4.1.1 (10 Apr 2014)
diff --git a/sys-apps/gawk/files/gawk-4.1.1-sigpipe.patch b/sys-apps/gawk/files/gawk-4.1.1-sigpipe.patch
new file mode 100644
index 000000000000..a64e116f60ce
--- /dev/null
+++ b/sys-apps/gawk/files/gawk-4.1.1-sigpipe.patch
@@ -0,0 +1,34 @@
+From 19564e696aca506a14ceb4a08aa2b7c7988a2473 Mon Sep 17 00:00:00 2001
+From: Arnold D. Robbins <arnold@skeeve.com>
+Date: Fri, 25 Apr 2014 10:21:43 +0000
+Subject: In forked children, set SIGPIPE to SIG_DFL.
+
+---
+* io.c (two_way_open): In forked child, reset SIGPIPE to SIG_DFL.
+Fixes problems with "broken pipe" errors from child processes,
+restoring 4.1.0 and earlier behavior. Thanks to Daryl F
+<wyatt@prairieturtle.ca> for the report.
+(gawk_popen): Ditto.
+
+diff --git a/io.c b/io.c
+index a6e786f..2bb8f28 100644
+--- a/io.c
++++ b/io.c
+@@ -2078,6 +2078,7 @@ use_pipes:
+ || close(ctop[0]) == -1 || close(ctop[1]) == -1)
+ fatal(_("close of pipe failed (%s)"), strerror(errno));
+ /* stderr does NOT get dup'ed onto child's stdout */
++ signal(SIGPIPE, SIG_DFL);
+ execl("/bin/sh", "sh", "-c", str, NULL);
+ _exit(errno == ENOENT ? 127 : 126);
+ }
+@@ -2271,6 +2272,7 @@ gawk_popen(const char *cmd, struct redirect *rp)
+ fatal(_("moving pipe to stdout in child failed (dup: %s)"), strerror(errno));
+ if (close(p[0]) == -1 || close(p[1]) == -1)
+ fatal(_("close of pipe failed (%s)"), strerror(errno));
++ signal(SIGPIPE, SIG_DFL);
+ execl("/bin/sh", "sh", "-c", cmd, NULL);
+ _exit(errno == ENOENT ? 127 : 126);
+ }
+--
+cgit v0.9.0.2
diff --git a/sys-apps/gawk/gawk-4.1.1.ebuild b/sys-apps/gawk/gawk-4.1.1-r1.ebuild
index cb14b63bd530..a16616fe1bc6 100644
--- a/sys-apps/gawk/gawk-4.1.1.ebuild
+++ b/sys-apps/gawk/gawk-4.1.1-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/gawk/gawk-4.1.1.ebuild,v 1.1 2014/04/10 08:42:37 polynomial-c Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/gawk/gawk-4.1.1-r1.ebuild,v 1.1 2014/04/25 18:41:07 polynomial-c Exp $
EAPI="4"
@@ -22,7 +22,8 @@ DEPEND="${RDEPEND}
src_prepare() {
EPATCH_OPTS="-Z" \
- epatch "${FILESDIR}"/${PN}-4.1.1-sandbox_issue.patch
+ epatch "${FILESDIR}"/${P}-sandbox_issue.patch
+ epatch "${FILESDIR}"/${P}-sigpipe.patch #507340
# use symlinks rather than hardlinks, and disable version links
sed -i \