Skip to content

Commit e425530

Browse files
committed
Update xz to 5.2.5.
1 parent fdebf4b commit e425530

File tree

222 files changed

+26371
-19513
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

222 files changed

+26371
-19513
lines changed

ABOUT-NLS

Lines changed: 1 addition & 1282 deletions
Large diffs are not rendered by default.

COPYING

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ XZ Utils Licensing
4747
naturally it is not legally required. Here is an example of a good
4848
notice to put into "about box" or into documentation:
4949

50-
This software includes code from XZ Utils <http://tukaani.org/xz/>.
50+
This software includes code from XZ Utils <https://tukaani.org/xz/>.
5151

5252
The following license texts are included in the following files:
5353
- COPYING.LGPLv2.1: GNU Lesser General Public License version 2.1

ChangeLog

Lines changed: 4765 additions & 13186 deletions
Large diffs are not rendered by default.

Doxyfile.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -564,7 +564,7 @@ REFERENCES_RELATION = YES
564564
# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
565565
# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
566566
# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
567-
# link to the source code. Otherwise they will link to the documentstion.
567+
# link to the source code. Otherwise they will link to the documentation.
568568

569569
REFERENCES_LINK_SOURCE = YES
570570

INSTALL

Lines changed: 76 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ XZ Utils Installation
1414
1.2.6. Tru64
1515
1.2.7. Windows
1616
1.2.8. DOS
17+
1.2.9. z/OS
1718
1.3. Adding support for new platforms
1819
2. configure options
1920
2.1. Static vs. dynamic linking of liblzma
@@ -123,8 +124,11 @@ XZ Utils Installation
123124
as an argument to the configure script.
124125

125126
test_scripts.sh in "make check" may fail if good enough tools are
126-
missing from PATH (/usr/xpg4/bin or /usr/xpg6/bin). See sections
127-
4.5 and 3.2 for more information.
127+
missing from PATH (/usr/xpg4/bin or /usr/xpg6/bin). Nowadays
128+
/usr/xpg4/bin is added to the script PATH by default on Solaris
129+
(see --enable-path-for-scripts=PREFIX in section 2), but old xz
130+
releases needed extra steps. See sections 4.5 and 3.2 for more
131+
information.
128132

129133

130134
1.2.6. Tru64
@@ -136,8 +140,22 @@ XZ Utils Installation
136140

137141
1.2.7. Windows
138142

139-
Building XZ Utils on Windows is supported under the following
140-
environments:
143+
If it is enough to build liblzma (no command line tools):
144+
145+
- There is experimental CMake support. As it is, it should be
146+
good enough to build static liblzma with Visual Studio.
147+
Building liblzma.dll might work too (if it doesn't, it should
148+
be fixed). The CMake support may work with MinGW or MinGW-w64.
149+
Read the comment in the beginning of CMakeLists.txt before
150+
running CMake!
151+
152+
- There are Visual Studio project files under the "windows"
153+
directory. See windows/INSTALL-MSVC.txt. In the future the
154+
project files will be removed when CMake support is good
155+
enough. Thus, please test the CMake version and help fix
156+
possible issues.
157+
158+
To build also the command line tools:
141159

142160
- MinGW-w64 + MSYS (32-bit and 64-bit x86): This is used
143161
for building the official binary packages for Windows.
@@ -153,9 +171,6 @@ XZ Utils Installation
153171
which is safe under older Cygwin versions. You can check
154172
the Cygwin version with the command "cygcheck -V".
155173

156-
- Microsoft Visual Studio 2013 update 2 or later (MSVC for short):
157-
See windows/INSTALL-MSVC.txt for more information.
158-
159174
It may be possible to build liblzma with other toolchains too, but
160175
that will probably require writing a separate makefile. Building
161176
the command line tools with non-GNU toolchains will be harder than
@@ -168,12 +183,31 @@ XZ Utils Installation
168183

169184
1.2.8. DOS
170185

171-
There is an experimental Makefile in the "dos" directory to build
172-
XZ Utils on DOS using DJGPP. Support for long file names (LFN) is
173-
needed. See dos/README for more information.
186+
There is a Makefile in the "dos" directory to build XZ Utils on
187+
DOS using DJGPP. Support for long file names (LFN) is needed at
188+
build time but the resulting xz.exe works without LFN support too.
189+
See dos/INSTALL.txt and dos/README.txt for more information.
190+
191+
192+
1.2.9. z/OS
193+
194+
To build XZ Utils on z/OS UNIX System Services using xlc, pass
195+
these options to the configure script: CC='xlc -qhaltonmsg=CCN3296'
196+
CPPFLAS='-D_UNIX03_THREADS -D_XOPEN_SOURCE=600'. The first makes
197+
xlc throw an error if a header file is missing, which is required
198+
to make the tests in configure work. The CPPFLAGS are needed to
199+
get pthread support (some other CPPFLAGS may work too; if there
200+
are problems, try -D_UNIX95_THREADS instead of -D_UNIX03_THREADS).
174201

