Adding upstream version 1.2.
Signed-off-by: Daniel Baumann <daniel@debian.org>
This commit is contained in:
parent
cac35a934f
commit
abf60b631b
29 changed files with 113 additions and 111 deletions
17
ChangeLog
17
ChangeLog
|
@ -1,15 +1,10 @@
|
|||
2013-10-11 Antonio Diaz Diaz <antonio@gnu.org>
|
||||
2014-02-01 Antonio Diaz Diaz <antonio@gnu.org>
|
||||
|
||||
* Version 1.2-pre3 released.
|
||||
* Removed zutils executable. Utils are now independent executables.
|
||||
* zupdate.cc: Added new option '-k, --keep'.
|
||||
* zupdate.cc: Ignore xz files if xz compressor is not installed.
|
||||
* zgrep.cc: Fixed the exit status returned on error.
|
||||
|
||||
2013-09-04 Antonio Diaz Diaz <antonio@gnu.org>
|
||||
|
||||
* Version 1.2-pre2 released.
|
||||
* Version 1.2 released.
|
||||
* Added new utility; zupdate.
|
||||
* Removed zutils executable. Utils are now independent executables.
|
||||
* zgrep.cc: Fixed the exit status returned on error.
|
||||
* zutils.texinfo: Renamed to zutils.texi.
|
||||
|
||||
2013-08-02 Antonio Diaz Diaz <antonio@gnu.org>
|
||||
|
||||
|
@ -107,7 +102,7 @@
|
|||
* Version 0.1 released.
|
||||
|
||||
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This file is a collection of facts, and thus it is not copyrightable,
|
||||
but just in case, you have unlimited permission to copy, distribute and
|
||||
|
|
14
INSTALL
14
INSTALL
|
@ -49,12 +49,12 @@ the main archive.
|
|||
|
||||
Another way
|
||||
-----------
|
||||
You can also compile zutils into a separate directory. To do this, you
|
||||
must use a version of 'make' that supports the 'VPATH' variable, such
|
||||
as GNU 'make'. 'cd' to the directory where you want the object files
|
||||
and executables to go and run the 'configure' script. 'configure'
|
||||
automatically checks for the source code in '.', in '..' and in the
|
||||
directory that 'configure' is in.
|
||||
You can also compile zutils into a separate directory.
|
||||
To do this, you must use a version of 'make' that supports the 'VPATH'
|
||||
variable, such as GNU 'make'. 'cd' to the directory where you want the
|
||||
object files and executables to go and run the 'configure' script.
|
||||
'configure' automatically checks for the source code in '.', in '..' and
|
||||
in the directory that 'configure' is in.
|
||||
|
||||
'configure' recognizes the option '--srcdir=DIR' to control where to
|
||||
look for the sources. Usually 'configure' can determine that directory
|
||||
|
@ -64,7 +64,7 @@ After running 'configure', you can run 'make' and 'make install' as
|
|||
explained above.
|
||||
|
||||
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This file is free documentation: you have unlimited permission to copy,
|
||||
distribute and modify it.
|
||||
|
|
14
Makefile.in
14
Makefile.in
|
@ -1,9 +1,9 @@
|
|||
|
||||
DISTNAME = $(pkgname)-$(pkgversion)
|
||||
INSTALL = install
|
||||
INSTALL_PROGRAM = $(INSTALL) -p -m 755
|
||||
INSTALL_SCRIPT = $(INSTALL) -p -m 755
|
||||
INSTALL_DATA = $(INSTALL) -p -m 644
|
||||
INSTALL_PROGRAM = $(INSTALL) -m 755
|
||||
INSTALL_SCRIPT = $(INSTALL) -m 755
|
||||
INSTALL_DATA = $(INSTALL) -m 644
|
||||
INSTALL_DIR = $(INSTALL) -d -m 755
|
||||
SHELL = /bin/sh
|
||||
|
||||
|
@ -80,8 +80,8 @@ doc : info man
|
|||
|
||||
info : $(VPATH)/doc/$(pkgname).info
|
||||
|
||||
$(VPATH)/doc/$(pkgname).info : $(VPATH)/doc/$(pkgname).texinfo
|
||||
cd $(VPATH)/doc && makeinfo $(pkgname).texinfo
|
||||
$(VPATH)/doc/$(pkgname).info : $(VPATH)/doc/$(pkgname).texi
|
||||
cd $(VPATH)/doc && makeinfo $(pkgname).texi
|
||||
|
||||
man : $(VPATH)/doc/zcat.1 $(VPATH)/doc/zcmp.1 $(VPATH)/doc/zdiff.1 \
|
||||
$(VPATH)/doc/zgrep.1 $(VPATH)/doc/ztest.1 $(VPATH)/doc/zupdate.1
|
||||
|
@ -177,7 +177,7 @@ uninstall-man :
|
|||
|
||||
dist : doc
|
||||
ln -sf $(VPATH) $(DISTNAME)
|
||||
tar -cvf $(DISTNAME).tar \
|
||||
tar -Hustar --owner=root --group=root -cvf $(DISTNAME).tar \
|
||||
$(DISTNAME)/AUTHORS \
|
||||
$(DISTNAME)/COPYING \
|
||||
$(DISTNAME)/ChangeLog \
|
||||
|
@ -188,7 +188,7 @@ dist : doc
|
|||
$(DISTNAME)/configure \
|
||||
$(DISTNAME)/doc/*.1 \
|
||||
$(DISTNAME)/doc/$(pkgname).info \
|
||||
$(DISTNAME)/doc/$(pkgname).texinfo \
|
||||
$(DISTNAME)/doc/$(pkgname).texi \
|
||||
$(DISTNAME)/testsuite/check.sh \
|
||||
$(DISTNAME)/testsuite/test.txt \
|
||||
$(DISTNAME)/testsuite/test.txt.tar \
|
||||
|
|
8
NEWS
8
NEWS
|
@ -1,9 +1,11 @@
|
|||
Changes in version 1.2:
|
||||
|
||||
The zutils executable has been removed. All utilities are now
|
||||
independent executables.
|
||||
|
||||
The new utility zupdate, which recompresses bzip2, gzip and xz files to
|
||||
lzip format, has been added.
|
||||
|
||||
The zutils executable has been removed. All utilities are now
|
||||
independent executables.
|
||||
|
||||
The exit status of zgrep should now be identical to that of grep.
|
||||
|
||||
"zutils.texinfo" has been renamed to "zutils.texi".
|
||||
|
|
2
README
2
README
|
@ -27,7 +27,7 @@ have been compressed. Decompressed is used to refer to data which has
|
|||
undergone the process of decompression.
|
||||
|
||||
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This file is free documentation: you have unlimited permission to copy,
|
||||
distribute and modify it.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* Arg_parser - POSIX/GNU command line argument parser. (C++ version)
|
||||
Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
|
||||
Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014
|
||||
Antonio Diaz Diaz.
|
||||
|
||||
This library is free software: you can redistribute it and/or modify
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* Arg_parser - POSIX/GNU command line argument parser. (C++ version)
|
||||
Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
|
||||
Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014
|
||||
Antonio Diaz Diaz.
|
||||
|
||||
This library is free software: you can redistribute it and/or modify
|
||||
|
|
8
configure
vendored
8
configure
vendored
|
@ -1,13 +1,13 @@
|
|||
#! /bin/sh
|
||||
# configure script for Zutils - Utilities dealing with compressed files
|
||||
# Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
# Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
#
|
||||
# This configure script is free software: you have unlimited permission
|
||||
# to copy, distribute and modify it.
|
||||
|
||||
pkgname=zutils
|
||||
pkgversion=1.2-pre3
|
||||
srctrigger=doc/${pkgname}.texinfo
|
||||
pkgversion=1.2
|
||||
srctrigger=doc/${pkgname}.texi
|
||||
|
||||
# clear some things potentially inherited from environment.
|
||||
LC_ALL=C
|
||||
|
@ -177,7 +177,7 @@ echo "GREP = ${GREP}"
|
|||
rm -f Makefile
|
||||
cat > Makefile << EOF
|
||||
# Makefile for Zutils - Utilities dealing with compressed files
|
||||
# Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
# Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
# This file was generated automatically by configure. Do not edit.
|
||||
#
|
||||
# This Makefile is free software: you have unlimited permission
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1.
|
||||
.TH ZCAT "1" "October 2013" "Zcat (zutils) 1.2-pre3" "User Commands"
|
||||
.TH ZCAT "1" "February 2014" "Zcat (zutils) 1.2" "User Commands"
|
||||
.SH NAME
|
||||
Zcat \- decompress and concatenate files to standard output
|
||||
.SH SYNOPSIS
|
||||
|
@ -84,7 +84,7 @@ Report bugs to zutils\-bug@nongnu.org
|
|||
.br
|
||||
Zutils home page: http://www.nongnu.org/zutils/zutils.html
|
||||
.SH COPYRIGHT
|
||||
Copyright \(co 2013 Antonio Diaz Diaz.
|
||||
Copyright \(co 2014 Antonio Diaz Diaz.
|
||||
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
|
||||
.br
|
||||
This is free software: you are free to change and redistribute it.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1.
|
||||
.TH ZCMP "1" "October 2013" "Zcmp (zutils) 1.2-pre3" "User Commands"
|
||||
.TH ZCMP "1" "February 2014" "Zcmp (zutils) 1.2" "User Commands"
|
||||
.SH NAME
|
||||
Zcmp \- decompress and compare two files byte by byte
|
||||
.SH SYNOPSIS
|
||||
|
@ -82,7 +82,7 @@ Report bugs to zutils\-bug@nongnu.org
|
|||
.br
|
||||
Zutils home page: http://www.nongnu.org/zutils/zutils.html
|
||||
.SH COPYRIGHT
|
||||
Copyright \(co 2013 Antonio Diaz Diaz.
|
||||
Copyright \(co 2014 Antonio Diaz Diaz.
|
||||
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
|
||||
.br
|
||||
This is free software: you are free to change and redistribute it.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1.
|
||||
.TH ZDIFF "1" "October 2013" "Zdiff (zutils) 1.2-pre3" "User Commands"
|
||||
.TH ZDIFF "1" "February 2014" "Zdiff (zutils) 1.2" "User Commands"
|
||||
.SH NAME
|
||||
Zdiff \- decompress and compare two files line by line
|
||||
.SH SYNOPSIS
|
||||
|
@ -109,7 +109,7 @@ Report bugs to zutils\-bug@nongnu.org
|
|||
.br
|
||||
Zutils home page: http://www.nongnu.org/zutils/zutils.html
|
||||
.SH COPYRIGHT
|
||||
Copyright \(co 2013 Antonio Diaz Diaz.
|
||||
Copyright \(co 2014 Antonio Diaz Diaz.
|
||||
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
|
||||
.br
|
||||
This is free software: you are free to change and redistribute it.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1.
|
||||
.TH ZGREP "1" "October 2013" "Zgrep (zutils) 1.2-pre3" "User Commands"
|
||||
.TH ZGREP "1" "February 2014" "Zgrep (zutils) 1.2" "User Commands"
|
||||
.SH NAME
|
||||
Zgrep \- search compressed files for a regular expression
|
||||
.SH SYNOPSIS
|
||||
|
@ -127,7 +127,7 @@ Report bugs to zutils\-bug@nongnu.org
|
|||
.br
|
||||
Zutils home page: http://www.nongnu.org/zutils/zutils.html
|
||||
.SH COPYRIGHT
|
||||
Copyright \(co 2013 Antonio Diaz Diaz.
|
||||
Copyright \(co 2014 Antonio Diaz Diaz.
|
||||
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
|
||||
.br
|
||||
This is free software: you are free to change and redistribute it.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1.
|
||||
.TH ZTEST "1" "October 2013" "Ztest (zutils) 1.2-pre3" "User Commands"
|
||||
.TH ZTEST "1" "February 2014" "Ztest (zutils) 1.2" "User Commands"
|
||||
.SH NAME
|
||||
Ztest \- verify integrity of compressed files
|
||||
.SH SYNOPSIS
|
||||
|
@ -58,7 +58,7 @@ Report bugs to zutils\-bug@nongnu.org
|
|||
.br
|
||||
Zutils home page: http://www.nongnu.org/zutils/zutils.html
|
||||
.SH COPYRIGHT
|
||||
Copyright \(co 2013 Antonio Diaz Diaz.
|
||||
Copyright \(co 2014 Antonio Diaz Diaz.
|
||||
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
|
||||
.br
|
||||
This is free software: you are free to change and redistribute it.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.37.1.
|
||||
.TH ZUPDATE "1" "October 2013" "Zupdate (zutils) 1.2-pre3" "User Commands"
|
||||
.TH ZUPDATE "1" "February 2014" "Zupdate (zutils) 1.2" "User Commands"
|
||||
.SH NAME
|
||||
Zupdate \- recompress bzip2, gzip, xz files to lzip files
|
||||
.SH SYNOPSIS
|
||||
|
@ -17,10 +17,10 @@ appropriate for long\-term data archiving.
|
|||
.PP
|
||||
If the lzip compressed version of a file already exists, the file is
|
||||
skipped unless the '\-\-force' option is given. In this case, if the
|
||||
comparison fails, an error is returned and the original file is not
|
||||
deleted. The operation of zupdate is meant to be safe and not produce
|
||||
any data loss. Therefore, existing lzip compressed files are never
|
||||
overwritten nor deleted.
|
||||
comparison with the existing lzip version fails, an error is returned
|
||||
and the original file is not deleted. The operation of zupdate is meant
|
||||
to be safe and not produce any data loss. Therefore, existing lzip
|
||||
compressed files are never overwritten nor deleted.
|
||||
.PP
|
||||
Exit status is 0 if all the compressed files were successfully
|
||||
recompressed (if needed), compared and deleted. Non\-zero otherwise.
|
||||
|
@ -72,7 +72,7 @@ Report bugs to zutils\-bug@nongnu.org
|
|||
.br
|
||||
Zutils home page: http://www.nongnu.org/zutils/zutils.html
|
||||
.SH COPYRIGHT
|
||||
Copyright \(co 2013 Antonio Diaz Diaz.
|
||||
Copyright \(co 2014 Antonio Diaz Diaz.
|
||||
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
|
||||
.br
|
||||
This is free software: you are free to change and redistribute it.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is zutils.info, produced by makeinfo version 4.13+ from
|
||||
zutils.texinfo.
|
||||
zutils.texi.
|
||||
|
||||
INFO-DIR-SECTION Data Compression
|
||||
START-INFO-DIR-ENTRY
|
||||
|
@ -12,7 +12,7 @@ File: zutils.info, Node: Top, Next: Introduction, Up: (dir)
|
|||
Zutils Manual
|
||||
*************
|
||||
|
||||
This manual is for Zutils (version 1.2-pre3, 11 October 2013).
|
||||
This manual is for Zutils (version 1.2, 1 February 2014).
|
||||
|
||||
* Menu:
|
||||
|
||||
|
@ -29,7 +29,7 @@ This manual is for Zutils (version 1.2-pre3, 11 October 2013).
|
|||
* Concept index:: Index of concepts
|
||||
|
||||
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This manual is free documentation: you have unlimited permission to
|
||||
copy, distribute and modify it.
|
||||
|
@ -607,10 +607,10 @@ long-term data archiving.
|
|||
|
||||
If the lzip compressed version of a file already exists, the file is
|
||||
skipped unless the '--force' option is given. In this case, if the
|
||||
comparison fails, an error is returned and the original file is not
|
||||
deleted. The operation of zupdate is meant to be safe and not produce
|
||||
any data loss. Therefore, existing lzip compressed files are never
|
||||
overwritten nor deleted.
|
||||
comparison with the existing lzip version fails, an error is returned
|
||||
and the original file is not deleted. The operation of zupdate is meant
|
||||
to be safe and not produce any data loss. Therefore, existing lzip
|
||||
compressed files are never overwritten nor deleted.
|
||||
|
||||
The names of the original files must have one of the following
|
||||
extensions: '.bz2', '.tbz', '.tbz2', '.gz', '.tgz', '.xz', '.txz'. The
|
||||
|
@ -629,8 +629,8 @@ recompressed (if needed), compared and deleted. Non-zero otherwise.
|
|||
'--force'
|
||||
Do not skip a file for which a lzip compressed version already
|
||||
exists. '--force' compares the content of the input file with the
|
||||
content of the lzip file and deletes the input file if both
|
||||
contents are identical.
|
||||
content of the existing lzip file and deletes the input file if
|
||||
both contents are identical.
|
||||
|
||||
'-k'
|
||||
'--keep'
|
||||
|
@ -675,7 +675,7 @@ for all eternity, if not longer.
|
|||
|
||||
If you find a bug in zutils, please send electronic mail to
|
||||
<zutils-bug@nongnu.org>. Include the version number, which you can find
|
||||
by running 'zcmp --version'.
|
||||
by running 'zupdate --version'.
|
||||
|
||||
|
||||
File: zutils.info, Node: Concept index, Prev: Problems, Up: Top
|
||||
|
@ -701,18 +701,18 @@ Concept index
|
|||
|
||||
|
||||
Tag Table:
|
||||
Node: Top225
|
||||
Node: Introduction1156
|
||||
Node: Common options3259
|
||||
Node: The zutilsrc file4508
|
||||
Node: Zcat5434
|
||||
Node: Zcmp7356
|
||||
Node: Zdiff9680
|
||||
Node: Zgrep12183
|
||||
Node: Ztest15151
|
||||
Node: Zupdate16375
|
||||
Node: Problems18708
|
||||
Node: Concept index19239
|
||||
Node: Top222
|
||||
Node: Introduction1154
|
||||
Node: Common options3257
|
||||
Node: The zutilsrc file4506
|
||||
Node: Zcat5432
|
||||
Node: Zcmp7354
|
||||
Node: Zdiff9678
|
||||
Node: Zgrep12181
|
||||
Node: Ztest15149
|
||||
Node: Zupdate16373
|
||||
Node: Problems18746
|
||||
Node: Concept index19280
|
||||
|
||||
End Tag Table
|
||||
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
@finalout
|
||||
@c %**end of header
|
||||
|
||||
@set UPDATED 11 October 2013
|
||||
@set VERSION 1.2-pre3
|
||||
@set UPDATED 1 February 2014
|
||||
@set VERSION 1.2
|
||||
|
||||
@dircategory Data Compression
|
||||
@direntry
|
||||
|
@ -49,7 +49,8 @@ This manual is for Zutils (version @value{VERSION}, @value{UPDATED}).
|
|||
@end menu
|
||||
|
||||
@sp 1
|
||||
Copyright @copyright{} 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright @copyright{} 2009, 2010, 2011, 2012, 2013, 2014
|
||||
Antonio Diaz Diaz.
|
||||
|
||||
This manual is free documentation: you have unlimited permission
|
||||
to copy, distribute and modify it.
|
||||
|
@ -660,10 +661,10 @@ long-term data archiving.
|
|||
|
||||
If the lzip compressed version of a file already exists, the file is
|
||||
skipped unless the @samp{--force} option is given. In this case, if the
|
||||
comparison fails, an error is returned and the original file is not
|
||||
deleted. The operation of zupdate is meant to be safe and not produce
|
||||
any data loss. Therefore, existing lzip compressed files are never
|
||||
overwritten nor deleted.
|
||||
comparison with the existing lzip version fails, an error is returned
|
||||
and the original file is not deleted. The operation of zupdate is meant
|
||||
to be safe and not produce any data loss. Therefore, existing lzip
|
||||
compressed files are never overwritten nor deleted.
|
||||
|
||||
The names of the original files must have one of the following
|
||||
extensions: @samp{.bz2}, @samp{.tbz}, @samp{.tbz2}, @samp{.gz},
|
||||
|
@ -687,8 +688,8 @@ Zupdate supports the following options:
|
|||
@itemx --force
|
||||
Do not skip a file for which a lzip compressed version already exists.
|
||||
@samp{--force} compares the content of the input file with the content
|
||||
of the lzip file and deletes the input file if both contents are
|
||||
identical.
|
||||
of the existing lzip file and deletes the input file if both contents
|
||||
are identical.
|
||||
|
||||
@item -k
|
||||
@itemx --keep
|
||||
|
@ -733,7 +734,7 @@ for all eternity, if not longer.
|
|||
|
||||
If you find a bug in zutils, please send electronic mail to
|
||||
@email{zutils-bug@@nongnu.org}. Include the version number, which you can
|
||||
find by running @w{@samp{zcmp --version}}.
|
||||
find by running @w{@samp{zupdate --version}}.
|
||||
|
||||
|
||||
@node Concept index
|
4
rc.cc
4
rc.cc
|
@ -1,5 +1,5 @@
|
|||
/* Zutils - Utilities dealing with compressed files
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -37,7 +37,7 @@ int verbosity = 0;
|
|||
namespace {
|
||||
|
||||
const char * const config_file_name = "zutilsrc";
|
||||
const char * const program_year = "2013";
|
||||
const char * const program_year = "2014";
|
||||
|
||||
std::string compressor_names[num_formats] =
|
||||
{ "bzip2", "gzip", "lzip", "xz" }; // default compressor names
|
||||
|
|
2
rc.h
2
rc.h
|
@ -1,5 +1,5 @@
|
|||
/* Zutils - Utilities dealing with compressed files
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* Zutils - Utilities dealing with compressed files
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#! /bin/sh
|
||||
# check script for Zutils - Utilities dealing with compressed files
|
||||
# Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
# Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
#
|
||||
# This script is free software: you have unlimited permission
|
||||
# to copy, distribute and modify it.
|
||||
|
@ -232,7 +232,7 @@ printf .
|
|||
printf .
|
||||
"${ZDIFF}" -N -q --format=bz2 in.bz2 2> /dev/null
|
||||
if [ $? = 2 ] ; then printf . ; else printf - ; fail=1 ; fi
|
||||
"${ZDIFF}" -N -q --format=,lz in.lz in.bz2 > /dev/null 2> /dev/null
|
||||
"${ZDIFF}" -N -q --format=,lz in.lz in.bz2 > /dev/null 2>&1
|
||||
if [ $? = 2 ] ; then printf . ; else printf - ; fail=1 ; fi
|
||||
"${ZDIFF}" -N --bad-option 2> /dev/null
|
||||
if [ $? = 2 ] ; then printf . ; else printf - ; fail=1 ; fi
|
||||
|
@ -347,7 +347,7 @@ cat in.bz2 > x.bz2 || framework_failure
|
|||
cat in.gz > x.gz || framework_failure
|
||||
"${ZUPDATE}" -N --bz2=bad_command x.bz2 2> /dev/null
|
||||
if [ $? = 1 ] ; then printf . ; else printf - ; fail=1 ; fi
|
||||
"${ZUPDATE}" -N --bz2='bzip2 --bad-option' x.bz2 > /dev/null 2> /dev/null
|
||||
"${ZUPDATE}" -N --bz2='bzip2 --bad-option' x.bz2 > /dev/null 2>&1
|
||||
if [ $? = 1 ] ; then printf . ; else printf - ; fail=1 ; fi
|
||||
"${ZUPDATE}" -N --gz=bad_command x.gz 2> /dev/null
|
||||
if [ $? = 1 ] ; then printf . ; else printf - ; fail=1 ; fi
|
||||
|
|
2
zcat.cc
2
zcat.cc
|
@ -1,5 +1,5 @@
|
|||
/* Zcat - decompress and concatenate files to standard output
|
||||
Copyright (C) 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
|
2
zcmp.cc
2
zcmp.cc
|
@ -1,5 +1,5 @@
|
|||
/* Zcmp - decompress and compare two files byte by byte
|
||||
Copyright (C) 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* Common code for Zcmp and Zdiff
|
||||
Copyright (C) 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -34,7 +34,7 @@ struct { const char * from; const char * to; } const known_extensions[] = {
|
|||
|
||||
int open_instream( const std::string & input_filename )
|
||||
{
|
||||
int infd = open( input_filename.c_str(), O_RDONLY | O_BINARY );
|
||||
const int infd = open( input_filename.c_str(), O_RDONLY | O_BINARY );
|
||||
if( infd < 0 )
|
||||
show_error2( "Can't open input file", input_filename.c_str() );
|
||||
return infd;
|
||||
|
|
2
zdiff.cc
2
zdiff.cc
|
@ -1,5 +1,5 @@
|
|||
/* Zdiff - decompress and compare two files line by line
|
||||
Copyright (C) 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
|
2
zgrep.cc
2
zgrep.cc
|
@ -1,5 +1,5 @@
|
|||
/* Zgrep - search compressed files for a regular expression
|
||||
Copyright (C) 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
|
4
ztest.cc
4
ztest.cc
|
@ -1,5 +1,5 @@
|
|||
/* Ztest - verify integrity of compressed files
|
||||
Copyright (C) 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -79,7 +79,7 @@ void show_help()
|
|||
|
||||
int open_instream( std::string & input_filename )
|
||||
{
|
||||
int infd = open( input_filename.c_str(), O_RDONLY | O_BINARY );
|
||||
const int infd = open( input_filename.c_str(), O_RDONLY | O_BINARY );
|
||||
if( infd < 0 )
|
||||
show_error2( "Can't open input file", input_filename.c_str() );
|
||||
return infd;
|
||||
|
|
22
zupdate.cc
22
zupdate.cc
|
@ -1,5 +1,5 @@
|
|||
/* Zupdate - recompress bzip2, gzip, xz files to lzip files
|
||||
Copyright (C) 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -60,10 +60,10 @@ void show_help()
|
|||
"appropriate for long-term data archiving.\n"
|
||||
"\nIf the lzip compressed version of a file already exists, the file is\n"
|
||||
"skipped unless the '--force' option is given. In this case, if the\n"
|
||||
"comparison fails, an error is returned and the original file is not\n"
|
||||
"deleted. The operation of zupdate is meant to be safe and not produce\n"
|
||||
"any data loss. Therefore, existing lzip compressed files are never\n"
|
||||
"overwritten nor deleted.\n"
|
||||
"comparison with the existing lzip version fails, an error is returned\n"
|
||||
"and the original file is not deleted. The operation of zupdate is meant\n"
|
||||
"to be safe and not produce any data loss. Therefore, existing lzip\n"
|
||||
"compressed files are never overwritten nor deleted.\n"
|
||||
"\nUsage: zupdate [options] [files]\n"
|
||||
"\nExit status is 0 if all the compressed files were successfully\n"
|
||||
"recompressed (if needed), compared and deleted. Non-zero otherwise.\n"
|
||||
|
@ -105,10 +105,14 @@ int cant_execute( const std::string & command, const int status )
|
|||
void set_permissions( const char * const rname, const struct stat & in_stats )
|
||||
{
|
||||
bool warning = false;
|
||||
// fchown will in many cases return with EPERM, which can be safely ignored.
|
||||
if( ( chown( rname, in_stats.st_uid, in_stats.st_gid ) != 0 &&
|
||||
errno != EPERM ) ||
|
||||
chmod( rname, in_stats.st_mode ) != 0 ) warning = true;
|
||||
const mode_t mode = in_stats.st_mode;
|
||||
// chown will in many cases return with EPERM, which can be safely ignored.
|
||||
if( chown( rname, in_stats.st_uid, in_stats.st_gid ) == 0 )
|
||||
{ if( chmod( rname, mode ) != 0 ) warning = true; }
|
||||
else
|
||||
if( errno != EPERM ||
|
||||
chmod( rname, mode & ~( S_ISUID | S_ISGID | S_ISVTX ) ) != 0 )
|
||||
warning = true;
|
||||
struct utimbuf t;
|
||||
t.actime = in_stats.st_atime;
|
||||
t.modtime = in_stats.st_mtime;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* Zutils - Utilities dealing with compressed files
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -96,7 +96,7 @@ int readblock( const int fd, uint8_t * const buf, const int size )
|
|||
const int n = read( fd, buf + size - rest, rest );
|
||||
if( n > 0 ) rest -= n;
|
||||
else if( n == 0 ) break; // EOF
|
||||
else if( errno != EINTR && errno != EAGAIN ) break;
|
||||
else if( errno != EINTR ) break;
|
||||
errno = 0;
|
||||
}
|
||||
return size - rest;
|
||||
|
@ -114,7 +114,7 @@ int writeblock( const int fd, const uint8_t * const buf, const int size )
|
|||
{
|
||||
const int n = write( fd, buf + size - rest, rest );
|
||||
if( n > 0 ) rest -= n;
|
||||
else if( n < 0 && errno != EINTR && errno != EAGAIN ) break;
|
||||
else if( n < 0 && errno != EINTR ) break;
|
||||
errno = 0;
|
||||
}
|
||||
return size - rest;
|
||||
|
|
2
zutils.h
2
zutils.h
|
@ -1,5 +1,5 @@
|
|||
/* Zutils - Utilities dealing with compressed files
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013 Antonio Diaz Diaz.
|
||||
Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Antonio Diaz Diaz.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
|
Loading…
Add table
Reference in a new issue