summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2007-07-07 06:34:10 +0000
committerMike Frysinger <vapier@gentoo.org>2007-07-07 06:34:10 +0000
commit88a4d61197e939b13f69854731f1330f206dae84 (patch)
tree6135d596cd12063228a6f5c026e93f1951a7e0f1 /sys-devel
parentold (diff)
downloadgentoo-2-88a4d61197e939b13f69854731f1330f206dae84.tar.gz
gentoo-2-88a4d61197e939b13f69854731f1330f206dae84.tar.bz2
gentoo-2-88a4d61197e939b13f69854731f1330f206dae84.zip
Fix from upstream for signed division bug #184200 by Andrew Gaydenko.
(Portage version: 2.1.3_rc6)
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/m4/ChangeLog8
-rw-r--r--sys-devel/m4/files/digest-m4-1.4.9-r13
-rw-r--r--sys-devel/m4/files/m4-1.4.9-signed-division.patch28
-rw-r--r--sys-devel/m4/m4-1.4.9-r1.ebuild47
4 files changed, 85 insertions, 1 deletions
diff --git a/sys-devel/m4/ChangeLog b/sys-devel/m4/ChangeLog
index 13467f338953..b31d96baeed3 100644
--- a/sys-devel/m4/ChangeLog
+++ b/sys-devel/m4/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sys-devel/m4
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/m4/ChangeLog,v 1.90 2007/06/27 06:09:10 corsair Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/m4/ChangeLog,v 1.91 2007/07/07 06:34:10 vapier Exp $
+
+*m4-1.4.9-r1 (07 Jul 2007)
+
+ 07 Jul 2007; Mike Frysinger <vapier@gentoo.org>
+ +files/m4-1.4.9-signed-division.patch, +m4-1.4.9-r1.ebuild:
+ Fix from upstream for signed division bug #184200 by Andrew Gaydenko.
27 Jun 2007; Markus Rothe <corsair@gentoo.org> m4-1.4.9.ebuild:
Stable on ppc64; bug #183253
diff --git a/sys-devel/m4/files/digest-m4-1.4.9-r1 b/sys-devel/m4/files/digest-m4-1.4.9-r1
new file mode 100644
index 000000000000..f065ae6d7817
--- /dev/null
+++ b/sys-devel/m4/files/digest-m4-1.4.9-r1
@@ -0,0 +1,3 @@
+MD5 bcfaf47194491a7a8b8d3c2811570b93 m4-1.4.9.tar.bz2 609666
+RMD160 5a9b3d5a607f36c02aa818d5ded5b151f2b182e0 m4-1.4.9.tar.bz2 609666
+SHA256 a8e29386374ba0eacbd7b339b97f169603d63a736bd87eee85ed2771ed7c3d29 m4-1.4.9.tar.bz2 609666
diff --git a/sys-devel/m4/files/m4-1.4.9-signed-division.patch b/sys-devel/m4/files/m4-1.4.9-signed-division.patch
new file mode 100644
index 000000000000..4725701b6860
--- /dev/null
+++ b/sys-devel/m4/files/m4-1.4.9-signed-division.patch
@@ -0,0 +1,28 @@
+http://bugs.gentoo.org/184200
+
+2007-04-25 Eric Blake <[EMAIL PROTECTED]>
+
+ Fix negative division within eval, regression of 2007-01-06.
+ * src/eval.c (mult_term): Fix it.
+
+Index: src/eval.c
+===================================================================
+RCS file: /cvsroot/m4/m4/src/Attic/eval.c,v
+retrieving revision 1.1.1.1.2.9
+retrieving revision 1.1.1.1.2.10
+diff -u -p -r1.1.1.1.2.9 -r1.1.1.1.2.10
+--- src/eval.c 9 Jan 2007 16:12:43 -0000 1.1.1.1.2.9
++++ src/eval.c 25 Apr 2007 14:04:13 -0000 1.1.1.1.2.10
+@@ -718,10 +718,10 @@ mult_term (eval_token et, int32_t *v1)
+ if (v2 == 0)
+ return DIVIDE_ZERO;
+ else if (v2 == -1)
+- /* Avoid the x86 SIGFPE on INT_MIN / -1. */
++ /* Avoid overflow, and the x86 SIGFPE on INT_MIN / -1. */
+ *v1 = (int32_t) -(uint32_t) *v1;
+ else
+- *v1 = (int32_t) ((uint32_t) *v1 / (uint32_t) v2);
++ *v1 /= v2;
+ break;
+
+ case MODULO:
diff --git a/sys-devel/m4/m4-1.4.9-r1.ebuild b/sys-devel/m4/m4-1.4.9-r1.ebuild
new file mode 100644
index 000000000000..8b06d6234ffd
--- /dev/null
+++ b/sys-devel/m4/m4-1.4.9-r1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/m4/m4-1.4.9-r1.ebuild,v 1.1 2007/07/07 06:34:10 vapier Exp $
+
+inherit eutils
+
+DESCRIPTION="GNU macro processor"
+HOMEPAGE="http://www.gnu.org/software/m4/m4.html"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.bz2
+ ftp://ftp.seindal.dk/gnu/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd"
+IUSE="examples nls"
+
+# remember: cannot dep on autoconf since it needs us
+DEPEND="nls? ( sys-devel/gettext )"
+RDEPEND=""
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-signed-division.patch #184200
+}
+
+src_compile() {
+ local myconf=""
+ [[ ${USERLAND} != "GNU" ]] && myconf="--program-prefix=g"
+ econf \
+ $(use_enable nls) \
+ --enable-changeword \
+ ${myconf} \
+ || die
+ emake || die
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ dodoc BACKLOG ChangeLog NEWS README* THANKS TODO
+ if use examples ; then
+ docinto examples
+ dodoc examples/*
+ rm -f "${D}"/usr/share/doc/${PF}/examples/Makefile*
+ fi
+ rm -f "${D}"/usr/lib/charset.alias #172864
+}