175-
GNU Autotools based build hasn't been tried on DOS. If you try, I
176-
would like to hear if it worked.
202+
test_scripts.sh in "make check" will fail even if the scripts
203+
actually work because the test data includes compressed files
204+
with US-ASCII text.
205+
206+
No other tests should fail. If test_files.sh fails, check that
207+
the included .xz test files weren't affected by EBCDIC conversion.
208+
209+
XZ Utils doesn't have code to detect the amount of physical RAM and
210+
number of CPU cores on z/OS.
177211

178212

179213
1.3. Adding support for new platforms
@@ -400,12 +434,6 @@ XZ Utils Installation
400434
one thread, something bad may happen.
401435

402436
--enable-sandbox=METHOD
403-
This feature is EXPERIMENTAL in the XZ Utils 5.2.x and
404-
disabled by default. If you test this, look especially
405-
if message translations and locale-specific decimal and
406-
thousand separators (e.g. xz --list foo.xz) work the
407-
same way as they do without sandboxing.
408-
409437
There is limited sandboxing support in the xz tool. If
410438
built with sandbox support, it's used automatically when
411439
(de)compressing exactly one file to standard output and
@@ -443,6 +471,23 @@ XZ Utils Installation
443471
and should work on most systems. This has no effect on the
444472
resulting binaries.
445473

474+
--enable-path-for-scripts=PREFIX
475+
If PREFIX isn't empty, PATH=PREFIX:$PATH will be set in
476+
the beginning of the scripts (xzgrep and others).
477+
The default is empty except on Solaris the default is
478+
/usr/xpg4/bin.
479+
480+
This can be useful if the default PATH doesn't contain
481+
modern POSIX tools (as can be the case on Solaris) or if
482+
one wants to ensure that the correct xz binary is in the
483+
PATH for the scripts. Note that the latter use can break
484+
"make check" if the prefixed PATH causes a wrong xz binary
485+
(other than the one that was just built) to be used.
486+
487+
Older xz releases support a different method for setting
488+
the PATH for the scripts. It is described in section 3.2
489+
and is supported in this xz version too.
490+
446491

447492
2.1. Static vs. dynamic linking of liblzma
448493

@@ -515,11 +560,17 @@ XZ Utils Installation
515560

516561
3.2. PATH
517562

563+
The method described below is supported by older xz releases.
564+
It is supported by the current version too, but the newer
565+
--enable-path-for-scripts=PREFIX described in section 2 may be
566+
more convenient.
567+
518568
The scripts assume that the required tools (standard POSIX utilities,
519-
mktemp, and xz) are in PATH; the scripts don't set the PATH themselves.
520-
Some people like this while some think this is a bug. Those in the
521-
latter group can easily patch the scripts before running the configure
522-
script by taking advantage of a placeholder line in the scripts.
569+
mktemp, and xz) are in PATH; the scripts don't set the PATH themselves
570+
(except as described for --enable-path-for-scripts=PREFIX). Some
571+
people like this while some think this is a bug. Those in the latter
572+
group can easily patch the scripts before running the configure script
573+
by taking advantage of a placeholder line in the scripts.
523574

524575
For example, to make the scripts prefix /usr/bin:/bin to PATH:
525576

@@ -593,8 +644,9 @@ XZ Utils Installation
593644
some tools are missing from the current PATH or the tools lack
594645
support for some POSIX features. This can happen at least on
595646
Solaris where the tools in /bin may be ancient but good enough
596-
tools are available in /usr/xpg4/bin or /usr/xpg6/bin. One fix
597-
for this problem is described in section 3.2 of this file.
647+
tools are available in /usr/xpg4/bin or /usr/xpg6/bin. For possible
648+
fixes, see --enable-path-for-scripts=PREFIX in section 2 and the
649+
older alternative method described in section 3.2 of this file.
598650

599651
If tests other than test_scripts.sh fail, a likely reason is that
600652
libtool links the test programs against an installed version of

0 commit comments

Comments
 (0)