mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-10 06:26:57 +02:00
make: import current stable from upstream Gentoo
The two bugs that we hit in the last upgrade have been fixed. BUG=None TEST=updated make, checked `make --version` TEST=rebuilt x86-alex from source, booted it TEST=`cbuildbot chromiumos-sdk` worked TEST=`FEATURES=test emerge google-breakpad` worked Change-Id: I000c7bf201be050dfbd6c43c1ef792e45b9184ea Reviewed-on: https://gerrit.chromium.org/gerrit/18537 Reviewed-by: David James <davidjames@chromium.org> Tested-by: Mike Frysinger <vapier@chromium.org> Commit-Ready: Mike Frysinger <vapier@chromium.org>
This commit is contained in:
parent
2fb52c2d91
commit
e3e3f95efa
@ -0,0 +1,14 @@
|
||||
http://bugs.gentoo.org/331975
|
||||
https://savannah.gnu.org/bugs/?30723
|
||||
|
||||
--- main.c 2010/07/19 07:10:53 1.243
|
||||
+++ main.c 2010/08/10 07:35:34 1.244
|
||||
@@ -2093,7 +2093,7 @@
|
||||
const char *pv = define_makeflags (1, 1);
|
||||
char *p = alloca (sizeof ("MAKEFLAGS=") + strlen (pv) + 1);
|
||||
sprintf (p, "MAKEFLAGS=%s", pv);
|
||||
- putenv (p);
|
||||
+ putenv (allocated_variable_expand (p));
|
||||
}
|
||||
|
||||
if (ISDB (DB_BASIC))
|
@ -0,0 +1,60 @@
|
||||
http://bugs.gentoo.org/334889
|
||||
https://savannah.gnu.org/bugs/?30612
|
||||
|
||||
revision 1.194
|
||||
date: 2010-08-13 22:50:14 -0400; author: psmith; state: Exp; lines: +9 -6; commitid: 4UaslPqQHZTs5wKu;
|
||||
- Fix Savannah bug #30612: handling of archive references with >1 object
|
||||
|
||||
Index: read.c
|
||||
===================================================================
|
||||
RCS file: /sources/make/make/read.c,v
|
||||
retrieving revision 1.193
|
||||
retrieving revision 1.194
|
||||
diff -u -p -r1.193 -r1.194
|
||||
--- read.c 13 Jul 2010 01:20:42 -0000 1.193
|
||||
+++ read.c 14 Aug 2010 02:50:14 -0000 1.194
|
||||
@@ -3028,7 +3028,7 @@ parse_file_seq (char **stringp, unsigned
|
||||
{
|
||||
/* This looks like the first element in an open archive group.
|
||||
A valid group MUST have ')' as the last character. */
|
||||
- const char *e = p + nlen;
|
||||
+ const char *e = p;
|
||||
do
|
||||
{
|
||||
e = next_token (e);
|
||||
@@ -3084,19 +3084,19 @@ parse_file_seq (char **stringp, unsigned
|
||||
Go to the next item in the string. */
|
||||
if (flags & PARSEFS_NOGLOB)
|
||||
{
|
||||
- NEWELT (concat (2, prefix, tp));
|
||||
+ NEWELT (concat (2, prefix, tmpbuf));
|
||||
continue;
|
||||
}
|
||||
|
||||
/* If we get here we know we're doing glob expansion.
|
||||
TP is a string in tmpbuf. NLEN is no longer used.
|
||||
We may need to do more work: after this NAME will be set. */
|
||||
- name = tp;
|
||||
+ name = tmpbuf;
|
||||
|
||||
/* Expand tilde if applicable. */
|
||||
- if (tp[0] == '~')
|
||||
+ if (tmpbuf[0] == '~')
|
||||
{
|
||||
- tildep = tilde_expand (tp);
|
||||
+ tildep = tilde_expand (tmpbuf);
|
||||
if (tildep != 0)
|
||||
name = tildep;
|
||||
}
|
||||
@@ -3152,7 +3152,10 @@ parse_file_seq (char **stringp, unsigned
|
||||
else
|
||||
{
|
||||
/* We got a chain of items. Attach them. */
|
||||
- (*newp)->next = found;
|
||||
+ if (*newp)
|
||||
+ (*newp)->next = found;
|
||||
+ else
|
||||
+ *newp = found;
|
||||
|
||||
/* Find and set the new end. Massage names if necessary. */
|
||||
while (1)
|
@ -0,0 +1,37 @@
|
||||
--- function.c 2011/04/18 01:25:20 1.121
|
||||
+++ function.c 2011/05/02 12:35:01 1.122
|
||||
@@ -706,7 +706,7 @@
|
||||
const char *word_iterator = argv[0];
|
||||
char buf[20];
|
||||
|
||||
- while (find_next_token (&word_iterator, (unsigned int *) 0) != 0)
|
||||
+ while (find_next_token (&word_iterator, NULL) != 0)
|
||||
++i;
|
||||
|
||||
sprintf (buf, "%d", i);
|
||||
@@ -1133,21 +1133,14 @@
|
||||
|
||||
/* Find the maximum number of words we'll have. */
|
||||
t = argv[0];
|
||||
- wordi = 1;
|
||||
- while (*t != '\0')
|
||||
+ wordi = 0;
|
||||
+ while ((p = find_next_token (&t, NULL)) != 0)
|
||||
{
|
||||
- char c = *(t++);
|
||||
-
|
||||
- if (! isspace ((unsigned char)c))
|
||||
- continue;
|
||||
-
|
||||
+ ++t;
|
||||
++wordi;
|
||||
-
|
||||
- while (isspace ((unsigned char)*t))
|
||||
- ++t;
|
||||
}
|
||||
|
||||
- words = xmalloc (wordi * sizeof (char *));
|
||||
+ words = xmalloc ((wordi == 0 ? 1 : wordi) * sizeof (char *));
|
||||
|
||||
/* Now assign pointers to each string in the array. */
|
||||
t = argv[0];
|
43
sdk_container/src/third_party/portage-stable/sys-devel/make/make-3.82-r1.ebuild
vendored
Normal file
43
sdk_container/src/third_party/portage-stable/sys-devel/make/make-3.82-r1.ebuild
vendored
Normal file
@ -0,0 +1,43 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/sys-devel/make/make-3.82-r1.ebuild,v 1.1 2011/06/07 13:18:10 chainsaw Exp $
|
||||
|
||||
EAPI="2"
|
||||
|
||||
inherit flag-o-matic eutils
|
||||
|
||||
DESCRIPTION="Standard tool to compile source trees"
|
||||
HOMEPAGE="http://www.gnu.org/software/make/make.html"
|
||||
SRC_URI="mirror://gnu//make/${P}.tar.bz2"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
|
||||
IUSE="nls static"
|
||||
|
||||
DEPEND="nls? ( sys-devel/gettext )"
|
||||
RDEPEND="nls? ( virtual/libintl )"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${P}-archives-many-objs.patch #334889
|
||||
epatch "${FILESDIR}"/${P}-MAKEFLAGS-reexec.patch #31975
|
||||
epatch "${FILESDIR}"/${P}-memory-corruption.patch #355907
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
use static && append-ldflags -static
|
||||
econf \
|
||||
--program-prefix=g \
|
||||
$(use_enable nls)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install || die "make install failed"
|
||||
dodoc AUTHORS ChangeLog NEWS README*
|
||||
if [[ ${USERLAND} == "GNU" ]] ; then
|
||||
# we install everywhere as 'gmake' but on GNU systems,
|
||||
# symlink 'make' to 'gmake'
|
||||
dosym gmake /usr/bin/make
|
||||
dosym gmake.1 /usr/share/man/man1/make.1
|
||||
fi
|
||||
}
|
Loading…
Reference in New Issue
Block a user