Rebased to version 5.2.5 (#1818418)

This commit is contained in:
Ondrej Dubaj 2020-03-30 11:42:30 +02:00
parent d98ae5b5cb
commit a06715cb23
8 changed files with 8 additions and 231 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
/xz-5.2.4.tar.xz
/xz-5.2.5.tar.xz

View File

@ -1 +1 @@
SHA512 (xz-5.2.4.tar.xz) = 00db7dd31a61541b1ce6946e0f21106f418dd1ac3f27cdb8682979cbc3bd777cd6dd1f04f9ba257a0a7e24041e15ca40d0dd5c130380dce62280af67a0beb97f
SHA512 (xz-5.2.5.tar.xz) = 59266068a51cb616eb31b67cd8f07ffeb2288d1391c61665ae2ec6814465afac80fec69248f6a2f2db45b44475af001296a99af6a32287226a9c41419173ccbb

View File

@ -1,13 +0,0 @@
diff --git a/src/scripts/xzless.in b/src/scripts/xzless.in
index a3da697..288dd87 100644
--- a/src/scripts/xzless.in
+++ b/src/scripts/xzless.in
@@ -46,7 +46,7 @@ if test "${LESSMETACHARS+set}" != set; then
LESSMETACHARS="$space$tab$nl'"';*?"()<>[|&^`#\$%=~'
fi
-if test "$(less -V | { read ver && echo ${ver#less }; })" -ge 429; then
+if test "$(less -V | { read less ver re && echo ${ver}; })" -ge 429; then
# less 429 or later: LESSOPEN pipe will be used on
# standard input if $LESSOPEN begins with |-.
LESSOPEN="|-$xz -cdfq -- %s"

View File

@ -1,81 +0,0 @@
diff --git a/src/xz/message.c b/src/xz/message.c
index abbd171..ce953ac 100644
--- a/src/xz/message.c
+++ b/src/xz/message.c
@@ -1110,7 +1110,8 @@ message_help(bool long_help)
puts(_(
" -z, --compress force compression\n"
-" -d, --decompress force decompression\n"
+" -d, --decompress, --uncompress\n"
+" force decompression\n"
" -t, --test test compressed file integrity\n"
" -l, --list list information about .xz files"));
@@ -1120,7 +1121,8 @@ message_help(bool long_help)
puts(_(
" -k, --keep keep (don't delete) input files\n"
" -f, --force force overwrite of output file and (de)compress links\n"
-" -c, --stdout write to standard output and don't delete input files"));
+" -c, --stdout, --to-stdout\n"
+" write to standard output and don't delete input files"));
if (long_help) {
puts(_(
@@ -1152,6 +1154,10 @@ message_help(bool long_help)
" -e, --extreme try to improve compression ratio by using more CPU time;\n"
" does not affect decompressor memory requirements"));
+ puts(_(
+" -T, --threads=NUM use at most NUM threads; the default is 1; set to 0\n"
+" to use the number of processor cores"));
+
if (long_help) {
// FIXME? Mention something about threading?
puts(_(
@@ -1166,7 +1172,7 @@ message_help(bool long_help)
puts(_( // xgettext:no-c-format
" --memlimit-compress=LIMIT\n"
" --memlimit-decompress=LIMIT\n"
-" -M, --memlimit=LIMIT\n"
+" -M, --memlimit=LIMIT, (old alias --memory=LIMIT)\n"
" set memory usage limit for compression, decompression,\n"
" or both; LIMIT is in bytes, % of RAM, or 0 for defaults"));
diff --git a/src/xz/xz.1 b/src/xz/xz.1
index 0368f05..e5da140 100644
--- a/src/xz/xz.1
+++ b/src/xz/xz.1
@@ -912,7 +912,7 @@ See
for possible ways to specify the
.IR limit .
.TP
-\fB\-M\fR \fIlimit\fR, \fB\-\-memlimit=\fIlimit\fR, \fB\-\-memory=\fIlimit
+\fB\-M\fR \fIlimit\fR, \fB\-\-memlimit=\fIlimit\fR, (old alias \fB\-\-memory=\fIlimit\fR)
This is equivalent to specifying \fB\-\-memlimit\-compress=\fIlimit
\fB\-\-memlimit\-decompress=\fIlimit\fR.
.TP
diff --git a/src/xzdec/xzdec.c b/src/xzdec/xzdec.c
index b7830db..48ac1fe 100644
--- a/src/xzdec/xzdec.c
+++ b/src/xzdec/xzdec.c
@@ -64,13 +64,15 @@ help(void)
"Usage: %s [OPTION]... [FILE]...\n"
"Uncompress files in the ." TOOL_FORMAT " format to the standard output.\n"
"\n"
-" -c, --stdout (ignored)\n"
-" -d, --decompress (ignored)\n"
-" -k, --keep (ignored)\n"
" -q, --quiet specify *twice* to suppress errors\n"
-" -Q, --no-warn (ignored)\n"
" -h, --help display this help and exit\n"
" -V, --version display the version number and exit\n"
+" -c, --stdout, --to-stdout\n"
+" ignored, data are always written to standard output\n"
+" -d, --decompress, --uncompress\n"
+" ignored, only decompression is supported\n"
+" -k, --keep ignored, we never create/remove any files\n"
+" -Q, --no-warn ignored, we never use exit status 2\n"
"\n"
"With no FILE, or when FILE is -, read standard input.\n"
"\n"

View File

@ -1,23 +0,0 @@
commit 5019413a055ce29e660dbbf15e02443cb5a26c59
Author: Jeff Bastian <jbastian@redhat.com>
AuthorDate: Wed Apr 3 13:59:17 2013 +0200
Commit: Lasse Collin <lasse.collin@tukaani.org>
CommitDate: Fri Apr 5 19:14:50 2013 +0300
xzgrep: make the '-h' option to be --no-filename equivalent
* src/scripts/xzgrep.in: Accept the '-h' option in argument parsing.
diff --git a/src/scripts/xzgrep.in b/src/scripts/xzgrep.in
index d8e9bb5..951266b 100644
--- a/src/scripts/xzgrep.in
+++ b/src/scripts/xzgrep.in
@@ -109,7 +109,7 @@ while test $# -ne 0; do
files_with_matches=1;;
(-L | --files-witho*)
files_without_matches=1;;
- (--no-f*)
+ (-h | --no-f*)
no_filename=1;;
(-V | --v | --ve | --ver | --vers | --versi | --versio | --version)
echo "$version" || exit 2

View File

@ -1,60 +0,0 @@
commit 1e60f2c0a0ee6c18b02943ce56214799a70aac26 (HEAD, origin/master, origin/HEAD, master)
Author: Lasse Collin <lasse.collin@tukaani.org>
AuthorDate: Wed Jun 11 21:03:25 2014 +0300
Commit: Lasse Collin <lasse.collin@tukaani.org>
CommitDate: Wed Jun 11 21:03:25 2014 +0300
xzgrep: Add a test for the previous fix.
This is a simplified version of Pavel Raiskup's
original patch.
diff --git a/tests/test_scripts.sh b/tests/test_scripts.sh
index 293929e..7ac1fea 100755
--- a/tests/test_scripts.sh
+++ b/tests/test_scripts.sh
@@ -12,16 +12,18 @@
# If scripts weren't built, this test is skipped.
XZ=../src/xz/xz
XZDIFF=../src/scripts/xzdiff
-test -x "$XZ" || XZ=
-test -x "$XZDIFF" || XZDIFF=
-if test -z "$XZ" || test -z "$XZDIFF"; then
+XZGREP=../src/scripts/xzgrep
+
+for i in XZ XZDIFF XZGREP; do
+ eval test -x "\$$i" && continue
(exit 77)
exit 77
-fi
+done
PATH=`pwd`/../src/xz:$PATH
export PATH
+test -z "$srcdir" && srcdir=.
preimage=$srcdir/files/good-1-check-crc32.xz
samepostimage=$srcdir/files/good-1-check-crc64.xz
otherpostimage=$srcdir/files/good-1-lzma2-1.xz
@@ -50,5 +52,21 @@ if test "$status" != 2 ; then
exit 1
fi
+# The exit status must be 0 when a match was found at least from one file,
+# and 1 when no match was found in any file.
+for pattern in el Hello NOMATCH; do
+ for opts in "" "-l" "-h" "-H"; do
+ "$XZGREP" $opts $pattern \
+ "$srcdir/files/good-1-lzma2-1.xz" \
+ "$srcdir/files/good-2-lzma2.xz" > /dev/null 2>&1
+ status=$?
+ test $status = 0 && test $pattern != NOMATCH && continue
+ test $status = 1 && test $pattern = NOMATCH && continue
+ echo "wrong exit status from xzgrep"
+ (exit 1)
+ exit 1
+ done
+done
+
(exit 0)
exit 0

View File

@ -1,50 +0,0 @@
commit ceca37901783988204caaf40dff4623d535cc789
Author: Lasse Collin <lasse.collin@tukaani.org>
AuthorDate: Wed Jun 11 20:43:28 2014 +0300
Commit: Lasse Collin <lasse.collin@tukaani.org>
CommitDate: Wed Jun 11 20:43:28 2014 +0300
xzgrep: exit 0 when at least one file matches.
Mimic the original grep behavior and return exit_success when
at least one xz compressed file matches given pattern.
Original bugreport:
https://bugzilla.redhat.com/show_bug.cgi?id=1108085
Thanks to Pavel Raiskup for the patch.
diff --git a/src/scripts/xzgrep.in b/src/scripts/xzgrep.in
index 951266b..018915f 100644
--- a/src/scripts/xzgrep.in
+++ b/src/scripts/xzgrep.in
@@ -147,7 +147,9 @@ if test $# -eq 0; then
fi
exec 3>&1
-res=0
+
+# res=1 means that no file matched yet
+res=1
for i; do
case $i in
@@ -195,8 +197,17 @@ for i; do
fi >&3 5>&-
)
r=$?
+
+ # fail occured previously, nothing worse can happen
+ test $res -gt 1 && continue
+
test "$xz_status" -eq 0 || test "$xz_status" -eq 2 \
|| test "$(kill -l "$xz_status" 2> /dev/null)" = "PIPE" || r=2
- test $res -lt $r && res=$r
+
+ # still no match
+ test $r -eq 1 && continue
+
+ # 0 == match, >=2 == fail
+ res=$r
done
exit $res

View File

@ -3,8 +3,8 @@
Summary: LZMA compression utilities
Name: xz
Version: 5.2.4
Release: 8%{?dist}
Version: 5.2.5
Release: 1%{?dist}
# Scripts xz{grep,diff,less,more} and symlinks (copied from gzip) are
# GPLv2+, binaries are Public Domain (linked against LGPL getopt_long but its
@ -152,9 +152,13 @@ LD_LIBRARY_PATH=$PWD/src/liblzma/.libs make check
%files lzma-compat
%{_bindir}/*lz*
%{_mandir}/man1/*lz*
%{_mandir}/de/man1/*
%changelog
* Mon Mar 30 2020 Ondrej Dubaj <odubaj@redhat.com> - 5.2.5-1
- Rebase to version 5.2.5 (#1818418)
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.4-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild