summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2004-10-10 03:57:29 +0000
committerMike Frysinger <vapier@gentoo.org>2004-10-10 03:57:29 +0000
commit158c29934cae3136df75ab142d172fd5131d01b7 (patch)
tree25a6341bf59b51179009366b8d276135bfd6d9d7 /sys-devel/make
parentstable on ppc64, bug #60525 (Manifest recommit) (diff)
downloadgentoo-2-158c29934cae3136df75ab142d172fd5131d01b7.tar.gz
gentoo-2-158c29934cae3136df75ab142d172fd5131d01b7.tar.bz2
gentoo-2-158c29934cae3136df75ab142d172fd5131d01b7.zip
fix known bugz0r #48765
Diffstat (limited to 'sys-devel/make')
-rw-r--r--sys-devel/make/ChangeLog9
-rw-r--r--sys-devel/make/files/3.80-memory.patch77
-rw-r--r--sys-devel/make/files/digest-make-3.80-r11
-rw-r--r--sys-devel/make/make-3.80-r1.ebuild46
4 files changed, 132 insertions, 1 deletions
diff --git a/sys-devel/make/ChangeLog b/sys-devel/make/ChangeLog
index 5e3915e86ada..859ef4b47e11 100644
--- a/sys-devel/make/ChangeLog
+++ b/sys-devel/make/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-devel/make
# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-devel/make/ChangeLog,v 1.20 2004/07/17 00:32:07 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/make/ChangeLog,v 1.21 2004/10/10 03:57:29 vapier Exp $
+
+*make-3.80-r1 (09 Oct 2004)
+
+ 09 Oct 2004; Mike Frysinger <vapier@gentoo.org> +files/3.80-memory.patch,
+ +make-3.80-r1.ebuild:
+ Add patch for 'virtual memory exhausted' bug. Patch comes from
+ Debian/upstream. Bug by Natanael Copa #48765.
16 Jul 2004; Michael Sterrett <mr_bones_@gentoo.org> make-3.80.ebuild:
gnuconfig_update in src_unpack; use emake; use bz2; use econf; use use_enable;
diff --git a/sys-devel/make/files/3.80-memory.patch b/sys-devel/make/files/3.80-memory.patch
new file mode 100644
index 000000000000..663acf52d77c
--- /dev/null
+++ b/sys-devel/make/files/3.80-memory.patch
@@ -0,0 +1,77 @@
+Index: variable.h
+===================================================================
+RCS file: /cvsroot/make/make/variable.h,v
+retrieving revision 1.24
+diff -u -B -b -r1.24 variable.h
+--- variable.h 8 Aug 2002 00:11:19 -0000 1.24
++++ variable.h 25 Oct 2002 21:37:32 -0000
+@@ -107,6 +107,8 @@
+ extern char *expand_argument PARAMS ((char *str, char *end));
+ extern char *variable_expand_string PARAMS ((char *line, char *string,
+ long length));
++extern void install_variable_buffer PARAMS ((char **bufp, unsigned int *lenp));
++extern void restore_variable_buffer PARAMS ((char *buf, unsigned int len));
+
+ /* function.c */
+ extern int handle_function PARAMS ((char **op, char **stringp));
+Index: expand.c
+===================================================================
+RCS file: /cvsroot/make/make/expand.c,v
+retrieving revision 1.33
+diff -u -B -b -r1.33 expand.c
+--- expand.c 14 Oct 2002 21:54:04 -0000 1.33
++++ expand.c 25 Oct 2002 21:37:32 -0000
+@@ -545,3 +545,28 @@
+
+ return value;
+ }
++
++/* Install a new variable_buffer context, returning the current one for
++ safe-keeping. */
++
++void
++install_variable_buffer (char **bufp, unsigned int *lenp)
++{
++ *bufp = variable_buffer;
++ *lenp = variable_buffer_length;
++
++ variable_buffer = 0;
++ initialize_variable_output ();
++}
++
++/* Restore a previously-saved variable_buffer setting (free the current one).
++ */
++
++void
++restore_variable_buffer (char *buf, unsigned int len)
++{
++ free (variable_buffer);
++
++ variable_buffer = buf;
++ variable_buffer_length = len;
++}
+Index: function.c
+===================================================================
+RCS file: /cvsroot/make/make/function.c,v
+retrieving revision 1.71
+diff -u -B -b -r1.71 function.c
+--- function.c 14 Oct 2002 21:54:04 -0000 1.71
++++ function.c 25 Oct 2002 21:37:32 -0000
+@@ -1196,7 +1196,17 @@
+ static char *
+ func_eval (char *o, char **argv, const char *funcname)
+ {
++ char *buf;
++ unsigned int len;
++
++ /* Eval the buffer. Pop the current variable buffer setting so that the
++ eval'd code can use its own without conflicting. */
++
++ install_variable_buffer (&buf, &len);
++
+ eval_buffer (argv[0]);
++
++ restore_variable_buffer (buf, len);
+
+ return o;
+ } \ No newline at end of file
diff --git a/sys-devel/make/files/digest-make-3.80-r1 b/sys-devel/make/files/digest-make-3.80-r1
new file mode 100644
index 000000000000..bdd63b418ee6
--- /dev/null
+++ b/sys-devel/make/files/digest-make-3.80-r1
@@ -0,0 +1 @@
+MD5 0bbd1df101bc0294d440471e50feca71 make-3.80.tar.bz2 920645
diff --git a/sys-devel/make/make-3.80-r1.ebuild b/sys-devel/make/make-3.80-r1.ebuild
new file mode 100644
index 000000000000..65c2bb31e0d6
--- /dev/null
+++ b/sys-devel/make/make-3.80-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-devel/make/make-3.80-r1.ebuild,v 1.1 2004/10/10 03:57:29 vapier Exp $
+
+inherit gnuconfig eutils flag-o-matic
+
+DESCRIPTION="Standard tool to compile source trees"
+HOMEPAGE="http://www.gnu.org/software/make/make.html"
+SRC_URI="ftp://ftp.gnu.org/gnu/make/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 sparc s390 x86"
+IUSE="nls static build uclibc"
+
+DEPEND="virtual/libc
+ nls? ( sys-devel/gettext )"
+RDEPEND="virtual/libc"
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ epatch ${FILESDIR}/${PV}-memory.patch
+ # Detect mips and uclibc systems properly
+ gnuconfig_update
+}
+
+src_compile() {
+ use static && append-ldflags -static
+ econf $(use_enable nls) || die
+ emake || die
+}
+
+src_install() {
+ if use build
+ then
+ dobin make || die
+ else
+ make DESTDIR="${D}" install || die "make install failed"
+
+ fperms 0755 /usr/bin/make
+ dosym make /usr/bin/gmake
+
+ dodoc AUTHORS ChangeLog NEWS README*
+ fi
+}