diff options
author | Martin Schlemmer <azarah@gentoo.org> | 2003-01-20 00:47:29 +0000 |
---|---|---|
committer | Martin Schlemmer <azarah@gentoo.org> | 2003-01-20 00:47:29 +0000 |
commit | 0948f79e4f3676435e934fd2a85c8f2492c55730 (patch) | |
tree | 22d53199de302efaf430f7ce91efa0229713b373 /sys-apps/diffutils | |
parent | added mbox and maildir to IUSE (diff) | |
download | gentoo-2-0948f79e4f3676435e934fd2a85c8f2492c55730.tar.gz gentoo-2-0948f79e4f3676435e934fd2a85c8f2492c55730.tar.bz2 gentoo-2-0948f79e4f3676435e934fd2a85c8f2492c55730.zip |
bug #11728; do not waitpid in sdiff in pipe
Diffstat (limited to 'sys-apps/diffutils')
-rw-r--r-- | sys-apps/diffutils/ChangeLog | 11 | ||||
-rw-r--r-- | sys-apps/diffutils/diffutils-2.8.4-r2.ebuild | 73 | ||||
-rw-r--r-- | sys-apps/diffutils/files/diffutils-2.8.4-sdiff-no-waitpid.patch | 23 | ||||
-rw-r--r-- | sys-apps/diffutils/files/digest-diffutils-2.8.4-r2 | 1 |
4 files changed, 106 insertions, 2 deletions
diff --git a/sys-apps/diffutils/ChangeLog b/sys-apps/diffutils/ChangeLog index 4dc9c252451f..7547f99302b8 100644 --- a/sys-apps/diffutils/ChangeLog +++ b/sys-apps/diffutils/ChangeLog @@ -1,8 +1,15 @@ # ChangeLog for sys-apps/diffutils # Copyright 2002 Gentoo Technologies, Inc.; Distributed under the GPL -# $Header: /var/cvsroot/gentoo-x86/sys-apps/diffutils/ChangeLog,v 1.11 2003/01/18 19:33:12 tuxus Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/diffutils/ChangeLog,v 1.12 2003/01/20 00:47:29 azarah Exp $ - 06 Dec 2002; Rodney Rees <manson@gentoo.org> : changed sparc ~sparc keywords +*diffutils-2.8.4-r2 (20 Jan 2003) + + 20 Jan 2003; Martin Schlemmer <azarah@gentoo.org> diffutils-2.8.4-r2.ebuild : + Removes waitpid() call after pclose() on piped diff stream, closing + bug #11728, thanks to D Wollmann <converter@dalnet-perl.org> + + 06 Dec 2002; Rodney Rees <manson@gentoo.org> : + Changed sparc ~sparc keywords. *diffutils-2.8.4-r1 (14 Oct 2002) diff --git a/sys-apps/diffutils/diffutils-2.8.4-r2.ebuild b/sys-apps/diffutils/diffutils-2.8.4-r2.ebuild new file mode 100644 index 000000000000..f644058c6bd3 --- /dev/null +++ b/sys-apps/diffutils/diffutils-2.8.4-r2.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2002 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/diffutils/diffutils-2.8.4-r2.ebuild,v 1.1 2003/01/20 00:47:29 azarah Exp $ + +IUSE="nls build" + +inherit eutils + +S=${WORKDIR}/${P} +DESCRIPTION="Tools to make diffs and compare files" +SRC_URI="ftp://alpha.gnu.org/gnu/diffutils/${P}.tar.gz" +HOMEPAGE="http://www.gnu.org/software/diffutils/diffutils.html" + +KEYWORDS="~x86 ~ppc ~sparc ~alpha ~mips" +SLOT="0" +LICENSE="GPL-2" + +DEPEND="virtual/glibc + nls? ( sys-devel/gettext ) + !build? ( sys-apps/texinfo )" + +RDEPEND="virtual/glibc" + + +src_unpack() { + unpack ${A} + + cd ${S} + if [ -n "`use build`" ] + then + #disable texinfo building so we can remove the dep + cp Makefile.in Makefile.in.orig + sed -e 's:SUBDIRS = doc:SUBDIRS =:' \ + Makefile.in.orig > Makefile.in + fi + + # Build fails with make -j5 or greater on pentium4. This is because + # the jobs creating the opjects, which depend on paths.h is sheduled + # at the same time paths.h is generated. This patch just fix a small + # typeo that caused this. This closes bug #8934. + # <azarah@gentoo.org> (14 Oct 2002) + cd ${S}; epatch ${FILESDIR}/${P}-Makefile-fix-typeo.patch + + # Removes waitpid() call after pclose() on piped diff stream, closing + # bug #11728, thanks to D Wollmann <converter@dalnet-perl.org> + cd ${S}; epatch ${FILESDIR}/${P}-sdiff-no-waitpid.patch +} + +src_compile() { + local myconf="" + [ -z "`use nls`" ] && myconf="--disable-nls" + + econf --build=${CHOST} \ + ${myconf} || die + + emake || die +} + +src_install() { + make prefix=${D}/usr \ + datadir=${D}/usr/share \ + infodir=${D}/usr/share/info \ + mandir=${D}/usr/share/man \ + install || die + + if [ -z "`use build`" ] + then + dodoc COPYING ChangeLog NEWS README + else + rm -rf ${D}/usr/share/info + fi +} + diff --git a/sys-apps/diffutils/files/diffutils-2.8.4-sdiff-no-waitpid.patch b/sys-apps/diffutils/files/diffutils-2.8.4-sdiff-no-waitpid.patch new file mode 100644 index 000000000000..a41b11648d64 --- /dev/null +++ b/sys-apps/diffutils/files/diffutils-2.8.4-sdiff-no-waitpid.patch @@ -0,0 +1,23 @@ +--- diffutils-2.8.4/src/sdiff.c.orig 2002-06-17 00:55:42.000000000 -0500 ++++ diffutils-2.8.4/src/sdiff.c 2003-01-08 03:04:02.000000000 -0600 +@@ -692,7 +692,7 @@ + ck_fclose (out); + + { +- int wstatus; ++ int wstatus = 0; + int werrno = 0; + + #if ! (HAVE_WORKING_FORK || HAVE_WORKING_VFORK) +@@ -701,11 +701,6 @@ + werrno = errno; + #else + ck_fclose (diffout); +- while (waitpid (diffpid, &wstatus, 0) < 0) +- if (errno == EINTR) +- checksigs (); +- else +- perror_fatal ("waitpid"); + diffpid = 0; + #endif + diff --git a/sys-apps/diffutils/files/digest-diffutils-2.8.4-r2 b/sys-apps/diffutils/files/digest-diffutils-2.8.4-r2 new file mode 100644 index 000000000000..ab1523b47820 --- /dev/null +++ b/sys-apps/diffutils/files/digest-diffutils-2.8.4-r2 @@ -0,0 +1 @@ +MD5 a9c028579abc79ecd6842d60a13abf1d diffutils-2.8.4.tar.gz 828766 |