summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--abs/core/make/PKGBUILD17
-rw-r--r--abs/core/make/make-3.82-bug30612.patch91
-rw-r--r--abs/core/make/make-3.82-bug30723.patch12
-rw-r--r--abs/core/make/make-3.82-dont-prune-intermediate.patch57
-rw-r--r--abs/core/make/make-3.82-expensive_glob.patch116
-rw-r--r--abs/core/make/make-3.82-makeflags.patch36
-rw-r--r--abs/core/make/make-3.82-sort-blank.patch17
-rw-r--r--abs/core/make/make.install20
8 files changed, 8 insertions, 358 deletions
diff --git a/abs/core/make/PKGBUILD b/abs/core/make/PKGBUILD
index 8851f98..91f2da8 100644
--- a/abs/core/make/PKGBUILD
+++ b/abs/core/make/PKGBUILD
@@ -3,33 +3,32 @@
# Contributor: judd <jvinet@zeroflux.org>
pkgname=make
-pkgver=4.1
-pkgrel=2
+pkgver=4.2.1
+pkgrel=1
pkgdesc="GNU make utility to maintain groups of programs"
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/make"
license=('GPL3')
groups=('base-devel')
-depends=('glibc' 'sh' 'guile')
-install=$pkgname.install
+depends=('glibc' 'guile')
source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.bz2{,.sig})
-md5sums=('57a7a224a822f94789a587ccbcedff69'
+md5sums=('15b012617e7c44c0ed482721629577ac'
'SKIP')
validpgpkeys=('3D2554F0A15338AB9AF1BB9D96B047156338B6D4') # Paul Smith
build() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
./configure --prefix=/usr
make
}
check() {
- cd ${srcdir}/${pkgname}-${pkgver}
- make check
+ cd ${pkgname}-${pkgver}
+ make -k check
}
package() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${pkgname}-${pkgver}
make DESTDIR=${pkgdir} install
}
diff --git a/abs/core/make/make-3.82-bug30612.patch b/abs/core/make/make-3.82-bug30612.patch
deleted file mode 100644
index 9867a15..0000000
--- a/abs/core/make/make-3.82-bug30612.patch
+++ /dev/null
@@ -1,91 +0,0 @@
---- make-3.82-orig/main.c 2010-07-19 17:10:53.000000000 +1000
-+++ make-3.82-fix30612//main.c 2010-09-23 23:33:37.908855839 +1000
-@@ -1,3 +1,4 @@
-+
- /* Argument parsing and main program of GNU Make.
- Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997,
- 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-@@ -1138,7 +1139,7 @@
- a macro and some compilers (MSVC) don't like conditionals in macros. */
- {
- const char *features = "target-specific order-only second-expansion"
-- " else-if shortest-stem undefine"
-+ " else-if shortest-stem undefine oneshell"
- #ifndef NO_ARCHIVES
- " archives"
- #endif
-diff -Naur make-3.82-orig/read.c make-3.82-fix30612//read.c
---- make-3.82-orig/read.c 2010-07-13 11:20:42.000000000 +1000
-+++ make-3.82-fix30612//read.c 2010-09-23 23:30:58.018855839 +1000
-@@ -3028,7 +3028,7 @@
- {
- /* 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 @@
- 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,11 @@
- 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)
-diff --git make-3.82-orig/read.c make-3.82-fix30612/read.c
-index c87d4a7..b012094 100644
---- make-3.82-orig/read.c
-+++ make-3.82-fix30612/read.c
-@@ -3044,16 +3044,16 @@ parse_file_seq (char **stringp, unsigned int size, int stopchar,
- nlen -= (n + 1) - tp;
- tp = n + 1;
-
-- /* If we have just "lib(", part of something like
-- "lib( a b)", go to the next item. */
-- if (! nlen)
-- continue;
--
- /* We can stop looking now. */
- break;
- }
- }
- while (*e != '\0');
-+
-+ /* If we have just "lib(", part of something like "lib( a b)",
-+ go to the next item. */
-+ if (! nlen)
-+ continue;
- }
- }
-
diff --git a/abs/core/make/make-3.82-bug30723.patch b/abs/core/make/make-3.82-bug30723.patch
deleted file mode 100644
index 84e7ebe..0000000
--- a/abs/core/make/make-3.82-bug30723.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur make-3.82-orig/main.c make-3.82-fix30723//main.c
---- make-3.82-orig/main.c 2010-07-19 17:10:53.000000000 +1000
-+++ make-3.82-fix30723//main.c 2010-09-23 23:34:10.932188592 +1000
-@@ -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))
diff --git a/abs/core/make/make-3.82-dont-prune-intermediate.patch b/abs/core/make/make-3.82-dont-prune-intermediate.patch
deleted file mode 100644
index f4f47dd..0000000
--- a/abs/core/make/make-3.82-dont-prune-intermediate.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-2012-09-09 Paul Smith <psmith@gnu.org>
-
- * remake.c (update_file_1): Force intermediate files to be
- considered, not pruned, if their non-intermediate parent needs to
- be remade. Fixes Savannah bug #30653.
-
-Index: remake.c
-===================================================================
-RCS file: /sources/make/make/remake.c,v
-retrieving revision 1.153
-retrieving revision 1.154
-diff -u -r1.153 -r1.154
---- remake.c 5 Mar 2012 14:10:45 -0000 1.153
-+++ remake.c 10 Sep 2012 02:36:05 -0000 1.154
-@@ -612,6 +612,10 @@
- d->file->dontcare = file->dontcare;
- }
-
-+ /* We may have already considered this file, when we didn't know
-+ we'd need to update it. Force update_file() to consider it and
-+ not prune it. */
-+ d->file->considered = !considered;
-
- dep_status |= update_file (d->file, depth);
-
-Index: tests/scripts/features/parallelism
-===================================================================
-RCS file: /sources/make/make/tests/scripts/features/parallelism,v
-retrieving revision 1.19
-retrieving revision 1.20
-diff -u -r1.19 -r1.20
---- tests/scripts/features/parallelism 4 Mar 2012 00:24:32 -0000 1.19
-+++ tests/scripts/features/parallelism 10 Sep 2012 02:36:05 -0000 1.20
-@@ -214,6 +214,23 @@
- rmfiles(qw(foo.y foo.y.in main.bar));
- }
-
-+# Ensure intermediate/secondary files are not pruned incorrectly.
-+# See Savannah bug #30653
-+
-+utouch(-15, 'file2');
-+utouch(-10, 'file4');
-+utouch(-5, 'file1');
-+
-+run_make_test(q!
-+.INTERMEDIATE: file3
-+file4: file3 ; @mv -f $< $@
-+file3: file2 ; touch $@
-+file2: file1 ; @touch $@
-+!,
-+ '--no-print-directory -j2', "touch file3");
-+
-+#rmfiles('file1', 'file2', 'file3', 'file4');
-+
- if ($all_tests) {
- # Jobserver FD handling is messed up in some way.
- # Savannah bug #28189
diff --git a/abs/core/make/make-3.82-expensive_glob.patch b/abs/core/make/make-3.82-expensive_glob.patch
deleted file mode 100644
index 8663f50..0000000
--- a/abs/core/make/make-3.82-expensive_glob.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-Index: read.c
-===================================================================
-RCS file: /sources/make/make/read.c,v
-retrieving revision 1.198
-retrieving revision 1.200
-diff -u -r1.198 -r1.200
---- read.c 29 Apr 2011 15:27:39 -0000 1.198
-+++ read.c 7 May 2011 14:36:12 -0000 1.200
-@@ -2901,6 +2901,7 @@
- const char *name;
- const char **nlist = 0;
- char *tildep = 0;
-+ int globme = 1;
- #ifndef NO_ARCHIVES
- char *arname = 0;
- char *memname = 0;
-@@ -3109,32 +3110,40 @@
- }
- #endif /* !NO_ARCHIVES */
-
-- switch (glob (name, GLOB_NOSORT|GLOB_ALTDIRFUNC, NULL, &gl))
-- {
-- case GLOB_NOSPACE:
-- fatal (NILF, _("virtual memory exhausted"));
--
-- case 0:
-- /* Success. */
-- i = gl.gl_pathc;
-- nlist = (const char **)gl.gl_pathv;
-- break;
--
-- case GLOB_NOMATCH:
-- /* If we want only existing items, skip this one. */
-- if (flags & PARSEFS_EXISTS)
-- {
-- i = 0;
-- break;
-- }
-- /* FALLTHROUGH */
--
-- default:
-- /* By default keep this name. */
-+ /* glob() is expensive: don't call it unless we need to. */
-+ if (!(flags & PARSEFS_EXISTS) && strpbrk (name, "?*[") == NULL)
-+ {
-+ globme = 0;
- i = 1;
- nlist = &name;
-- break;
-- }
-+ }
-+ else
-+ switch (glob (name, GLOB_NOSORT|GLOB_ALTDIRFUNC, NULL, &gl))
-+ {
-+ case GLOB_NOSPACE:
-+ fatal (NILF, _("virtual memory exhausted"));
-+
-+ case 0:
-+ /* Success. */
-+ i = gl.gl_pathc;
-+ nlist = (const char **)gl.gl_pathv;
-+ break;
-+
-+ case GLOB_NOMATCH:
-+ /* If we want only existing items, skip this one. */
-+ if (flags & PARSEFS_EXISTS)
-+ {
-+ i = 0;
-+ break;
-+ }
-+ /* FALLTHROUGH */
-+
-+ default:
-+ /* By default keep this name. */
-+ i = 1;
-+ nlist = &name;
-+ break;
-+ }
-
- /* For each matched element, add it to the list. */
- while (i-- > 0)
-@@ -3174,7 +3183,8 @@
- #endif /* !NO_ARCHIVES */
- NEWELT (concat (2, prefix, nlist[i]));
-
-- globfree (&gl);
-+ if (globme)
-+ globfree (&gl);
-
- #ifndef NO_ARCHIVES
- if (arname)
-Index: tests/scripts/functions/wildcard
-===================================================================
-RCS file: /sources/make/make/tests/scripts/functions/wildcard,v
-retrieving revision 1.6
-retrieving revision 1.7
-diff -u -r1.6 -r1.7
---- tests/scripts/functions/wildcard 13 Jun 2009 21:21:49 -0000 1.6
-+++ tests/scripts/functions/wildcard 7 May 2011 14:36:11 -0000 1.7
-@@ -88,4 +88,16 @@
- !,
- '', "\n");
-
-+# TEST #5: wildcard used to verify file existence
-+
-+touch('xxx.yyy');
-+
-+run_make_test(q!exists: ; @echo file=$(wildcard xxx.yyy)!,
-+ '', "file=xxx.yyy\n");
-+
-+unlink('xxx.yyy');
-+
-+run_make_test(q!exists: ; @echo file=$(wildcard xxx.yyy)!,
-+ '', "file=\n");
-+
- 1;
diff --git a/abs/core/make/make-3.82-makeflags.patch b/abs/core/make/make-3.82-makeflags.patch
deleted file mode 100644
index 3cba3c4..0000000
--- a/abs/core/make/make-3.82-makeflags.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Index: main.c
-===================================================================
-RCS file: /sources/make/make/main.c,v
-retrieving revision 1.246
-diff -u -r1.246 main.c
---- main.c 29 Aug 2010 23:05:27 -0000 1.246
-+++ main.c 27 Jul 2011 22:03:12 -0000
-@@ -2091,10 +2095,16 @@
-
- /* Reset makeflags in case they were changed. */
- {
-+ if (master_job_slots)
-+ {
-+ assert (job_slots == default_job_slots);
-+ job_slots = master_job_slots;
-+ }
- const char *pv = define_makeflags (1, 1);
- char *p = alloca (sizeof ("MAKEFLAGS=") + strlen (pv) + 1);
- sprintf (p, "MAKEFLAGS=%s", pv);
- putenv (allocated_variable_expand (p));
-+ job_slots = default_job_slots;
- }
-
- if (ISDB (DB_BASIC))
-@@ -2825,9 +2852,11 @@
- && (*(unsigned int *) cs->value_ptr ==
- *(unsigned int *) cs->noarg_value))
- ADD_FLAG ("", 0); /* Optional value omitted; see below. */
-+#if 0
- else if (cs->c == 'j')
- /* Special case for `-j'. */
- ADD_FLAG ("1", 1);
-+#endif
- else
- {
- char *buf = alloca (30);
diff --git a/abs/core/make/make-3.82-sort-blank.patch b/abs/core/make/make-3.82-sort-blank.patch
deleted file mode 100644
index 2e73f5b..0000000
--- a/abs/core/make/make-3.82-sort-blank.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff -urp make-3.82/function.c make-3.82-pm/function.c
---- make-3.82/function.c 2010-07-13 03:20:39.000000000 +0200
-+++ make-3.82-pm/function.c 2010-10-27 01:43:27.000000000 +0200
-@@ -1138,12 +1138,12 @@ func_sort (char *o, char **argv, const c
- {
- char c = *(t++);
-
-- if (! isspace ((unsigned char)c))
-+ if (! isblank ((unsigned char)c))
- continue;
-
- ++wordi;
-
-- while (isspace ((unsigned char)*t))
-+ while (isblank ((unsigned char)*t))
- ++t;
- }
diff --git a/abs/core/make/make.install b/abs/core/make/make.install
deleted file mode 100644
index 8426085..0000000
--- a/abs/core/make/make.install
+++ /dev/null
@@ -1,20 +0,0 @@
-infodir=usr/share/info
-filelist=(make.info make.info-1 make.info-2)
-
-post_install() {
- [[ -x usr/bin/install-info ]] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file.gz $infodir/dir 2> /dev/null
- done
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- [[ -x usr/bin/install-info ]] || return 0
- for file in ${filelist[@]}; do
- install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
- done
-}