summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcheusov <cheusov@pkgsrc.org>2014-08-13 18:30:03 +0000
committercheusov <cheusov@pkgsrc.org>2014-08-13 18:30:03 +0000
commitbc95f3d62c37557843941541f2c33a8584acf7ab (patch)
tree049b52744995b582e8e8915e7d271c14e3f72fb4
parentd6ee7d5e6be27a8ac6e116756811cf92f4ec21ab (diff)
downloadpkgsrc-bc95f3d62c37557843941541f2c33a8584acf7ab.tar.gz
Always use system-wide getcwd(3) instead built-in replacement.
Do not use non-standard getcwd(NULL,0). This fixes cvs on Interix (cvs [diff aborted]: cannot get working directory: No such file or directory);
-rw-r--r--devel/scmcvs/Makefile5
-rw-r--r--devel/scmcvs/distinfo3
-rw-r--r--devel/scmcvs/patches/patch-bb24
3 files changed, 29 insertions, 3 deletions
diff --git a/devel/scmcvs/Makefile b/devel/scmcvs/Makefile
index 21b2d4ce27a..8448926afd0 100644
--- a/devel/scmcvs/Makefile
+++ b/devel/scmcvs/Makefile
@@ -1,6 +1,7 @@
-# $NetBSD: Makefile,v 1.10 2013/10/14 06:51:02 adam Exp $
+# $NetBSD: Makefile,v 1.11 2014/08/13 18:30:03 cheusov Exp $
DISTNAME= cvs-1.12.13
+PKGREVISION= 1
CATEGORIES= devel scm
MASTER_SITES= http://ftp.gnu.org/non-gnu/cvs/source/feature/${PKGVERSION_NOREV}/
EXTRACT_SUFX= .tar.bz2
@@ -16,7 +17,7 @@ USE_TOOLS+= makeinfo
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --with-external-zlib
CONFIGURE_ARGS+= --with-rsh=ssh
-CONFIGURE_ENV+= PERL=${TOOLS_PERL5}
+CONFIGURE_ENV+= PERL=${TOOLS_PERL5} gl_cv_func_getcwd_null=yes
CHECK_INTERPRETER_SKIP= share/cvs/contrib/*
INFO_FILES= yes
diff --git a/devel/scmcvs/distinfo b/devel/scmcvs/distinfo
index c972a9ee29b..8cf79affba2 100644
--- a/devel/scmcvs/distinfo
+++ b/devel/scmcvs/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.10 2014/06/26 22:46:56 asau Exp $
+$NetBSD: distinfo,v 1.11 2014/08/13 18:30:03 cheusov Exp $
SHA1 (cvs-1.12.13.tar.bz2) = 93a8dacc6ff0e723a130835713235863f1f5ada9
RMD160 (cvs-1.12.13.tar.bz2) = ba3048e3e2d99ae78f6a759889b615acf65dd487
@@ -24,6 +24,7 @@ SHA1 (patch-av) = 5cff0af09fd16509758aed06b5d9ce1b3985b1a9
SHA1 (patch-ay) = 6ce1c3c21dbc478248068f8b8850c21b0cb48c42
SHA1 (patch-az) = 9dfd460ae6617f1492e0e6861387ff80080a7d5d
SHA1 (patch-ba) = 7153e12e5da86effd4285e147f9f534011982e07
+SHA1 (patch-bb) = 09a607426b672f44c1882b82812e6ca81efdcf8e
SHA1 (patch-lib_mktime.c) = 526a0e24c6399d527ae6a463ea91e993f9f7e920
SHA1 (patch-src_ignore.c) = 90ac25311c83bb5713b83b9cfb6b2c03790ee787
SHA1 (patch-src_zlib.c) = fee3becf1cc2e45d1241a302ed65c5f11b477a0a
diff --git a/devel/scmcvs/patches/patch-bb b/devel/scmcvs/patches/patch-bb
new file mode 100644
index 00000000000..9839cc1d7f9
--- /dev/null
+++ b/devel/scmcvs/patches/patch-bb
@@ -0,0 +1,24 @@
+$NetBSD: patch-bb,v 1.1 2014/08/13 18:30:03 cheusov Exp $
+
+Do use non-standard getcwd(NULL, 0); This unbreaks cvs on Interix.
+--- lib/xgetcwd.c.orig Mon Sep 19 21:12:25 2005
++++ lib/xgetcwd.c Wed Aug 13 17:58:42 2014
+@@ -25,6 +25,7 @@
+ #include "xgetcwd.h"
+
+ #include <errno.h>
++#include <limits.h>
+
+ #include "getcwd.h"
+ #include "xalloc.h"
+@@ -36,8 +37,8 @@
+ char *
+ xgetcwd (void)
+ {
+- char *cwd = getcwd (NULL, 0);
++ char *cwd = xmalloc (PATH_MAX);
+ if (! cwd && errno == ENOMEM)
+ xalloc_die ();
+- return cwd;
++ return getcwd (cwd, PATH_MAX);
+ }