aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--archivers/gzip/Makefile8
-rw-r--r--archivers/gzip/distinfo4
-rw-r--r--archivers/gzip/files/extra-patch-gzip-rsyncable.diff31
-rw-r--r--archivers/gzip/files/patch-gzip.130
-rw-r--r--archivers/gzip/files/patch-gzip.c66
5 files changed, 21 insertions, 118 deletions
diff --git a/archivers/gzip/Makefile b/archivers/gzip/Makefile
index c028bbfdcc0a..f7da523f4038 100644
--- a/archivers/gzip/Makefile
+++ b/archivers/gzip/Makefile
@@ -2,13 +2,11 @@
# $FreeBSD$
PORTNAME= gzip
-PORTVERSION= 1.4
-PORTREVISION= 2
+PORTVERSION= 1.6
CATEGORIES= archivers
-MASTER_SITES= ${MASTER_SITE_GNU}
-MASTER_SITE_SUBDIR= ${PORTNAME}
+MASTER_SITES= GNU
-MAINTAINER= gabor@FreeBSD.org
+MAINTAINER= johans@FreeBSD.org
COMMENT= Compression utility designed to be a replacement for compress
USES= charsetfix
diff --git a/archivers/gzip/distinfo b/archivers/gzip/distinfo
index 76f45039eab9..71038f815b36 100644
--- a/archivers/gzip/distinfo
+++ b/archivers/gzip/distinfo
@@ -1,2 +1,2 @@
-SHA256 (gzip-1.4.tar.gz) = d166cfd3da380da1bd535633e8890bfb5664f9e68870a611d1dc01a3e9f711ee
-SIZE (gzip-1.4.tar.gz) = 907411
+SHA256 (gzip-1.6.tar.gz) = 97eb83b763d9e5ad35f351fe5517e6b71521d7aac7acf3e3cacdb6b1496d8f7e
+SIZE (gzip-1.6.tar.gz) = 1074924
diff --git a/archivers/gzip/files/extra-patch-gzip-rsyncable.diff b/archivers/gzip/files/extra-patch-gzip-rsyncable.diff
index 3f5978ecb3a8..99bde0038074 100644
--- a/archivers/gzip/files/extra-patch-gzip-rsyncable.diff
+++ b/archivers/gzip/files/extra-patch-gzip-rsyncable.diff
@@ -106,17 +106,17 @@ diff -u -r ../gzip-1.3.12.orig/deflate.c ./deflate.c
lookahead -= match_length;
-+ RSYNC_ROLL(strstart, match_length);
- /* Insert new strings in the hash table only if the match length
++ RSYNC_ROLL(strstart, match_length);
+ /* Insert new strings in the hash table only if the match length
* is not too large. This saves time but degrades compression.
*/
-@@ -652,9 +702,14 @@
+@@ -654,9 +704,14 @@
/* No match, output a literal byte */
Tracevv((stderr,"%c",window[strstart]));
flush = ct_tally (0, window[strstart]);
+ RSYNC_ROLL(strstart, 1);
lookahead--;
- strstart++;
+ strstart++;
}
+ if (rsync && strstart > rsync_chunk_end) {
+ rsync_chunk_end = 0xFFFFFFFFUL;
@@ -206,11 +206,12 @@ diff -u -r ../gzip-1.3.12.orig/gzip.c ./gzip.c
struct option longopts[] =
{
-@@ -260,6 +261,7 @@
+@@ -260,7 +261,8 @@
{"best", 0, 0, '9'}, /* compress better */
{"lzw", 0, 0, 'Z'}, /* make output compatible with old compress */
{"bits", 1, 0, 'b'}, /* max number of bits per code (implies -Z) */
+ {"rsyncable", 0, 0, 'R'}, /* make rsync-friendly archive */
+
{ 0, 0, 0, 0 }
};
@@ -223,12 +224,12 @@ diff -u -r ../gzip-1.3.12.orig/gzip.c ./gzip.c
"With no FILE, or when FILE is -, read standard input.",
"",
@@ -469,6 +472,8 @@
- recursive = 1;
+ recursive = 1;
#endif
- break;
-+ case 'R':
-+ rsync = 1; break;
- case 'S':
+ break;
++ case 'R':
++ rsync = 1; break;
+ case 'S':
#ifdef NO_MULTIPLE_DOTS
if (*optarg == '.') optarg++;
diff -u -r ../gzip-1.3.12.orig/gzip.h ./gzip.h
@@ -244,13 +245,13 @@ diff -u -r ../gzip-1.3.12.orig/gzip.h ./gzip.h
extern off_t bytes_out; /* number of output bytes */
@@ -306,7 +307,7 @@
/* in trees.c */
- void ct_init OF((ush *attr, int *method));
- int ct_tally OF((int dist, int lc));
--off_t flush_block OF((char *buf, ulg stored_len, int eof));
-+off_t flush_block OF((char *buf, ulg stored_len, int pad, int eof));
+ extern void ct_init (ush *attr, int *method);
+ extern int ct_tally (int dist, int lc);
+-extern off_t flush_block (char *buf, ulg stored_len, int eof);
++extern off_t flush_block (char *buf, ulg stored_len, int pad, int eof);
/* in bits.c */
- void bi_init OF((file_t zipfile));
+ extern void bi_init (file_t zipfile);
diff -u -r ../gzip-1.3.12.orig/trees.c ./trees.c
--- ../gzip-1.3.12.orig/trees.c 2006-11-20 02:40:33.000000000 -0600
+++ ./trees.c 2008-09-01 20:53:37.000000000 -0500
diff --git a/archivers/gzip/files/patch-gzip.1 b/archivers/gzip/files/patch-gzip.1
deleted file mode 100644
index 319802792e35..000000000000
--- a/archivers/gzip/files/patch-gzip.1
+++ /dev/null
@@ -1,30 +0,0 @@
---- gzip.1.orig Fri Dec 8 14:45:37 2006
-+++ gzip.1 Tue Jun 5 21:44:20 2007
-@@ -4,7 +4,7 @@
- .SH SYNOPSIS
- .ll +8
- .B gzip
--.RB [ " \-acdfhlLnNrtvV19 " ]
-+.RB [ " \-acdfhklLnNrtvV19 " ]
- .RB [ \-S\ suffix ]
- [
- .I "name \&..."
-@@ -12,7 +12,7 @@
- .ll -8
- .br
- .B gunzip
--.RB [ " \-acfhlLnNrtvV " ]
-+.RB [ " \-acfhklLnNrtvV " ]
- .RB [ \-S\ suffix ]
- [
- .I "name \&..."
-@@ -223,6 +223,9 @@
- .TP
- .B \-h --help
- Display a help screen and quit.
-+.TP
-+.B \-k --keep
-+Keep (don't delete) input files during compression or decompression.
- .TP
- .B \-l --list
- For each compressed file, list the following fields:
diff --git a/archivers/gzip/files/patch-gzip.c b/archivers/gzip/files/patch-gzip.c
deleted file mode 100644
index e2536dd91c6a..000000000000
--- a/archivers/gzip/files/patch-gzip.c
+++ /dev/null
@@ -1,66 +0,0 @@
---- gzip.c.orig Tue Mar 20 01:09:51 2007
-+++ gzip.c Tue Jun 5 21:43:50 2007
-@@ -216,6 +216,8 @@
- suppresses a "Broken Pipe" message with some shells. */
- static int volatile exiting_signal;
-
-+/* If nonzero, unlink input file on exit. */
-+static int remove_ifname = 1;
- /* If nonnegative, close this file descriptor and unlink ofname on error. */
- static int volatile remove_ofname_fd = -1;
-
-@@ -243,6 +245,7 @@
- /* {"encrypt", 0, 0, 'e'}, encrypt */
- {"force", 0, 0, 'f'}, /* force overwrite of output file */
- {"help", 0, 0, 'h'}, /* give help */
-+ {"keep", 0, 0, 'k'}, /* keep (don't delete) input files */
- /* {"pkzip", 0, 0, 'k'}, force output in pkzip format */
- {"list", 0, 0, 'l'}, /* list .gz file contents */
- {"license", 0, 0, 'L'}, /* display software license */
-@@ -319,6 +322,7 @@
- " -f, --force force overwrite of output file and compress links",
- " -h, --help give this help",
- /* -k, --pkzip force output in pkzip format */
-+ " -k, --keep keep (don't delete) input files",
- " -l, --list list compressed file contents",
- " -L, --license display software license",
- #ifdef UNDOCUMENTED
-@@ -423,7 +427,7 @@
- z_suffix = Z_SUFFIX;
- z_len = strlen(z_suffix);
-
-- while ((optc = getopt_long (argc, argv, "ab:cdfhH?lLmMnNqrS:tvVZ123456789",
-+ while ((optc = getopt_long (argc, argv, "ab:cdfhH?klLmMnNqrS:tvVZ123456789",
- longopts, (int *)0)) != -1) {
- switch (optc) {
- case 'a':
-@@ -446,6 +450,8 @@
- force++; break;
- case 'h': case 'H':
- help(); do_exit(OK); break;
-+ case 'k':
-+ remove_ifname = 0; break;
- case 'l':
- list = decompress = to_stdout = 1; break;
- case 'L':
-@@ -825,7 +831,7 @@
- if (!to_stdout)
- {
- sigset_t oldset;
-- int unlink_errno;
-+ int unlink_errno = 0;
-
- copy_stat (&istat);
- if (close (ofd) != 0)
-@@ -833,7 +839,8 @@
-
- sigprocmask (SIG_BLOCK, &caught_signals, &oldset);
- remove_ofname_fd = -1;
-- unlink_errno = xunlink (ifname) == 0 ? 0 : errno;
-+ if (remove_ifname)
-+ unlink_errno = xunlink (ifname) == 0 ? 0 : errno;
- sigprocmask (SIG_SETMASK, &oldset, NULL);
-
- if (unlink_errno)
-
-