summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--devel/gmake/Makefile6
-rw-r--r--devel/gmake/distinfo17
-rw-r--r--devel/gmake/patches/patch-configure20
-rw-r--r--devel/gmake/patches/patch-configure.ac20
-rw-r--r--devel/gmake/patches/patch-dir.c51
-rw-r--r--devel/gmake/patches/patch-makeint.h17
-rw-r--r--devel/gmake/patches/patch-posixos.c162
-rw-r--r--devel/gmake/patches/patch-src_hash.c (renamed from devel/gmake/patches/patch-pa)8
8 files changed, 12 insertions, 289 deletions
diff --git a/devel/gmake/Makefile b/devel/gmake/Makefile
index 90397c00043..e9069639d76 100644
--- a/devel/gmake/Makefile
+++ b/devel/gmake/Makefile
@@ -1,11 +1,9 @@
-# $NetBSD: Makefile,v 1.109 2020/01/18 23:30:28 rillig Exp $
+# $NetBSD: Makefile,v 1.110 2020/06/12 14:48:38 sevan Exp $
-DISTNAME= make-4.2.1
+DISTNAME= make-4.3
PKGNAME= g${DISTNAME}
-PKGREVISION= 1
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GNU:=make/}
-EXTRACT_SUFX= .tar.bz2
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= https://www.gnu.org/software/make/make.html
diff --git a/devel/gmake/distinfo b/devel/gmake/distinfo
index d68606958e1..73f2f452577 100644
--- a/devel/gmake/distinfo
+++ b/devel/gmake/distinfo
@@ -1,13 +1,8 @@
-$NetBSD: distinfo,v 1.36 2018/07/04 14:09:07 bsiegert Exp $
+$NetBSD: distinfo,v 1.37 2020/06/12 14:48:38 sevan Exp $
-SHA1 (make-4.2.1.tar.bz2) = 7d9d11eb36cfb752da1fb11bb3e521d2a3cc8830
-RMD160 (make-4.2.1.tar.bz2) = 7cf74e2fd9764ffeb48f40a49077099874ad8a54
-SHA512 (make-4.2.1.tar.bz2) = 9cf00869a2f938492554f71d8cb288b5b009b3bd0489ef164f2c8f6532fc37db5c7e20af1dea288536e7c9710ee0bc6e1ddcdfc4928a8540e6e43661741825b8
-Size (make-4.2.1.tar.bz2) = 1407126 bytes
+SHA1 (make-4.3.tar.gz) = 3c40e5b49b893dbb14f1e2e1f8fe89b7298cc51d
+RMD160 (make-4.3.tar.gz) = 2f2d49f85200433a7a5119bd9d56758a3033c2c0
+SHA512 (make-4.3.tar.gz) = 9a1185cc468368f4ec06478b1cfa343bf90b5cd7c92c0536567db0315b0ee909af53ecce3d44cfd93dd137dbca1ed13af5713e8663590c4fdd21ea635d78496b
+Size (make-4.3.tar.gz) = 2317073 bytes
SHA1 (patch-af) = 8ff060ecba9d664044eabd98741253881d8c9bbe
-SHA1 (patch-configure) = e3122c5c1bbe59ec4c233f42feb6d7952a1e1215
-SHA1 (patch-configure.ac) = 7d22c8f5e5d349687885f55120fa2f7c1251e399
-SHA1 (patch-dir.c) = 1616d8e26c0761c8734063806fa581ae8884b4e8
-SHA1 (patch-makeint.h) = cb5f0889d84874a16fc10bc6f91e18c2277194cc
-SHA1 (patch-pa) = 2c0168db7afec3da98b30392290e5b9464ea7b5e
-SHA1 (patch-posixos.c) = 4c566b23442bcc87f776181be531957c254162de
+SHA1 (patch-src_hash.c) = 4820633cc6b5d0d42cd8aeea46bb1b3f5f6475bd
diff --git a/devel/gmake/patches/patch-configure b/devel/gmake/patches/patch-configure
deleted file mode 100644
index f08e92f3f3d..00000000000
--- a/devel/gmake/patches/patch-configure
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-configure,v 1.1 2018/04/28 06:59:41 minskim Exp $
-
-Support GLIBC glob interface version 2.
-
-http://git.savannah.gnu.org/cgit/make.git/commit/?id=48c8a116
-
---- configure.orig 2014-10-05 16:25:21.000000000 +0000
-+++ configure
-@@ -11060,10 +11060,9 @@ else
- #include <glob.h>
- #include <fnmatch.h>
-
--#define GLOB_INTERFACE_VERSION 1
- #if !defined _LIBC && defined __GNU_LIBRARY__ && __GNU_LIBRARY__ > 1
- # include <gnu-versions.h>
--# if _GNU_GLOB_INTERFACE_VERSION == GLOB_INTERFACE_VERSION
-+# if _GNU_GLOB_INTERFACE_VERSION == 1 || _GNU_GLOB_INTERFACE_VERSION == 2
- gnu glob
- # endif
- #endif
diff --git a/devel/gmake/patches/patch-configure.ac b/devel/gmake/patches/patch-configure.ac
deleted file mode 100644
index b2b8f038a96..00000000000
--- a/devel/gmake/patches/patch-configure.ac
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-configure.ac,v 1.1 2018/04/28 06:59:41 minskim Exp $
-
-Support GLIBC glob interface version 2.
-
-http://git.savannah.gnu.org/cgit/make.git/commit/?id=48c8a116
-
---- configure.ac.orig 2014-10-05 16:24:51.000000000 +0000
-+++ configure.ac
-@@ -401,10 +401,9 @@ AC_CACHE_CHECK([if system libc has GNU g
- #include <glob.h>
- #include <fnmatch.h>
-
--#define GLOB_INTERFACE_VERSION 1
- #if !defined _LIBC && defined __GNU_LIBRARY__ && __GNU_LIBRARY__ > 1
- # include <gnu-versions.h>
--# if _GNU_GLOB_INTERFACE_VERSION == GLOB_INTERFACE_VERSION
-+# if _GNU_GLOB_INTERFACE_VERSION == 1 || _GNU_GLOB_INTERFACE_VERSION == 2
- gnu glob
- # endif
- #endif],
diff --git a/devel/gmake/patches/patch-dir.c b/devel/gmake/patches/patch-dir.c
deleted file mode 100644
index a3dfe8de9b9..00000000000
--- a/devel/gmake/patches/patch-dir.c
+++ /dev/null
@@ -1,51 +0,0 @@
-$NetBSD: patch-dir.c,v 1.1 2018/04/30 01:47:30 minskim Exp $
-
-Support GLIBC glob interface version 2.
-
-http://git.savannah.gnu.org/cgit/make.git/commit/?id=193f1e81
-
---- dir.c.orig 2014-10-05 16:24:51.000000000 +0000
-+++ dir.c
-@@ -1212,15 +1212,40 @@ local_stat (const char *path, struct sta
- }
- #endif
-
-+/* Similarly for lstat. */
-+#if !defined(lstat) && !defined(WINDOWS32) || defined(VMS)
-+# ifndef VMS
-+# ifndef HAVE_SYS_STAT_H
-+int lstat (const char *path, struct stat *sbuf);
-+# endif
-+# else
-+ /* We are done with the fake lstat. Go back to the real lstat */
-+# ifdef lstat
-+# undef lstat
-+# endif
-+# endif
-+# define local_lstat lstat
-+#elif defined(WINDOWS32)
-+/* Windows doesn't support lstat(). */
-+# define local_lstat local_stat
-+#else
-+static int
-+local_lstat (const char *path, struct stat *buf)
-+{
-+ int e;
-+ EINTRLOOP (e, lstat (path, buf));
-+ return e;
-+}
-+#endif
-+
- void
- dir_setup_glob (glob_t *gl)
- {
- gl->gl_opendir = open_dirstream;
- gl->gl_readdir = read_dirstream;
- gl->gl_closedir = free;
-+ gl->gl_lstat = local_lstat;
- gl->gl_stat = local_stat;
-- /* We don't bother setting gl_lstat, since glob never calls it.
-- The slot is only there for compatibility with 4.4 BSD. */
- }
-
- void
diff --git a/devel/gmake/patches/patch-makeint.h b/devel/gmake/patches/patch-makeint.h
deleted file mode 100644
index 4b42e8290fe..00000000000
--- a/devel/gmake/patches/patch-makeint.h
+++ /dev/null
@@ -1,17 +0,0 @@
-$NetBSD: patch-makeint.h,v 1.8 2018/07/04 14:09:07 bsiegert Exp $
-
-* Do not override stack limits by default.
- It can dramatically increase the memory use of multi-threaded programs.
-
---- makeint.h.orig 2016-05-21 20:22:32.000000000 +0000
-+++ makeint.h
-@@ -442,9 +442,6 @@ extern int unixy_shell;
- #define NEXT_TOKEN(s) while (ISSPACE (*(s))) ++(s)
- #define END_OF_TOKEN(s) while (! STOP_SET (*(s), MAP_SPACE|MAP_NUL)) ++(s)
-
--#if defined(HAVE_SYS_RESOURCE_H) && defined(HAVE_GETRLIMIT) && defined(HAVE_SETRLIMIT)
--# define SET_STACK_SIZE
--#endif
- #ifdef SET_STACK_SIZE
- # include <sys/resource.h>
- extern struct rlimit stack_limit;
diff --git a/devel/gmake/patches/patch-posixos.c b/devel/gmake/patches/patch-posixos.c
deleted file mode 100644
index dc3081c203f..00000000000
--- a/devel/gmake/patches/patch-posixos.c
+++ /dev/null
@@ -1,162 +0,0 @@
-$NetBSD: patch-posixos.c,v 1.1 2018/07/04 14:09:07 bsiegert Exp $
-
-http://git.savannah.gnu.org/cgit/make.git/commit/?id=b552b05251980f693c729e251f93f5225b400714
-
-[SV 51159] Use a non-blocking read with pselect to avoid hangs.
-* posixos.c (set_blocking): Set blocking on a file descriptor.
-* (jobserver_setup): Set non-blocking on the jobserver read side.
-* (jobserver_parse_auth): Ditto.
-* (jobserver_acquire_all): Set blocking to avoid a busy-wait loop.
-* (jobserver_acquire): If the non-blocking read() returns without
- taking a token then try again.
-
---- posixos.c.orig 2016-05-21 20:21:52.000000000 +0000
-+++ posixos.c
-@@ -59,6 +59,24 @@ make_job_rfd (void)
- #endif
- }
-
-+static void
-+set_blocking (int fd, int blocking)
-+{
-+ // If we're not using pselect() don't change the blocking
-+#ifdef HAVE_PSELECT
-+ int flags;
-+ EINTRLOOP (flags, fcntl (fd, F_GETFL));
-+ if (flags >= 0)
-+ {
-+ int r;
-+ flags = blocking ? (flags & ~O_NONBLOCK) : (flags | O_NONBLOCK);
-+ EINTRLOOP (r, fcntl (fd, F_SETFL, flags));
-+ if (r < 0)
-+ pfatal_with_name ("fcntl(O_NONBLOCK)");
-+ }
-+#endif
-+}
-+
- unsigned int
- jobserver_setup (int slots)
- {
-@@ -78,6 +96,9 @@ jobserver_setup (int slots)
- pfatal_with_name (_("init jobserver pipe"));
- }
-
-+ /* When using pselect() we want the read to be non-blocking. */
-+ set_blocking (job_fds[0], 0);
-+
- return 1;
- }
-
-@@ -113,6 +134,9 @@ jobserver_parse_auth (const char *auth)
- return 0;
- }
-
-+ /* When using pselect() we want the read to be non-blocking. */
-+ set_blocking (job_fds[0], 0);
-+
- return 1;
- }
-
-@@ -161,7 +185,10 @@ jobserver_acquire_all (void)
- {
- unsigned int tokens = 0;
-
-- /* Close the write side, so the read() won't hang. */
-+ /* Use blocking reads to wait for all outstanding jobs. */
-+ set_blocking (job_fds[0], 1);
-+
-+ /* Close the write side, so the read() won't hang forever. */
- close (job_fds[1]);
- job_fds[1] = -1;
-
-@@ -239,18 +266,12 @@ jobserver_pre_acquire (void)
- unsigned int
- jobserver_acquire (int timeout)
- {
-- sigset_t empty;
-- fd_set readfds;
- struct timespec spec;
- struct timespec *specp = NULL;
-- int r;
-- char intake;
-+ sigset_t empty;
-
- sigemptyset (&empty);
-
-- FD_ZERO (&readfds);
-- FD_SET (job_fds[0], &readfds);
--
- if (timeout)
- {
- /* Alarm after one second (is this too granular?) */
-@@ -259,28 +280,52 @@ jobserver_acquire (int timeout)
- specp = &spec;
- }
-
-- r = pselect (job_fds[0]+1, &readfds, NULL, NULL, specp, &empty);
--
-- if (r == -1)
-+ while (1)
- {
-- /* Better be SIGCHLD. */
-- if (errno != EINTR)
-- pfatal_with_name (_("pselect jobs pipe"));
-- return 0;
-- }
-+ fd_set readfds;
-+ int r;
-+ char intake;
-
-- if (r == 0)
-- /* Timeout. */
-- return 0;
-+ FD_ZERO (&readfds);
-+ FD_SET (job_fds[0], &readfds);
-
-- /* The read FD is ready: read it! */
-- EINTRLOOP (r, read (job_fds[0], &intake, 1));
-- if (r < 0)
-- pfatal_with_name (_("read jobs pipe"));
-+ r = pselect (job_fds[0]+1, &readfds, NULL, NULL, specp, &empty);
-+ if (r < 0)
-+ switch (errno)
-+ {
-+ case EINTR:
-+ /* SIGCHLD will show up as an EINTR. */
-+ return 0;
-+
-+ case EBADF:
-+ /* Someone closed the jobs pipe.
-+ That shouldn't happen but if it does we're done. */
-+ O (fatal, NILF, _("job server shut down"));
-+
-+ default:
-+ pfatal_with_name (_("pselect jobs pipe"));
-+ }
-+
-+ if (r == 0)
-+ /* Timeout. */
-+ return 0;
-+
-+ /* The read FD is ready: read it! This is non-blocking. */
-+ EINTRLOOP (r, read (job_fds[0], &intake, 1));
-+
-+ if (r < 0)
-+ {
-+ /* Someone sniped our token! Try again. */
-+ if (errno == EAGAIN)
-+ continue;
-+
-+ pfatal_with_name (_("read jobs pipe"));
-+ }
-
-- /* What does it mean if read() returns 0? It shouldn't happen because only
-- the master make can reap all the tokens and close the write side...?? */
-- return r > 0;
-+ /* read() should never return 0: only the master make can reap all the
-+ tokens and close the write side...?? */
-+ return r > 0;
-+ }
- }
-
- #else
diff --git a/devel/gmake/patches/patch-pa b/devel/gmake/patches/patch-src_hash.c
index 345fd4ef93f..ecd6df8aa4e 100644
--- a/devel/gmake/patches/patch-pa
+++ b/devel/gmake/patches/patch-src_hash.c
@@ -1,10 +1,10 @@
-$NetBSD: patch-pa,v 1.1 2009/10/30 18:20:04 ahoka Exp $
+$NetBSD: patch-src_hash.c,v 1.1 2020/06/12 14:48:38 sevan Exp $
PCC says: hash.c:326: error: Constant "4294967295" is out of range
---- hash.c.orig 2006-02-11 21:00:39.000000000 +0100
-+++ hash.c
-@@ -323,7 +323,7 @@ round_up_2 (unsigned long n)
+--- work/make-4.3/src/hash.c.orig 2020-06-12 14:40:24.838680043 +0000
++++ work/make-4.3/src/hash.c
+@@ -321,7 +321,7 @@ round_up_2 (unsigned long n)
n |= (n >> 8);
n |= (n >> 16);