Commit Graph

1422 Commits

Author SHA1 Message Date
Lasse Collin 9e2f9e2d08 Tests: Add bad-1-lzma2-10.xz and also modify -9.xz. 2022-07-12 18:44:13 +03:00
Lasse Collin 00a4c69bbb Tests: Add bad-1-lzma2-9.xz. 2022-07-12 18:43:50 +03:00
Lasse Collin 1da2269b2e Tests: Add bad-1-check-crc32-2.xz. 2022-07-12 18:43:50 +03:00
Lasse Collin 11ceecb5e2 Scripts: Add zstd support to xzdiff. 2022-07-12 18:42:21 +03:00
Lasse Collin d655b8c9cb Scripts: Fix exit status of xzgrep.
Omit the -q option from xz, gzip, and bzip2. With xz this shouldn't
matter. With gzip it's important because -q makes gzip replace SIGPIPE
with exit status 2. With bzip2 it's important because with -q bzip2
is completely silent if input is corrupt while other decompressors
still give an error message.

Avoiding exit status 2 from gzip is important because bzip2 uses
exit status 2 to indicate corrupt input. Before this commit xzgrep
didn't recognize corrupt .bz2 files because xzgrep was treating
exit status 2 as SIGPIPE for gzip compatibility.

zstd still needs -q because otherwise it is noisy in normal
operation.

The code to detect real SIGPIPE didn't check if the exit status
was due to a signal (>= 128) and so could ignore some other exit
status too.
2022-07-12 18:30:56 +03:00
Lasse Collin 09c331b03c Scripts: Fix exit status of xzdiff/xzcmp.
This is a minor fix since this affects only the situation when
the files differ and the exit status is something else than 0.
In such case there could be SIGPIPE from a decompression tool
and that would result in exit status of 2 from xzdiff/xzcmp
while the correct behavior would be to return 1 or whatever
else diff or cmp may have returned.

This commit omits the -q option from xz/gzip/bzip2/lzop arguments.
I'm not sure why the -q was used in the first place, perhaps it
hides warnings in some situation that I cannot see at the moment.
Hopefully the removal won't introduce a new bug.

With gzip the -q option was harmful because it made gzip return 2
instead of >= 128 with SIGPIPE. Ignoring exit status 2 (warning
from gzip) isn't practical because bzip2 uses exit status 2 to
indicate corrupt input file. It's better if SIGPIPE results in
exit status >= 128.

With bzip2 the removal of -q seems to be good because with -q
it prints nothing if input is corrupt. The other tools aren't
silent in this situation even with -q. On the other hand, if
zstd support is added, it will need -q since otherwise it's
noisy in normal situations.

Thanks to Étienne Mollier and Sebastian Andrzej Siewior.
2022-07-12 18:30:56 +03:00
Lasse Collin b33a345cba Update THANKS. 2022-07-12 18:30:56 +03:00
H.J. Lu c01e29a933 liblzma: Enable Intel CET in x86 CRC assembly codes
When Intel CET is enabled, we need to include <cet.h> in assembly codes
to mark Intel CET support and add _CET_ENDBR to indirect jump targets.

