summaryrefslogtreecommitdiff
path: root/archivers/gcpio
diff options
context:
space:
mode:
authorminskim <minskim@pkgsrc.org>2004-06-06 21:29:33 +0000
committerminskim <minskim@pkgsrc.org>2004-06-06 21:29:33 +0000
commit3403ceeb80938fe554606e08d1d703e952415071 (patch)
treeae980ff106a0b73899a7bef52cdda3517dde90c4 /archivers/gcpio
parentaf243a6fde9e4f6a2065f2f66db5408f55df41f7 (diff)
downloadpkgsrc-3403ceeb80938fe554606e08d1d703e952415071.tar.gz
Update gcpio to 2.5. Based on patches submitted by reed@ in PR pkg/20799
and sketch@ in PR pkg/22851. Also apply a patch from Debian Linux to fix the ustar problem (Debian bug #238177). Reported by Christian Weisgerber on tech-pkg@. Changes: * bug fixes from Debian, Red Hat, and SuSE GNU/Linux Distribution patches * --rsh-command option
Diffstat (limited to 'archivers/gcpio')
-rw-r--r--archivers/gcpio/DESCR3
-rw-r--r--archivers/gcpio/Makefile13
-rw-r--r--archivers/gcpio/distinfo15
-rw-r--r--archivers/gcpio/patches/patch-aa11
-rw-r--r--archivers/gcpio/patches/patch-ab8
-rw-r--r--archivers/gcpio/patches/patch-ac13
-rw-r--r--archivers/gcpio/patches/patch-ad12
-rw-r--r--archivers/gcpio/patches/patch-ae15
-rw-r--r--archivers/gcpio/patches/patch-af45
9 files changed, 107 insertions, 28 deletions
diff --git a/archivers/gcpio/DESCR b/archivers/gcpio/DESCR
index 692b862ebe3..eb90a898654 100644
--- a/archivers/gcpio/DESCR
+++ b/archivers/gcpio/DESCR
@@ -1,3 +1,6 @@
GNU cpio, originally shipped as NetBSD's "cpio" up to version 1.3, is a
full-featured cpio command that can access remote and local magnetic tapes,
and both tar and cpio format archives in files or on tapes.
+
+This package does not include the mt (control magnetic tape drive
+operation) or rmt commands.
diff --git a/archivers/gcpio/Makefile b/archivers/gcpio/Makefile
index be24bd82564..70eabb2a55a 100644
--- a/archivers/gcpio/Makefile
+++ b/archivers/gcpio/Makefile
@@ -1,9 +1,8 @@
-# $NetBSD: Makefile,v 1.20 2004/03/11 18:03:49 xtraeme Exp $
+# $NetBSD: Makefile,v 1.21 2004/06/06 21:29:33 minskim Exp $
#
-DISTNAME= cpio-2.4.2
-PKGNAME= gcpio-2.4.2
-PKGREVISION= 1
+DISTNAME= cpio-2.5
+PKGNAME= g${DISTNAME}
CATEGORIES= archivers
MASTER_SITES= ${MASTER_SITE_GNU:=cpio/}
@@ -13,12 +12,16 @@ COMMENT= GNU copy-in/out (cpio) with remote magnetic tape (rmt) support
USE_BUILDLINK3= yes
GNU_CONFIGURE= yes
-LIBS+= -lgnumalloc
+USE_MAKEINFO= yes
INFO_FILES= cpio.info
.include "../../mk/bsd.prefs.mk"
+.if ${OPSYS} == "NetBSD"
+LIBS+= -lgnumalloc
+.endif
+
.if defined(GNU_PROGRAM_PREFIX)
CONFIGURE_ARGS+= --program-prefix=${GNU_PROGRAM_PREFIX}
.endif
diff --git a/archivers/gcpio/distinfo b/archivers/gcpio/distinfo
index e8f76139bb2..5ccc77a6cac 100644
--- a/archivers/gcpio/distinfo
+++ b/archivers/gcpio/distinfo
@@ -1,7 +1,10 @@
-$NetBSD: distinfo,v 1.4 2003/03/16 00:17:23 wiz Exp $
+$NetBSD: distinfo,v 1.5 2004/06/06 21:29:33 minskim Exp $
-SHA1 (cpio-2.4.2.tar.gz) = 88e557b2e14ad7b575554473e4ef4624a993b71f
-Size (cpio-2.4.2.tar.gz) = 185281 bytes
-SHA1 (patch-aa) = 36f3287ea0a64ac0eb085335ef0ab6661e1458c7
-SHA1 (patch-ab) = aa50963702198b42345aa906f387b89adad2b9b0
-SHA1 (patch-ac) = 372b5fe8bb22a609c22089c78f67387e66436372
+SHA1 (cpio-2.5.tar.gz) = d5908ee20484f092e591a430620feec33060528c
+Size (cpio-2.5.tar.gz) = 185480 bytes
+SHA1 (patch-aa) = 2d6b714be46f26782b1a6e6af47710c6e20f50b8
+SHA1 (patch-ab) = e3529142851ebe87b6df37ab33571209512b0f17
+SHA1 (patch-ac) = 404dcc134a0c8b9007a3efdc8caf6b36efcf125b
+SHA1 (patch-ad) = 854df599fa330ae2b07ab6cae4c2a1f2e0988ff5
+SHA1 (patch-ae) = 5de604f8278756e1ef8d4b72f9cd7638cb0496ab
+SHA1 (patch-af) = d42ed286fa508dc2be2415614412cac8929f19f8
diff --git a/archivers/gcpio/patches/patch-aa b/archivers/gcpio/patches/patch-aa
index d6d61a564c2..24bdfea0bc0 100644
--- a/archivers/gcpio/patches/patch-aa
+++ b/archivers/gcpio/patches/patch-aa
@@ -1,4 +1,4 @@
-$NetBSD: patch-aa,v 1.4 2003/03/16 00:17:24 wiz Exp $
+$NetBSD: patch-aa,v 1.5 2004/06/06 21:29:33 minskim Exp $
--- Makefile.in.orig Wed Dec 20 11:28:30 1995
+++ Makefile.in
@@ -14,6 +14,15 @@ $NetBSD: patch-aa,v 1.4 2003/03/16 00:17:24 wiz Exp $
# Where to install the cpio and mt executables.
+@@ -101,7 +101,7 @@
+ SRCS = copyin.c copyout.c copypass.c defer.c dstring.c global.c \
+ main.c tar.c util.c error.c getopt.c getopt1.c filemode.c version.c \
+ rtapelib.c dirname.c idcache.c makepath.c xmalloc.c stripslash.c \
+-userspec.c xstrdup.c bcopy.c fnmatch.c mkdir.c strdup.c
++userspec.c xstrdup.c bcopy.c fnmatch.c mkdir.c
+ OBJS = copyin.o copyout.o copypass.o defer.o dstring.o global.o \
+ main.o tar.o util.o error.o getopt.o getopt1.o filemode.o version.o \
+ $(RTAPELIB) dirname.o idcache.o makepath.o xmalloc.o stripslash.o \
@@ -117,17 +117,14 @@
configure configure.in mkinstalldirs install-sh $(MT_SRCS) rmt.c tcexparg.c \
alloca.c cpio.texi cpio.info texinfo.tex
diff --git a/archivers/gcpio/patches/patch-ab b/archivers/gcpio/patches/patch-ab
index 024ebeb0bf7..d16d3411de1 100644
--- a/archivers/gcpio/patches/patch-ab
+++ b/archivers/gcpio/patches/patch-ab
@@ -1,8 +1,8 @@
-$NetBSD: patch-ab,v 1.3 2003/03/16 00:17:24 wiz Exp $
+$NetBSD: patch-ab,v 1.4 2004/06/06 21:29:33 minskim Exp $
---- configure.orig Thu Dec 26 15:00:22 2002
-+++ configure Thu Dec 26 15:01:33 2002
-@@ -2117,6 +2117,7 @@
+--- configure.orig 2001-08-29 22:37:00.000000000 -0500
++++ configure
+@@ -2118,6 +2118,7 @@ s%@LDFLAGS@%$LDFLAGS%g
s%@LIBS@%$LIBS%g
s%@exec_prefix@%$exec_prefix%g
s%@prefix@%$prefix%g
diff --git a/archivers/gcpio/patches/patch-ac b/archivers/gcpio/patches/patch-ac
index b13fe723921..4b5dcaea903 100644
--- a/archivers/gcpio/patches/patch-ac
+++ b/archivers/gcpio/patches/patch-ac
@@ -1,4 +1,4 @@
-$NetBSD: patch-ac,v 1.2 1998/08/07 10:35:48 agc Exp $
+$NetBSD: patch-ac,v 1.3 2004/06/06 21:29:33 minskim Exp $
--- filetypes.h.orig Sun Jul 19 01:53:46 1992
+++ filetypes.h Thu Mar 5 13:20:46 1998
@@ -8,14 +8,3 @@ $NetBSD: patch-ac,v 1.2 1998/08/07 10:35:48 agc Exp $
#endif
-int lstat ();
-int stat ();
---- main.c.orig Wed Nov 30 19:24:21 1994
-+++ main.c Thu Mar 5 13:22:28 1998
-@@ -492,7 +492,7 @@
- bzero (zeros_512, 512);
- }
-
--void
-+int
- main (argc, argv)
- int argc;
- char *argv[];
diff --git a/archivers/gcpio/patches/patch-ad b/archivers/gcpio/patches/patch-ad
new file mode 100644
index 00000000000..ed0e3fdc480
--- /dev/null
+++ b/archivers/gcpio/patches/patch-ad
@@ -0,0 +1,12 @@
+$NetBSD: patch-ad,v 1.1 2004/06/06 21:29:33 minskim Exp $
+
+--- error.c.orig 2001-12-05 22:52:45.000000000 -0600
++++ error.c
+@@ -68,7 +68,6 @@ static char *
+ private_strerror (errnum)
+ int errnum;
+ {
+- extern char *sys_errlist[];
+ extern int sys_nerr;
+
+ if (errnum > 0 && errnum <= sys_nerr)
diff --git a/archivers/gcpio/patches/patch-ae b/archivers/gcpio/patches/patch-ae
new file mode 100644
index 00000000000..0a448d56a2b
--- /dev/null
+++ b/archivers/gcpio/patches/patch-ae
@@ -0,0 +1,15 @@
+$NetBSD: patch-ae,v 1.1 2004/06/06 21:29:33 minskim Exp $
+
+--- mkdir.c.orig 2001-12-05 22:54:41.000000000 -0600
++++ mkdir.c
+@@ -51,8 +51,8 @@ extern int errno;
+
+ int
+ mkdir (dpath, dmode)
+- char *dpath;
+- int dmode;
++ const char *dpath;
++ unsigned int dmode;
+ {
+ int cpid, status;
+ struct stat statbuf;
diff --git a/archivers/gcpio/patches/patch-af b/archivers/gcpio/patches/patch-af
new file mode 100644
index 00000000000..657aa223828
--- /dev/null
+++ b/archivers/gcpio/patches/patch-af
@@ -0,0 +1,45 @@
+$NetBSD: patch-af,v 1.1 2004/06/06 21:29:33 minskim Exp $
+
+--- tar.c.orig 2004-03-15 19:58:03.504727318 +0100
++++ tar.c 2004-03-15 19:59:41.803936327 +0100
+@@ -27,6 +27,7 @@
+ #include "tarhdr.h"
+
+ static void to_oct ();
++static void to_oct_no_nul ();
+ static char *stash_tar_linkname ();
+ static char *stash_tar_filename ();
+
+@@ -97,8 +98,8 @@
+ to_oct (file_hdr->c_mode, 8, tar_hdr->mode);
+ to_oct (file_hdr->c_uid, 8, tar_hdr->uid);
+ to_oct (file_hdr->c_gid, 8, tar_hdr->gid);
+- to_oct (file_hdr->c_filesize, 12, tar_hdr->size);
+- to_oct (file_hdr->c_mtime, 12, tar_hdr->mtime);
++ to_oct_no_nul (file_hdr->c_filesize, 12, tar_hdr->size);
++ to_oct_no_nul (file_hdr->c_mtime, 12, tar_hdr->mtime);
+
+ switch (file_hdr->c_mode & CP_IFMT)
+ {
+@@ -446,6 +447,21 @@
+ where[--digits] = ' ';
+ }
+
++/* Convert a number into a string of octal digits.
++ Convert long VALUE into a DIGITS-digit field at WHERE,
++ including a trailing space. DIGITS==2 means
++ 1 digit, and a space.
++*/
++
++static void
++to_oct_no_nul (value, digits, where)
++ register long value;
++ register int digits;
++ register char *where;
++{
++ to_oct (value, digits + 1, where);
++}
++
+ /* Return
+ 2 if BUF is a valid POSIX tar header (the checksum is correct
+ and it has the "ustar" magic string),