Tested on Intel Tiger Lake under CET enabled Linux.
2022-07-12 18:30:56 +03:00
Lasse Collin 0983682f87 Update THANKS. 2022-07-12 18:30:56 +03:00
Lasse Collin 880596e4b8 Build: Don't build bundles on Apple OSes.
Thanks to Daniel Packard.
2022-07-12 18:30:56 +03:00
Lasse Collin 29050c79f1 Update THANKS. 2022-07-12 18:30:56 +03:00
Adam Borowski 94fd724749 Scripts: Add zstd support to xzgrep.
Thanks to Adam Borowski.
2022-07-12 18:30:56 +03:00
Lasse Collin 13c58ac13e CMake: Fix compatibility with CMake 3.13.
The syntax "if(DEFINED CACHE{FOO})" requires CMake 3.14.
In some other places the code treats the cache variables
like normal variables already (${FOO} or if(FOO) is used,
not ${CACHE{FOO}).

Thanks to ygrek for reporting the bug on IRC.
2022-07-12 18:11:36 +03:00
Lasse Collin 8f7d3345a7 Update THANKS. 2022-07-12 18:10:08 +03:00
Lasse Collin ca7bcdb30f xz: Avoid unneeded \f escapes on the man page.
I don't want to use \c in macro arguments but groff_man(7)
suggests that \f has better portability. \f would be needed
for the .TP strings for portability reasons anyway.

Thanks to Bjarni Ingi Gislason.
2022-07-12 18:10:08 +03:00
Lasse Collin 3b40a0792e xz: Use non-breaking spaces when intentionally using more than one space.
This silences some style checker warnings. Seems that spaces
in the beginning of a line don't need this treatment.

Thanks to Bjarni Ingi Gislason.
2022-07-12 18:10:08 +03:00
Lasse Collin d85699c36d xz: Protect the ellipsis (...) on the man page with \&.
This does it only when ... appears outside macro calls.

Thanks to Bjarni Ingi Gislason.
2022-07-12 18:10:08 +03:00
Lasse Collin d996ae6617 xz: Avoid the abbreviation "e.g." on the man page.
A few are simply omitted, most are converted to "for example"
and surrounded with commas. Sounds like that this is better
style, for example, man-pages(7) recommends avoiding such
abbreviations except in parenthesis.

Thanks to Bjarni Ingi Gislason.
2022-07-12 18:09:21 +03:00
Lasse Collin d16d0d198a xz man page: Change \- (minus) to \(en (en-dash) for a numeric range.
Docs of ancient troff/nroff mention \(em (em-dash) but not \(en
and \- was used for both minus and en-dash. I don't know how
portable \(en is nowadays but it can be changed back if someone
complains. At least GNU groff and OpenBSD's mandoc support it.

Thanks to Bjarni Ingi Gislason for the patch.
2022-07-12 18:09:21 +03:00
Lasse Collin 3acf1adfc7 Windows: Fix building of resource files when config.h isn't used.
Now CMake + Visual Studio works for building liblzma.dll.

Thanks to Markus Rickert.
2022-07-12 18:09:21 +03:00
Lasse Collin adba06e649 src/scripts/xzgrep.1: Filenames to xzgrep are optional.
xzgrep --help was correct already.
2022-07-12 18:09:21 +03:00
Lasse Collin 7be1dcf858 Translations: Add Portuguese translation.
Jia Tan made white-space changes and also changed "Language: pt_BR\n"
to pt. The translator wasn't reached so I'm hoping these changes
are OK and will commit it without translator's approval.

Thanks to Pedro Albuquerque and Jia Tan.
2022-07-12 17:59:41 +03:00
Bjarni Ingi Gislason 3f94d2a568 src/script/xzgrep.1: Remove superfluous '.RB'
Output is from: test-groff -b -e -mandoc -T utf8 -rF0 -t -w w -z

  [ "test-groff" is a developmental version of "groff" ]

Input file is ./src/scripts/xzgrep.1

<src/scripts/xzgrep.1>:20 (macro RB): only 1 argument, but more are expected
<src/scripts/xzgrep.1>:23 (macro RB): only 1 argument, but more are expected
<src/scripts/xzgrep.1>:26 (macro RB): only 1 argument, but more are expected
<src/scripts/xzgrep.1>:29 (macro RB): only 1 argument, but more are expected
<src/scripts/xzgrep.1>:32 (macro RB): only 1 argument, but more are expected

 "abc..." does not mean the same as "abc ...".

  The output from nroff and troff is unchanged except for the space
between "file" and "...".

Signed-off-by: Bjarni Ingi Gislason <bjarniig@rhi.hi.is>
2022-07-12 17:42:59 +03:00
Bjarni Ingi Gislason 725d9791c9 xzgrep.1: Delete superfluous '.PP'
Summary:

mandoc -T lint xzgrep.1 :
mandoc: xzgrep.1:79:2: WARNING: skipping paragraph macro: PP empty

  There is no change in the output of "nroff" and "troff".

Signed-off-by: Bjarni Ingi Gislason <bjarniig@rhi.hi.is>
2022-07-12 17:42:59 +03:00
Bjarni Ingi Gislason 55c2555c5d src/xz/xz.1: Correct misused two-fonts macros
Output is from: test-groff -b -e -mandoc -T utf8 -rF0 -t -w w -z

  [ "test-groff" is a developmental version of "groff" ]

Input file is ./src/xz/xz.1

<src/xz/xz.1>:408 (macro BR): only 1 argument, but more are expected
<src/xz/xz.1>:1009 (macro BR): only 1 argument, but more are expected
<src/xz/xz.1>:1743 (macro BR): only 1 argument, but more are expected
<src/xz/xz.1>:1920 (macro BR): only 1 argument, but more are expected
<src/xz/xz.1>:2213 (macro BR): only 1 argument, but more are expected

  Output from nroff and troff is unchanged, except for a font change of a
full stop (.).

Signed-off-by: Bjarni Ingi Gislason <bjarniig@rhi.hi.is>
2022-07-12 17:42:59 +03:00
Lasse Collin 55e3a8e0e4 Translations: Add Serbian translation.
Quite a few white-space changes were made by Jia Tan to make
this look good. Contacting the translator didn't succeed so
I'm committing this without getting translator's approval.

Thanks to Мирослав Николић (Miroslav Nikolic) and Jia Tan.
2022-07-10 21:16:40 +03:00
Lasse Collin 4e04279cbe Translations: Add Swedish translation.
Thanks to Sebastian Rasmussen and Jia Tan.
2022-07-04 23:51:36 +03:00
Lasse Collin 27f55e96b0 Translations: Add Esperanto translation.
Thanks to Keith Bowes and Jia Tan.
2022-07-04 23:40:27 +03:00
Lasse Collin be31be9e8f Translations: Add Catalan translation.
Thanks to Jordi Mas and Jia Tan.
2022-07-01 00:22:33 +03:00
Lasse Collin 30e3ad040f Translations: Add Ukrainian translation.
Thanks to Yuri Chornoivan and Jia Tan.
2022-06-30 17:47:08 +03:00
Lasse Collin f2e2cce49f Translators: Add Romanian translation.
Thanks to Remus-Gabriel Chelu and Jia Tan.
2022-06-30 17:45:26 +03:00
Lasse Collin a12fd5bad2 Translations: Update Brazilian Portuguese translation.
One msgstr was changed. The diff is long due to changes
in the source code line numbers in the comments.

Thanks to Rafael Fontenelle.
2022-06-29 18:33:32 +03:00
Lasse Collin dd713288d2 Translations: Add Croatian translation.
Thanks to Božidar Putanec and Jia Tan.
2022-06-29 18:04:44 +03:00
Lasse Collin 016980f269 Translations: Add Spanish translation.
Thanks to Cristian Othón Martínez Vera and Jia Tan.
2022-06-29 17:58:48 +03:00
Lasse Collin 4fe9578c3a Translations: Add Korean translation.
Thanks to Seong-ho Cho and Jia Tan.
2022-06-29 17:49:43 +03:00
Lasse Collin cf1ec5518e v5.2-specific typo fix from fossies.org. 2020-03-23 18:09:40 +02:00
Lasse Collin 968bbfea09 Typo fixes from fossies.org.
https://fossies.org/linux/misc/xz-5.2.5.tar.xz/codespell.html
2020-03-23 18:08:31 +02:00
Lasse Collin 2327a461e1 Bump version and soname for 5.2.5. 2020-03-17 16:27:42 +02:00
Lasse Collin 3be82d2f7d Update NEWS for 5.2.5. 2020-03-17 16:26:04 +02:00
Lasse Collin ab3e57539c Translations: Rebuild cs.po to avoid incorrect fuzzy strings.
"make dist" updates the .po files and the fuzzy strings would
result in multiple very wrong translations.
2020-03-16 21:57:21 +02:00
Lasse Collin 3a6f38309d README: Update outdated sections. 2020-03-16 20:01:47 +02:00
Lasse Collin 9cc0901798 README: Mention that translatable strings will change after 5.2.x. 2020-03-16 19:46:27 +02:00
Lasse Collin cc16357424 README: Mention that man pages can be translated. 2020-03-16 19:39:56 +02:00
Lasse Collin ca261994ed Translations: Add partial Danish translation.
I made a few minor white space changes without getting them
approved by the Danish translation team.
2020-03-16 17:30:39 +02:00
Lasse Collin 51cd5d051f Update INSTALL.generic from Automake 1.16.1. 2020-03-16 16:43:45 +02:00
Lasse Collin 69d694e5f1 Update INSTALL for Windows and DOS and add preliminary info for z/OS. 2020-03-15 18:18:29 +02:00
Lasse Collin 2c3b1bb80a Build: Update m4/ax_pthread.m4 from Autoconf Archive (again). 2020-03-15 18:18:29 +02:00
Lasse Collin 74a5af180a xz: Never use thousand separators in DJGPP builds.
DJGPP 2.05 added support for thousands separators but it's
broken at least under WinXP with Finnish locale that uses
a non-breaking space as the thousands separator. Workaround
by disabling thousands separators for DJGPP builds.
2020-03-11 22:38:25 +02:00
Lasse Collin ceba0d25e8 DOS: Update dos/Makefile for DJGPP 2.05.
It doesn't need -fgnu89-inline like 2.04beta did.
2020-03-11 22:38:25 +02:00
Lasse Collin 29e5bd7161 DOS: Update instructions in dos/INSTALL.txt. 2020-03-11 22:38:25 +02:00