Index: head/contrib/xz/COPYING
===================================================================
--- head/contrib/xz/COPYING (revision 333782)
+++ head/contrib/xz/COPYING (revision 333783)
@@ -1,65 +1,65 @@
XZ Utils Licensing
==================
Different licenses apply to different files in this package. Here
is a rough summary of which licenses apply to which parts of this
package (but check the individual files to be sure!):
- liblzma is in the public domain.
- xz, xzdec, and lzmadec command line tools are in the public
domain unless GNU getopt_long had to be compiled and linked
in from the lib directory. The getopt_long code is under
GNU LGPLv2.1+.
- The scripts to grep, diff, and view compressed files have been
adapted from gzip. These scripts and their documentation are
under GNU GPLv2+.
- All the documentation in the doc directory and most of the
XZ Utils specific documentation files in other directories
are in the public domain.
- Translated messages are in the public domain.
- The build system contains public domain files, and files that
are under GNU GPLv2+ or GNU GPLv3+. None of these files end up
in the binaries being built.
- Test files and test code in the tests directory, and debugging
utilities in the debug directory are in the public domain.
- The extra directory may contain public domain files, and files
that are under various free software licenses.
You can do whatever you want with the files that have been put into
the public domain. If you find public domain legally problematic,
take the previous sentence as a license grant. If you still find
the lack of copyright legally problematic, you have too many
lawyers.
As usual, this software is provided "as is", without any warranty.
If you copy significant amounts of public domain code from XZ Utils
into your project, acknowledging this somewhere in your software is
polite (especially if it is proprietary, non-free software), but
naturally it is not legally required. Here is an example of a good
notice to put into "about box" or into documentation:
- This software includes code from XZ Utils .
+ This software includes code from XZ Utils .
The following license texts are included in the following files:
- COPYING.LGPLv2.1: GNU Lesser General Public License version 2.1
- COPYING.GPLv2: GNU General Public License version 2
- COPYING.GPLv3: GNU General Public License version 3
Note that the toolchain (compiler, linker etc.) may add some code
pieces that are copyrighted. Thus, it is possible that e.g. liblzma
binary wouldn't actually be in the public domain in its entirety
even though it contains no copyrighted code from the XZ Utils source
package.
If you have questions, don't hesitate to ask the author(s) for more
information.
Index: head/contrib/xz/ChangeLog
===================================================================
--- head/contrib/xz/ChangeLog (revision 333782)
+++ head/contrib/xz/ChangeLog (revision 333783)
@@ -1,15368 +1,5615 @@
+commit b5be61cc06088bb07f488f9baf7d447ff47b37c1
+Author: Lasse Collin
+Date: 2018-04-29 19:00:06 +0300
+
+ Bump version and soname for 5.2.4.
+
+ src/liblzma/Makefile.am | 2 +-
+ src/liblzma/api/lzma/version.h | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+commit c47fa6d06745bb2e99866e76b81ac7a9c5a8bfec
+Author: Lasse Collin
+Date: 2018-04-29 18:48:00 +0300
+
+ extra/scanlzma: Fix compiler warnings.
+
+ extra/scanlzma/scanlzma.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+commit 7b350fe21aa4fd6495a3b6188a40e3f1ae7c0edf
+Author: Lasse Collin
+Date: 2018-04-29 18:15:37 +0300
+
+ Add NEWS for 5.2.4.
+
+ NEWS | 27 +++++++++++++++++++++++++++
+ 1 file changed, 27 insertions(+)
+
+commit 5801591162a280aa52d156dfde42c531ec7fd8b6
+Author: Lasse Collin
+Date: 2018-02-06 19:36:30 +0200
+
+ Update THANKS.
+
+ THANKS | 2 ++
+ 1 file changed, 2 insertions(+)
+
+commit c4a616f4536146f8906e1b4412eefeec07b28fae
+Author: Ben Boeckel
+Date: 2018-01-29 13:58:18 -0500
+
+ nothrow: use noexcept for C++11 and newer
+
+ In C++11, the `throw()` specifier is deprecated and `noexcept` is
+ preffered instead.
+
+ src/liblzma/api/lzma.h | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+commit 0b8947782ff3c5ef830a7f85412e44dcf3cdeb77
+Author: Lasse Collin
+Date: 2018-02-06 18:02:48 +0200
+
+ liblzma: Remove incorrect #ifdef from range_common.h.
+
+ In most cases it was harmless but it could affect some
+ custom build systems.
+
+ Thanks to Pippijn van Steenhoven.
+
+ src/liblzma/rangecoder/range_common.h | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+commit 48f3b9f73ffea7f55d5678997aba0e79d2e82168
+Author: Lasse Collin
+Date: 2018-01-10 22:10:39 +0200
+
+ Update THANKS.
+
+ THANKS | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit a3ce3e902342be37c626a561ce3d9ffcf27d0f94
+Author: Lasse Collin
+Date: 2018-01-10 21:54:27 +0200
+
+ tuklib_integer: New Intel C compiler needs immintrin.h.
+
+ Thanks to Melanie Blower (Intel) for the patch.
+
+ src/common/tuklib_integer.h | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+commit 4505ca483985f88c6923c05a43b4327feaab83b1
+Author: Lasse Collin
+Date: 2017-09-24 20:04:24 +0300
+
+ Update THANKS.
+
+ THANKS | 1 +
+ 1 file changed, 1 insertion(+)
+
+commit 1ef3cc226e3ce173575c218238b71a4eecabc470
+Author: Lasse Collin
+Date: 2017-09-16 20:36:20 +0300
+
+ Windows: Fix paths in VS project files.
+
+ Some paths use slashes instead of backslashes as directory
+ separators... now it should work (I tested VS2013 version).
+
+ windows/vs2013/liblzma.vcxproj | 12 ++++++------
+ windows/vs2013/liblzma_dll.vcxproj | 24 ++++++++++++------------
+ windows/vs2017/liblzma.vcxproj | 12 ++++++------
+ windows/vs2017/liblzma_dll.vcxproj | 24 ++++++++++++------------
+ 4 files changed, 36 insertions(+), 36 deletions(-)
+
+commit e775d2a8189d24f60470e6e49d8af881df3a1680
+Author: Lasse Collin
+Date: 2017-09-16 12:54:23 +0300
+
+ Windows: Add project files for VS2017.
+
+ These files match the v5.2 branch (no file info decoder).
+
+ windows/vs2017/config.h | 148 ++++++++++++++
+ windows/vs2017/liblzma.vcxproj | 355 ++++++++++++++++++++++++++++++++++
+ windows/vs2017/liblzma_dll.vcxproj | 384 +++++++++++++++++++++++++++++++++++++
+ windows/vs2017/xz_win.sln | 48 +++++
+ 4 files changed, 935 insertions(+)
+
+commit 10e02e0fbb6e2173f8b41f6e39b7b570f47dd74d
+Author: Lasse Collin
+Date: 2017-09-16 12:39:43 +0300
+
+ Windows: Move VS2013 files into windows/vs2013 directory.
+
+ windows/{ => vs2013}/config.h | 0
+ windows/{ => vs2013}/liblzma.vcxproj | 278 +++++++++++++++---------------
+ windows/{ => vs2013}/liblzma_dll.vcxproj | 280 +++++++++++++++----------------
+ windows/{ => vs2013}/xz_win.sln | 0
+ 4 files changed, 279 insertions(+), 279 deletions(-)
+
+commit 06eebd4543196ded36fa9b8b9544195b38b24ef2
+Author: Lasse Collin
+Date: 2017-08-14 20:08:33 +0300
+
+ Fix or hide warnings from GCC 7's -Wimplicit-fallthrough.
+
+ src/liblzma/lzma/lzma_decoder.c | 6 ++++++
+ src/xz/list.c | 2 ++
+ 2 files changed, 8 insertions(+)
+
+commit ea4ea1dffafebaa8b2770bf3eca46900e4dd22dc
+Author: Alexey Tourbin
+Date: 2017-05-16 23:56:35 +0300
+
+ Docs: Fix a typo in a comment in doc/examples/02_decompress.c.
+
+ doc/examples/02_decompress.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit eb2ef4c79bf405ea0d215f3b1df3d0eaf5e1d27b
+Author: Lasse Collin
+Date: 2017-05-23 18:34:43 +0300
+
+ xz: Fix "xz --list --robot missing_or_bad_file.xz".
+
+ It ended up printing an uninitialized char-array when trying to
+ print the check names (column 7) on the "totals" line.
+
+ This also changes the column 12 (minimum xz version) to
+ 50000002 (xz 5.0.0) instead of 0 when there are no valid
+ input files.
+
+ Thanks to kidmin for the bug report.
+
+ src/xz/list.c | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+commit 3ea5dbd9b0d79048e336e40cef3b6d814fb74e13
+Author: Lasse Collin
+Date: 2017-04-24 19:48:47 +0300
+
+ Build: Omit pre-5.0.0 entries from the generated ChangeLog.
+
+ It makes ChangeLog significantly smaller.
+
+ Makefile.am | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+commit bae24675936df99064de1502593c006bd902594b
+Author: Lasse Collin
+Date: 2017-04-24 19:30:22 +0300
+
+ Update the Git repository URL to HTTPS in ChangeLog.
+
+ ChangeLog | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+commit 70f479211973b5361f4d7cb08ba5be69b4266e7a
+Author: Lasse Collin
+Date: 2017-04-19 22:17:35 +0300
+
+ Update the home page URLs to HTTPS.
+
+ COPYING | 2 +-
+ README | 2 +-
+ configure.ac | 2 +-
+ doc/faq.txt | 4 ++--
+ dos/config.h | 2 +-
+ src/common/common_w32res.rc | 2 +-
+ src/xz/xz.1 | 6 +++---
+ src/xzdec/xzdec.1 | 4 ++--
+ windows/README-Windows.txt | 2 +-
+ windows/config.h | 2 +-
+ 10 files changed, 14 insertions(+), 14 deletions(-)
+
+commit 2a4b2fa75d06a097261a02ecd3cf2b6d449bf754
+Author: Lasse Collin
+Date: 2017-03-30 22:01:54 +0300
+
+ xz: Use POSIX_FADV_RANDOM for in "xz --list" mode.
+
+ xz --list is random access so POSIX_FADV_SEQUENTIAL was clearly
+ wrong.
+
+ src/xz/file_io.c | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+commit eb25743ade39170cffd9566a1aae272098cce216
+Author: Lasse Collin
+Date: 2017-03-30 19:47:45 +0300
+
+ liblzma: Fix lzma_memlimit_set(strm, 0).
+
+ The 0 got treated specially in a buggy way and as a result
+ the function did nothing. The API doc said that 0 was supposed
+ to return LZMA_PROG_ERROR but it didn't.
+
+ Now 0 is treated as if 1 had been specified. This is done because
+ 0 is already used to indicate an error from lzma_memlimit_get()
+ and lzma_memusage().
+
+ In addition, lzma_memlimit_set() no longer checks that the new
+ limit is at least LZMA_MEMUSAGE_BASE. It's counter-productive
+ for the Index decoder and was actually needed only by the
+ auto decoder. Auto decoder has now been modified to check for
+ LZMA_MEMUSAGE_BASE.
+
+ src/liblzma/api/lzma/base.h | 7 ++++++-
+ src/liblzma/common/auto_decoder.c | 3 +++
+ src/liblzma/common/common.c | 6 ++++--
+ 3 files changed, 13 insertions(+), 3 deletions(-)
+
+commit ef36c6362f3f3853f21b8a6359bcd06576ebf207
+Author: Lasse Collin
+Date: 2017-03-30 19:16:55 +0300
+
+ liblzma: Similar memlimit fix for stream_, alone_, and auto_decoder.
+
+ src/liblzma/api/lzma/container.h | 21 +++++++++++++++++----
+ src/liblzma/common/alone_decoder.c | 5 +----
+ src/liblzma/common/auto_decoder.c | 5 +----
+ src/liblzma/common/stream_decoder.c | 5 +----
+ 4 files changed, 20 insertions(+), 16 deletions(-)
+
+commit 57616032650f03840480b696d7878acdd2065521
+Author: Lasse Collin
+Date: 2017-03-30 18:58:18 +0300
+
+ liblzma: Fix handling of memlimit == 0 in lzma_index_decoder().
+
+ It returned LZMA_PROG_ERROR, which was done to avoid zero as
+ the limit (because it's a special value elsewhere), but using
+ LZMA_PROG_ERROR is simply inconvenient and can cause bugs.
+
+ The fix/workaround is to treat 0 as if it were 1 byte. It's
+ effectively the same thing. The only weird consequence is
+ that then lzma_memlimit_get() will return 1 even when 0 was
+ specified as the limit.
+
+ This fixes a very rare corner case in xz --list where a specific
+ memory usage limit and a multi-stream file could print the
+ error message "Internal error (bug)" instead of saying that
+ the memory usage limit is too low.
+
+ src/liblzma/api/lzma/index.h | 18 +++++++++++-------
+ src/liblzma/common/index_decoder.c | 4 ++--
+ 2 files changed, 13 insertions(+), 9 deletions(-)
+
commit 3d566cd519017eee1a400e7961ff14058dfaf33c
Author: Lasse Collin
Date: 2016-12-30 13:26:36 +0200
Bump version and soname for 5.2.3.
src/liblzma/Makefile.am | 2 +-
src/liblzma/api/lzma/version.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
commit 053e624fe33795e779ff736f16ce44a129c829b5
Author: Lasse Collin
Date: 2016-12-30 13:25:10 +0200
Update NEWS for 5.2.3.
NEWS | 39 +++++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
commit cae412b2b77d7fd88d187ed7659331709311f80d
Author: Lasse Collin
Date: 2015-04-01 14:45:25 +0300
xz: Fix the Capsicum rights on user_abort_pipe.
src/xz/file_io.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
commit 9ccbae41000572193b9a09e7102f9e84dc6d96de
Author: Lasse Collin
Date: 2016-12-28 21:05:22 +0200
Mention potential sandboxing bugs in INSTALL.
INSTALL | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
commit e013a337d3de77cce24360dffe956ea2339489b6
Author: Lasse Collin
Date: 2016-11-21 20:24:50 +0200
liblzma: Avoid multiple definitions of lzma_coder structures.
Only one definition was visible in a translation unit.
It avoided a few casts and temp variables but seems that
this hack doesn't work with link-time optimizations in compilers
as it's not C99/C11 compliant.
Fixes:
http://www.mail-archive.com/xz-devel@tukaani.org/msg00279.html
src/liblzma/common/alone_decoder.c | 44 +++++----
src/liblzma/common/alone_encoder.c | 34 ++++---
src/liblzma/common/auto_decoder.c | 35 ++++---
src/liblzma/common/block_decoder.c | 41 ++++----
src/liblzma/common/block_encoder.c | 40 ++++----
src/liblzma/common/common.h | 18 ++--
src/liblzma/common/index_decoder.c | 33 ++++---
src/liblzma/common/index_encoder.c | 16 ++--
src/liblzma/common/stream_decoder.c | 50 +++++-----
src/liblzma/common/stream_encoder.c | 56 ++++++-----
src/liblzma/common/stream_encoder_mt.c | 124 ++++++++++++++-----------
src/liblzma/delta/delta_common.c | 25 ++---
src/liblzma/delta/delta_decoder.c | 6 +-
src/liblzma/delta/delta_encoder.c | 12 ++-
src/liblzma/delta/delta_private.h | 4 +-
src/liblzma/lz/lz_decoder.c | 60 ++++++------
src/liblzma/lz/lz_decoder.h | 13 ++-
src/liblzma/lz/lz_encoder.c | 57 +++++++-----
src/liblzma/lz/lz_encoder.h | 9 +-
src/liblzma/lzma/lzma2_decoder.c | 32 ++++---
src/liblzma/lzma/lzma2_encoder.c | 51 +++++-----
src/liblzma/lzma/lzma_decoder.c | 27 +++---
src/liblzma/lzma/lzma_encoder.c | 29 +++---
src/liblzma/lzma/lzma_encoder.h | 9 +-
src/liblzma/lzma/lzma_encoder_optimum_fast.c | 3 +-
src/liblzma/lzma/lzma_encoder_optimum_normal.c | 23 ++---
src/liblzma/lzma/lzma_encoder_private.h | 6 +-
src/liblzma/simple/arm.c | 2 +-
src/liblzma/simple/armthumb.c | 2 +-
src/liblzma/simple/ia64.c | 2 +-
src/liblzma/simple/powerpc.c | 2 +-
src/liblzma/simple/simple_coder.c | 61 ++++++------
src/liblzma/simple/simple_private.h | 12 +--
src/liblzma/simple/sparc.c | 2 +-
src/liblzma/simple/x86.c | 15 +--
35 files changed, 532 insertions(+), 423 deletions(-)
commit 8e0f1af3dcaec00a3879cce8ad7441edc6359d1c
Author: Lasse Collin
Date: 2016-12-26 20:50:25 +0200
Document --enable-sandbox configure option in INSTALL.
INSTALL | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
commit ce2542d220de06acd618fd9f5c0a6683029fb4eb
Author: Lasse Collin
Date: 2015-03-31 22:19:34 +0300
xz: Add support for sandboxing with Capsicum (disabled by default).
In the v5.2 branch this feature is considered experimental
and thus disabled by default.
The sandboxing is used conditionally as described in main.c.
This isn't optimal but it was much easier to implement than
a full sandboxing solution and it still covers the most common
use cases where xz is writing to standard output. This should
have practically no effect on performance even with small files
as fork() isn't needed.
C and locale libraries can open files as needed. This has been
fine in the past, but it's a problem with things like Capsicum.
io_sandbox_enter() tries to ensure that various locale-related
files have been loaded before cap_enter() is called, but it's
possible that there are other similar problems which haven't
been seen yet.
Currently Capsicum is available on FreeBSD 10 and later
and there is a port to Linux too.
Thanks to Loganaden Velvindron for help.
configure.ac | 41 +++++++++++++++++++++++++++
src/xz/Makefile.am | 2 +-
src/xz/file_io.c | 81 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
src/xz/file_io.h | 6 ++++
src/xz/main.c | 18 ++++++++++++
src/xz/private.h | 4 +++
6 files changed, 151 insertions(+), 1 deletion(-)
commit 3ca1d5e6320111043e19434da881065fadafa0e4
Author: Lasse Collin
Date: 2015-03-31 21:12:30 +0300
Fix bugs and otherwise improve ax_check_capsicum.m4.
AU_ALIAS was removed because the new version is incompatible
with the old version.
It no longer checks for separately.
It's enough to test for it as part of AC_CHECK_DECL.
The defines HAVE_CAPSICUM_SYS_CAPSICUM_H and
HAVE_CAPSICUM_SYS_CAPABILITY_H were removed as unneeded.
HAVE_SYS_CAPSICUM_H from AC_CHECK_HEADERS is enough.
It no longer does a useless search for the Capsicum library
if the header wasn't found.
Fixed a bug in ACTION-IF-FOUND (the first argument). Specifying
the argument omitted the default action but the given action
wasn't used instead.
AC_DEFINE([HAVE_CAPSICUM]) is now always called when Capsicum
support is found. Previously it was part of the default
ACTION-IF-FOUND which a custom action would override. Now
the default action only prepends ${CAPSICUM_LIB} to LIBS.
The documentation was updated.
Since there as no serial number, "#serial 2" was added.
m4/ax_check_capsicum.m4 | 103 ++++++++++++++++++++++++------------------------
1 file changed, 51 insertions(+), 52 deletions(-)
commit 5f3a742b64197fe8bedb6f05fc6ce5d177d11145
Author: Lasse Collin
Date: 2015-03-31 19:20:24 +0300
Add m4/ax_check_capsicum.m4 for detecting Capsicum support.
The file was loaded from this web page:
https://github.com/google/capsicum-test/blob/dev/autoconf/m4/ax_check_capsicum.m4
Thanks to Loganaden Velvindron for pointing it out for me.
m4/ax_check_capsicum.m4 | 86 +++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 86 insertions(+)
commit d74377e62b4c649e40294dd441de72c0f092e67c
Author: Lasse Collin
Date: 2015-10-12 20:29:09 +0300
liblzma: Fix a memory leak in error path of lzma_index_dup().
lzma_index_dup() calls index_dup_stream() which, in case of
an error, calls index_stream_end() to free memory allocated
by index_stream_init(). However, it illogically didn't
actually free the memory. To make it logical, the tree
handling code was modified a bit in addition to changing
index_stream_end().
Thanks to Evan Nemerson for the bug report.
src/liblzma/common/index.c | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
commit f580732216dcf971f3f006fe8e01cd4979e1d964
Author: Lasse Collin
Date: 2016-10-24 18:53:25 +0300
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit 88d7a7fd153bf1355cdf798ffdac7443d0169afc
Author: Lasse Collin
Date: 2016-10-24 18:51:36 +0300
tuklib_cpucores: Add support for sched_getaffinity().
It's available in glibc (GNU/Linux, GNU/kFreeBSD). It's better
than sysconf(_SC_NPROCESSORS_ONLN) because sched_getaffinity()
gives the number of cores available to the process instead of
the total number of cores online.
As a side effect, this commit fixes a bug on GNU/kFreeBSD where
configure would detect the FreeBSD-specific cpuset_getaffinity()
but it wouldn't actually work because on GNU/kFreeBSD it requires
using -lfreebsd-glue when linking. Now the glibc-specific function
will be used instead.
Thanks to Sebastian Andrzej Siewior for the original patch
and testing.
m4/tuklib_cpucores.m4 | 30 +++++++++++++++++++++++++++++-
src/common/tuklib_cpucores.c | 9 +++++++++
2 files changed, 38 insertions(+), 1 deletion(-)
commit 51baf684376903dbeddd840582bfdf9fa91b311b
Author: Lasse Collin
Date: 2016-06-30 20:27:36 +0300
xz: Fix copying of timestamps on Windows.
xz used to call utime() on Windows, but its result gets lost
on close(). Using _futime() seems to work.
Thanks to Martok for reporting the bug:
http://www.mail-archive.com/xz-devel@tukaani.org/msg00261.html
configure.ac | 2 +-
src/xz/file_io.c | 18 ++++++++++++++++++
2 files changed, 19 insertions(+), 1 deletion(-)
commit 1ddc479851139d6e8202e5835421bfe6578d9e07
Author: Lasse Collin
Date: 2016-06-16 22:46:02 +0300
xz: Silence warnings from -Wlogical-op.
Thanks to Evan Nemerson.
src/xz/file_io.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
commit be647ff5ed5a1c244a65722af6ce250259f3b14a
Author: Lasse Collin
Date: 2016-04-10 20:55:49 +0300
Build: Fix = to += for xz_SOURCES in src/xz/Makefile.am.
Thanks to Christian Kujau.
src/xz/Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit fb6d50c15343831f35305982cefa82053099191d
Author: Lasse Collin
Date: 2016-04-10 20:54:17 +0300
Build: Bump GNU Gettext version requirement to 0.19.
It silences a few warnings and most people probably have
0.19 even on stable distributions.
Thanks to Christian Kujau.
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 74f8dad9f912a2993768d93d108ea2b0b2c196e0
Author: Lasse Collin
Date: 2016-03-13 20:21:49 +0200
liblzma: Disable external SHA-256 by default.
This is the sane thing to do. The conflict with OpenSSL
on some OSes and especially that the OS-provided versions
can be significantly slower makes it clear that it was
a mistake to have the external SHA-256 support enabled by
default.
Those who want it can now pass --enable-external-sha256 to
configure. INSTALL was updated with notes about OSes where
this can be a bad idea.
The SHA-256 detection code in configure.ac had some bugs that
could lead to a build failure in some situations. These were
fixed, although it doesn't matter that much now that the
external SHA-256 is disabled by default.
MINIX >= 3.2.0 uses NetBSD's libc and thus has SHA256_Init
in libc instead of libutil. Support for the libutil version
was removed.
INSTALL | 36 ++++++++++++++++++++++
configure.ac | 76 +++++++++++++++++++++++------------------------
src/liblzma/check/check.h | 16 ++++------
3 files changed, 79 insertions(+), 49 deletions(-)
commit ea7f6ff04cb5bb1498088eb09960a4c3f13dfe39
Author: Lasse Collin
Date: 2016-03-10 20:27:05 +0200
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit d0e018016b311232e82d9a98dc68f1e3dabce794
Author: Lasse Collin
Date: 2016-03-10 20:26:49 +0200
Build: Avoid SHA256_Init on FreeBSD and MINIX 3.
On FreeBSD 10 and older, SHA256_Init from libmd conflicts
with libcrypto from OpenSSL. The OpenSSL version has
different sizeof(SHA256_CTX) and it can cause weird
problems if wrong SHA256_Init gets used.
Looking at the source, MINIX 3 seems to have a similar issue but
I'm not sure. To be safe, I disabled SHA256_Init on MINIX 3 too.
NetBSD has SHA256_Init in libc and they had a similar problem,
but they already fixed it in 2009.
Thanks to Jim Wilcoxson for the bug report that helped
in finding the problem.
configure.ac | 27 +++++++++++++++++++++------
1 file changed, 21 insertions(+), 6 deletions(-)
commit 5daae123915f32a4ed6dc948b831533c2d1beec3
Author: Lasse Collin
Date: 2015-11-08 20:16:10 +0200
tuklib_physmem: Hopefully silence a warning on Windows.
src/common/tuklib_physmem.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 491acc406e098167ccb7fce0728b94c2f32cff9f
Author: Lasse Collin
Date: 2015-11-04 23:17:43 +0200
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit 8173ff8790ad3502d04e1c07d014cb84a3b8187b
Author: Lasse Collin
Date: 2015-11-04 23:14:00 +0200
liblzma: Make Valgrind happier with optimized (gcc -O2) liblzma.
When optimizing, GCC can reorder code so that an uninitialized
value gets used in a comparison, which makes Valgrind unhappy.
It doesn't happen when compiled with -O0, which I tend to use
when running Valgrind.
Thanks to Rich Prohaska. I remember this being mentioned long
ago by someone else but nothing was done back then.
src/liblzma/lz/lz_encoder.c | 4 ++++
1 file changed, 4 insertions(+)
commit 013de2b5ab8094d2c82a2771f3d143eeb656eda9
Author: Lasse Collin
Date: 2015-11-03 20:55:45 +0200
liblzma: Rename lzma_presets.c back to lzma_encoder_presets.c.
It would be too annoying to update other build systems
just because of this.
src/liblzma/lzma/Makefile.inc | 2 +-
src/liblzma/lzma/{lzma_presets.c => lzma_encoder_presets.c} | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
commit a322f70ad96de88968c2c36e6a36bc08ae30bd20
Author: Lasse Collin
Date: 2015-11-03 20:47:07 +0200
Build: Disable xzdec, lzmadec, and lzmainfo when they cannot be built.
They all need decoder support and if that isn't available,
there's no point trying to build them.
configure.ac | 3 +++
1 file changed, 3 insertions(+)
commit 8ea49606cf6427e32319de7693eca9e43f1c8ad6
Author: Lasse Collin
Date: 2015-11-03 20:35:19 +0200
Build: Simplify $enable_{encoders,decoders} usage a bit.
configure.ac | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
commit 42131a25e52bfe400acfa7df93469a96bb78bb78
Author: Lasse Collin
Date: 2015-11-03 20:31:31 +0200
Windows/MSVC: Update config.h.
windows/config.h | 6 ++++++
1 file changed, 6 insertions(+)
commit e9184e87cc989d14c7413e6adb3eca98f6ae0290
Author: Lasse Collin
Date: 2015-11-03 20:29:58 +0200
DOS: Update config.h.
dos/config.h | 6 ++++++
1 file changed, 6 insertions(+)
commit 2296778f3c9a1e3a8699973b09dd3610b8baa402
Author: Lasse Collin
Date: 2015-11-03 20:29:33 +0200
xz: Make xz buildable even when encoders or decoders are disabled.
The patch is quite long but it's mostly about adding new #ifdefs
to omit code when encoders or decoders have been disabled.
This adds two new #defines to config.h: HAVE_ENCODERS and
HAVE_DECODERS.
configure.ac | 4 ++++
src/xz/Makefile.am | 8 ++++++--
src/xz/args.c | 16 ++++++++++++++++
src/xz/coder.c | 33 +++++++++++++++++++++++++--------
src/xz/main.c | 9 +++++++--
src/xz/private.h | 5 ++++-
6 files changed, 62 insertions(+), 13 deletions(-)
commit 97a3109281e475d9cf1b5095237d672fa0ad25e5
Author: Lasse Collin
Date: 2015-11-03 18:06:40 +0200
Build: Build LZMA1/2 presets also when only decoder is wanted.
People shouldn't rely on the presets when decoding raw streams,
but xz uses the presets as the starting point for raw decoder
options anyway.
lzma_encocder_presets.c was renamed to lzma_presets.c to
make it clear it's not used solely by the encoder code.
src/liblzma/lzma/Makefile.inc | 6 +++++-
src/liblzma/lzma/{lzma_encoder_presets.c => lzma_presets.c} | 3 ++-
2 files changed, 7 insertions(+), 2 deletions(-)
commit dc6b78d7f0f6fe43e9d4215146e8581feb8090e7
Author: Lasse Collin
Date: 2015-11-03 17:54:48 +0200
Build: Fix configure to handle LZMA1 dependency with LZMA2.
Now it gives an error if LZMA1 encoder/decoder is missing
when LZMA2 encoder/decoder was requested. Even better would
be LZMA2 implicitly enabling LZMA1 but it would need more code.
configure.ac | 5 -----
1 file changed, 5 deletions(-)
commit 46d76c9cd3cb26a31f5ae6c3a8bbcf38e6da1add
Author: Lasse Collin
Date: 2015-11-03 17:41:54 +0200
Build: Don't omit lzma_cputhreads() unless using --disable-threads.
Previously it was omitted if encoders were disabled
with --disable-encoders. It didn't make sense and
it also broke the build.
src/liblzma/common/Makefile.inc | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
commit 16d68f874d89f1e4a1919786a35bbaef7d71a077
Author: Lasse Collin
Date: 2015-11-02 18:16:51 +0200
liblzma: Fix a build failure related to external SHA-256 support.
If an appropriate header and structure were found by configure,
but a library with a usable SHA-256 functions wasn't, the build
failed.
src/liblzma/check/check.h | 32 +++++++++++++++++++++++---------
1 file changed, 23 insertions(+), 9 deletions(-)
commit d9311647fc1ab512a3394596221ab8039c00af6b
Author: Lasse Collin
Date: 2015-11-02 15:19:10 +0200
xz: Always close the file before trying to delete it.
unlink() can return EBUSY in errno for open files on some
operating systems and file systems.
src/xz/file_io.c | 25 ++++++++++++-------------
1 file changed, 12 insertions(+), 13 deletions(-)
commit f59c4183f3c9066626ce45dc3db4642fa603fa21
Author: Lasse Collin
Date: 2015-10-12 21:08:42 +0300
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit 35f189673e280c12e4c5129f9f97e54eef3bbc04
Author: Lasse Collin
Date: 2015-10-12 21:07:41 +0300
Tests: Add tests for the two bugs fixed in index.c.
tests/test_index.c | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
commit e10bfdb0fcaff12f3a6dadee51e0a022aadccb51
Author: Lasse Collin
Date: 2015-10-12 20:45:15 +0300
liblzma: Fix lzma_index_dup() for empty Streams.
Stream Flags and Stream Padding weren't copied from
empty Streams.
src/liblzma/common/index.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
commit 06f434bd8980f25ca23232eb7bb7df7e37dc8448
Author: Lasse Collin
Date: 2015-10-12 20:31:44 +0300
liblzma: Add a note to index.c for those using static analyzers.
src/liblzma/common/index.c | 3 +++
1 file changed, 3 insertions(+)
commit 9815cdf6987ef91a85493bfcfd1ce2aaf3b47a0a
Author: Lasse Collin
Date: 2015-09-29 13:59:35 +0300
Bump version and soname for 5.2.2.
src/liblzma/Makefile.am | 2 +-
src/liblzma/api/lzma/version.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
commit cbe0cec8476bdd0416c7ca9bc83895c9bea1cf78
Author: Lasse Collin
Date: 2015-09-29 13:57:28 +0300
Update NEWS for 5.2.2.
NEWS | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
commit 49427ce7eececdd18bbd35dab23c81910d083e1c
Author: Andre Noll
Date: 2015-05-28 15:50:00 +0200
Fix typo in German translation.
As pointed out by Robert Pollak, there's a typo in the German
translation of the compression preset option (-0 ... -9) help text.
"The compressor" translates to "der Komprimierer", and the genitive
form is "des Komprimierers". The old word makes no sense at all.
po/de.po | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 608d6f06c940e7f28c25de005e8b99bdff42d27c
Author: Hauke Henningsen
Date: 2015-08-17 04:59:54 +0200
Update German translation, mostly wrt orthography
Provide an update of the German translation.
* A lot of compound words were previously written with spaces, while
German orthography is relatively clear in that the components
should not be separated.
* When referring to the actual process of (de)compression rather than the
concept, replace “(De-)Kompression” with “(De-)Komprimierung”.
Previously, both forms were used in this context and are now used in a
manner consistent with “Komprimierung” being more likely to refer to
a process.
* Consistently translate “standard input”/“output”
* Use “Zeichen” instead of false friend “Charakter” for “character”
* Insert commas around relative clauses (as required in German)
* Some other minor corrections
* Capitalize “ß” as “ẞ”
* Consistently start option descriptions in --help with capital letters
Acked-By: Andre Noll
* Update after msgmerge
po/de.po | 383 ++++++++++++++++++++++++++++++++-------------------------------
1 file changed, 196 insertions(+), 187 deletions(-)
commit c8988414e5b67b8ef2fe0ba7b1ccdd0ec73c60d3
Author: Lasse Collin
Date: 2015-08-11 13:23:04 +0300
Build: Minor Cygwin cleanup.
Some tests used "cygwin*" and some used "cygwin". I changed
them all to use "cygwin". Shouldn't affect anything in practice.
configure.ac | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 85a6dfed53477906bfe9a7c0123dd412e391cb48
Author: Lasse Collin
Date: 2015-08-11 13:21:52 +0300
Build: Support building of MSYS2 binaries.
configure.ac | 16 +++++++++++-----
1 file changed, 11 insertions(+), 5 deletions(-)
commit 77f270be8432df2e4516a0c48814b6976d6618c5
Author: Lasse Collin
Date: 2015-08-09 21:06:26 +0300
Windows: Define DLL_EXPORT when building liblzma.dll with MSVC.
src/liblzma/common/common.h uses it to set __declspec(dllexport)
for the API symbols.
Thanks to Adam Walling.
windows/liblzma_dll.vcxproj | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
commit 8c975446c5903090a5a8493b5b96b71003056a88
Author: Lasse Collin
Date: 2015-08-09 21:02:20 +0300
Windows: Omit unneeded header files from MSVC project files.
windows/liblzma.vcxproj | 5 -----
windows/liblzma_dll.vcxproj | 5 -----
2 files changed, 10 deletions(-)
commit 119a00434954726ca58e4a578e6469f530fca30e
Author: Lasse Collin
Date: 2015-07-12 20:48:19 +0300
liblzma: A MSVC-specific hack isn't needed with MSVC 2013 and newer.
src/liblzma/api/lzma.h | 18 +++++++++++++-----
1 file changed, 13 insertions(+), 5 deletions(-)
commit d4e7c557fcab353539c9481a8d95cb04bcb15c7c
Author: Lasse Collin
Date: 2015-06-19 20:38:55 +0300
Update THANKS.
THANKS | 2 ++
1 file changed, 2 insertions(+)
commit 98001740ca56c894a7bd32eb47e9857a8a7d878d
Author: Lasse Collin
Date: 2015-06-19 20:21:30 +0300
Windows: Update the docs.
INSTALL | 29 ++++++++-----
windows/INSTALL-MSVC.txt | 47 ++++++++++++++++++++++
windows/{INSTALL-Windows.txt => INSTALL-MinGW.txt} | 2 +-
3 files changed, 67 insertions(+), 11 deletions(-)
commit 28195e4c877007cc760ecea1d17f740693d66873
Author: Lasse Collin
Date: 2015-06-19 17:25:31 +0300
Windows: Add MSVC project files for building liblzma.
Thanks to Adam Walling for creating these files.
windows/liblzma.vcxproj | 359 ++++++++++++++++++++++++++++++++++++++++
windows/liblzma_dll.vcxproj | 388 ++++++++++++++++++++++++++++++++++++++++++++
windows/xz_win.sln | 48 ++++++
3 files changed, 795 insertions(+)
commit 960440f3230dc628f6966d9f7614fc1b28baf44e
Author: Lasse Collin
Date: 2015-05-13 20:57:55 +0300
Tests: Fix a memory leak in test_bcj_exact_size.
Thanks to Cristian Rodríguez.
tests/test_bcj_exact_size.c | 1 +
1 file changed, 1 insertion(+)
commit 68cd35acafbdcdf4e8ea8b5bb843c736939d6f8b
Author: Lasse Collin
Date: 2015-05-12 18:08:24 +0300
Fix NEWS about threading in 5.2.0.
Thanks to Andy Hochhaus.
NEWS | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit ff96ed6d25786728356017a13baf8c14731b4f1e
Author: Lasse Collin
Date: 2015-05-11 21:26:16 +0300
xz: Document that threaded decompression hasn't been implemented yet.
src/xz/xz.1 | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
commit 00d37b64a64ea8597fd2422d5187afd761ab9531
Author: Lasse Collin
Date: 2015-04-20 20:20:29 +0300
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit db190a832c49ca3aed6d69cc992fa5583cae7b11
Author: Lasse Collin
Date: 2015-04-20 19:59:18 +0300
Revert "xz: Use pipe2() if available."
This reverts commit 7a11c4a8e5e15f13d5fa59233b3172e65428efdd.
It is a problem when libc has pipe2() but the kernel is too
old to have pipe2() and thus pipe2() fails. In xz it's pointless
to have a fallback for non-functioning pipe2(); it's better to
avoid pipe2() completely.
Thanks to Michael Fox for the bug report.
configure.ac | 4 ++--
src/xz/file_io.c | 9 +--------
2 files changed, 3 insertions(+), 10 deletions(-)
commit eccd8155e107c5ada03d13e7730675cdf1a44ddc
Author: Lasse Collin
Date: 2015-03-29 22:14:47 +0300
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit 25263fd9e7a8a913395cb93d7c104cd48c2b4a00
Author: Lasse Collin
Date: 2015-03-29 22:13:48 +0300
Fix the detection of installed RAM on QNX.
The earlier version compiled but didn't actually work
since sysconf(_SC_PHYS_PAGES) always fails (or so I was told).
Thanks to Ole André Vadla Ravnås for the patch and testing.
m4/tuklib_physmem.m4 | 6 +++---
src/common/tuklib_physmem.c | 14 +++++++++++++-
2 files changed, 16 insertions(+), 4 deletions(-)
commit 4c544d2410903d38402221cb783ed85585b6a007
Author: Lasse Collin
Date: 2015-03-27 22:39:07 +0200
Fix CPU core count detection on QNX.
It tried to use sysctl() on QNX but
- it broke the build because sysctl() needs -lsocket on QNX;
- sysctl() doesn't work for detecting the core count on QNX
even if it compiled.
sysconf() works. An alternative would have been to use
QNX-specific SYSPAGE_ENTRY(num_cpu) from .
Thanks to Ole André Vadla Ravnås.
m4/tuklib_cpucores.m4 | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
commit e0ea6737b03e83ccaff4514d00e31bb926f8f0f3
Author: Lasse Collin
Date: 2015-03-07 22:05:57 +0200
xz: size_t/uint32_t cleanup in options.c.
src/xz/options.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
commit 8bcca29a65335fd679c13814b70b35b68fa5daed
Author: Lasse Collin
Date: 2015-03-07 22:04:23 +0200
xz: Fix a comment and silence a warning in message.c.
src/xz/message.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
commit f243f5f44c6b19a7c289a0ec73a03ee08364cb5b
Author: Lasse Collin
Date: 2015-03-07 22:01:00 +0200
liblzma: Silence more uint32_t vs. size_t warnings.
src/liblzma/lz/lz_encoder.c | 2 +-
src/liblzma/lzma/lzma_encoder.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
commit 7f0a4c50f4a374c40acf4b86848f301ad1e82d34
Author: Lasse Collin
Date: 2015-03-07 19:54:00 +0200
xz: Make arg_count an unsigned int to silence a warning.
Actually the value of arg_count cannot exceed INT_MAX
but it's nicer as an unsigned int.
src/xz/args.h | 2 +-
src/xz/main.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
commit f6ec46801588b1be29c07c9db98558b521304002
Author: Lasse Collin
Date: 2015-03-07 19:33:17 +0200
liblzma: Fix a warning in index.c.
src/liblzma/common/index.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
commit a24518971cc621315af142dd3bb7614fab04ad27
Author: Lasse Collin
Date: 2015-02-26 20:46:14 +0200
Build: Fix a CR+LF problem when running autoreconf -fi on OS/2.
build-aux/version.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit dec11497a71518423b5ff0e759100cf8aadf6c7b
Author: Lasse Collin
Date: 2015-02-26 16:53:44 +0200
Bump version and soname for 5.2.1.
src/liblzma/Makefile.am | 2 +-
src/liblzma/api/lzma/version.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
commit 29e39c79975ab89ee5dd671e97064534a9f3a649
Author: Lasse Collin
Date: 2015-02-26 13:01:09 +0200
Update NEWS for 5.2.1.
NEWS | 14 ++++++++++++++
1 file changed, 14 insertions(+)
commit 7a11c4a8e5e15f13d5fa59233b3172e65428efdd
Author: Lasse Collin
Date: 2015-02-22 19:38:48 +0200
xz: Use pipe2() if available.
configure.ac | 4 ++--
src/xz/file_io.c | 9 ++++++++-
2 files changed, 10 insertions(+), 3 deletions(-)
commit 117d962685c72682c63edc9bb765367189800202
Author: Lasse Collin
Date: 2015-02-21 23:40:26 +0200
liblzma: Fix a compression-ratio regression in LZMA1/2 in fast mode.
The bug was added in the commit
f48fce093b07aeda95c18850f5e086d9f2383380 and thus
affected 5.1.4beta and 5.2.0. Luckily the bug cannot
cause data corruption or other nasty things.
src/liblzma/lzma/lzma_encoder_optimum_fast.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit ae984e31c167d3bc52972ec422dd1ebd5f5d5719
Author: Lasse Collin
Date: 2015-02-21 23:00:19 +0200
xz: Fix the fcntl() usage when creating a pipe for the self-pipe trick.
Now it reads the old flags instead of blindly setting O_NONBLOCK.
The old code may have worked correctly, but this is better.
src/xz/file_io.c | 16 +++++++++++-----
1 file changed, 11 insertions(+), 5 deletions(-)
commit 2205bb5853098aea36a56df6f5747037175f66b4
Author: Lasse Collin
Date: 2015-02-10 15:29:34 +0200
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit d935b0cdf3db440269b9d952b2b281b18f8c7b08
Author: Lasse Collin
Date: 2015-02-10 15:28:30 +0200
tuklib_cpucores: Use cpuset_getaffinity() on FreeBSD if available.
In FreeBSD, cpuset_getaffinity() is the preferred way to get
the number of available cores.
Thanks to Rui Paulo for the patch. I edited it slightly, but
hopefully I didn't break anything.
m4/tuklib_cpucores.m4 | 23 ++++++++++++++++++++++-
src/common/tuklib_cpucores.c | 18 ++++++++++++++++++
2 files changed, 40 insertions(+), 1 deletion(-)
commit eb61bc58c20769cac4d05f363b9c0e8c9c71a560
Author: Lasse Collin
Date: 2015-02-09 22:08:37 +0200
xzdiff: Make the mktemp usage compatible with FreeBSD's mktemp.
Thanks to Rui Paulo for the fix.
src/scripts/xzdiff.in | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
commit b9a5b6b7a29029680af733082b6a46e0fc01623a
Author: Lasse Collin
Date: 2015-02-03 21:45:53 +0200
Add a few casts to tuklib_integer.h to silence possible warnings.
I heard that Visual Studio 2013 gave warnings without the casts.
Thanks to Gabi Davar.
src/common/tuklib_integer.h | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
commit c45757135f40e4a0de730ba5fff0100219493982
Author: Lasse Collin
Date: 2015-01-26 21:24:39 +0200
liblzma: Set LZMA_MEMCMPLEN_EXTRA depending on the compare method.
src/liblzma/common/memcmplen.h | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
commit 3c500174ed5485f550972a2a6109c361e875f069
Author: Lasse Collin
Date: 2015-01-26 20:40:16 +0200
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit fec88d41e672d9e197c9442aecf02bd0dfa6d516
Author: Lasse Collin
Date: 2015-01-26 20:39:28 +0200
liblzma: Silence harmless Valgrind errors.
Thanks to Torsten Rupp for reporting this. I had
forgotten to run Valgrind before the 5.2.0 release.
src/liblzma/lz/lz_encoder.c | 6 ++++++
1 file changed, 6 insertions(+)
commit a9b45badfec0928d20a27c7176c005fa637f7d1e
Author: Lasse Collin
Date: 2015-01-09 21:50:19 +0200
xz: Fix comments.
src/xz/file_io.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
commit 541aee6dd4aa97a809aba281475a21b641bb89e2
Author: Lasse Collin
Date: 2015-01-09 21:35:06 +0200
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit 4170edc914655310d2363baccf5e615e09b04911
Author: Lasse Collin
Date: 2015-01-09 21:34:06 +0200
xz: Don't fail if stdout doesn't support O_NONBLOCK.
This is similar to the case with stdin.
Thanks to Brad Smith for the bug report and testing
on OpenBSD.
src/xz/file_io.c | 36 +++++++++++++++---------------------
1 file changed, 15 insertions(+), 21 deletions(-)
commit 04bbc0c2843c50c8ad1cba42b937118e38b0508d
Author: Lasse Collin
Date: 2015-01-07 19:18:20 +0200
xz: Fix a memory leak in DOS-specific code.
src/xz/file_io.c | 2 ++
1 file changed, 2 insertions(+)
commit f0f1f6c7235ffa901cf76fe18e33749e200b3eea
Author: Lasse Collin
Date: 2015-01-07 19:08:06 +0200
xz: Don't fail if stdin doesn't support O_NONBLOCK.
It's a problem at least on OpenBSD which doesn't support
O_NONBLOCK on e.g. /dev/null. I'm not surprised if it's
a problem on other OSes too since this behavior is allowed
in POSIX-1.2008.
The code relying on this behavior was committed in June 2013
and included in 5.1.3alpha released on 2013-10-26. Clearly
the development releases only get limited testing.
src/xz/file_io.c | 18 +++++++-----------
1 file changed, 7 insertions(+), 11 deletions(-)
commit d2d484647d9d9d679f03c75abb0404f67069271c
Author: Lasse Collin
Date: 2015-01-06 20:30:15 +0200
Tests: Don't hide unexpected error messages in test_files.sh.
Hiding them makes no sense since normally there's no error
when testing the "good" files. With "bad" files errors are
expected and then it makes sense to keep the messages hidden.
tests/test_files.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit aae6a6aeda51cf94a47e39ad624728f9bee75e30
Author: Lasse Collin
Date: 2014-12-30 11:17:16 +0200
Update Solaris notes in INSTALL.
Mention the possible "make check" failure on Solaris in the
Solaris-specific section of INSTALL. It was already in
section 4.5 but it is better mention it in the OS-specific
section too.
INSTALL | 4 ++++
1 file changed, 4 insertions(+)
commit 7815112153178800a3521b9f31960e7cdc26cfba
Author: Lasse Collin
Date: 2014-12-26 12:00:05 +0200
Build: POSIX shell isn't required if scripts are disabled.
INSTALL | 3 ++-
configure.ac | 2 +-
2 files changed, 3 insertions(+), 2 deletions(-)
commit a0cd05ee71d330b79ead6eb9222e1b24e1559d3a
Author: Lasse Collin
Date: 2014-12-21 20:48:37 +0200
DOS: Update Makefile.
dos/Makefile | 1 +
1 file changed, 1 insertion(+)
commit b85ee0905ec4ab7656d22e63519fdd3bedb21f2e
Author: Lasse Collin
Date: 2014-12-21 19:50:38 +0200
Windows: Fix bin_i486 to bin_i686 in build.bash.
windows/build.bash | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit cbafa710918195dbba3db02c3fab4f0538235206
Author: Lasse Collin
Date: 2014-12-21 18:58:44 +0200
Docs: Use lzma_cputhreads() in 04_compress_easy_mt.c.
doc/examples/04_compress_easy_mt.c | 30 ++++++++++++++++++++++++++----
1 file changed, 26 insertions(+), 4 deletions(-)
commit 8dbb57238d372c7263cfeb3e7f7fd9a73173156a
Author: Lasse Collin
Date: 2014-12-21 18:56:44 +0200
Docs: Update docs/examples/00_README.txt.
doc/examples/00_README.txt | 4 ++++
1 file changed, 4 insertions(+)
commit 6060f7dc76fd6c2a8a1f8e85d0e4d86bb78273e6
Author: Lasse Collin
Date: 2014-12-21 18:11:17 +0200
Bump version and soname for 5.2.0.
I know that soname != app version, but I skip AGE=1
in -version-info to make the soname match the liblzma
version anyway. It doesn't hurt anything as long as
it doesn't conflict with library versioning rules.
src/liblzma/Makefile.am | 2 +-
src/liblzma/api/lzma/version.h | 6 +++---
src/liblzma/liblzma.map | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
commit 3e8bd1d15e417f2d588e9be50ce027ee3d48b2da
Author: Lasse Collin
Date: 2014-12-21 18:05:03 +0200
Avoid variable-length arrays in the debug programs.
debug/full_flush.c | 3 ++-
debug/sync_flush.c | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
commit 72f7307cfdceb941aeb2bf30d424cc0d13621786
Author: Lasse Collin
Date: 2014-12-21 18:01:45 +0200
Build: Include 04_compress_easy_mt.c in the tarball.
Makefile.am | 1 +
1 file changed, 1 insertion(+)
commit 2cb82ff21c62def11f3683a8bb0aaf363102aaa0
Author: Lasse Collin
Date: 2014-12-21 18:00:38 +0200
Fix build when --disable-threads is used.
src/common/mythread.h | 2 ++
1 file changed, 2 insertions(+)
commit 9b9e3536e458ef958f66b0e8982efc9d36de4d17
Author: Adrien Nader
Date: 2014-12-21 15:56:15 +0100
po/fr: improve wording for help for --lzma1/--lzma2.
po/fr.po | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit a8b6b569e7fadbf5b5b9139d53bc764015c15027
Author: Adrien Nader
Date: 2014-12-21 15:55:48 +0100
po/fr: missing line in translation of --extreme.
po/fr.po | 1 +
1 file changed, 1 insertion(+)
commit f168a6fd1a888cf4f0caaddcafcb21dadc6ab6e9
Author: Lasse Collin
Date: 2014-12-21 14:32:33 +0200
Update NEWS for 5.2.0.
NEWS | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 65 insertions(+)
commit cec2ee863b3a88f4bf039cb00f73c4a4fc93a429
Author: Lasse Collin
Date: 2014-12-21 14:32:22 +0200
Update NEWS for 5.0.8.
NEWS | 12 ++++++++++++
1 file changed, 12 insertions(+)
commit 42e97a32649bf53ce43be2258b902a417c6e7fa1
Author: Lasse Collin
Date: 2014-12-21 14:07:54 +0200
xz: Fix a comment.
src/xz/options.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 29b95d5d6665cedffa6a9d6d3d914f981e852182
Author: Lasse Collin
Date: 2014-12-20 20:43:14 +0200
Update INSTALL about the dependencies of the scripts.
INSTALL | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
commit 3af91040bb42c21afbb81f5568c3313125e61192
Author: Lasse Collin
Date: 2014-12-20 20:42:33 +0200
Windows: Update build instructions.
INSTALL | 15 +++++++++------
windows/INSTALL-Windows.txt | 44 +++++++++++++++++++++-----------------------
2 files changed, 30 insertions(+), 29 deletions(-)
commit 0152f72bf6289d744823dc6c849538f3a139ad70
Author: Lasse Collin
Date: 2014-12-20 20:41:48 +0200
Windows: Update the build script and README-Windows.txt.
The 32-bit build is now for i686 or newer because the
prebuilt MinGW-w64 toolchains include i686 code in the
executables even if one uses -march=i486.
The build script builds 32-bit SSE2 enabled version too.
Run-time detection of SSE2 support would be nice (on any OS)
but it's not implemented in XZ Utils yet.
windows/README-Windows.txt | 30 ++++++++++++++++--------------
windows/build.bash | 23 ++++++++++++++---------
2 files changed, 30 insertions(+), 23 deletions(-)
commit 4a1f6133ee5533cee8d91e06fcc22443e5f1881a
Author: Lasse Collin
Date: 2014-12-19 15:51:50 +0200
Windows: Define TUKLIB_SYMBOL_PREFIX in config.h.
It is to keep all symbols in the lzma_ namespace.
windows/config.h | 3 +++
1 file changed, 3 insertions(+)
commit 7f7d093de79eee0c7dbfd7433647e46302f19f82
Author: Lasse Collin
Date: 2014-12-16 21:00:09 +0200
xz: Update the man page about --threads.
src/xz/xz.1 | 5 -----
1 file changed, 5 deletions(-)
commit 009823448b82aa5f465668878a544c5842885407
Author: Lasse Collin
Date: 2014-12-16 20:57:43 +0200
xz: Update the man page about --block-size.
src/xz/xz.1 | 41 +++++++++++++++++++++++++++++++++--------
1 file changed, 33 insertions(+), 8 deletions(-)
commit 7dddfbeb499e528940bc12047355c184644aafe9
Author: Adrien Nader
Date: 2014-12-10 22:26:57 +0100
po/fr: several more translation updates: reword and handle --ignore-check.
po/fr.po | 50 ++++++++++++++++++++++++++------------------------
1 file changed, 26 insertions(+), 24 deletions(-)
commit 6eca5be40e04ddc4b738d493e4e56835956d8b69
Author: Adrien Nader
Date: 2014-12-10 22:23:01 +0100
po/fr: yet another place where my email address had to be updated.
po/fr.po | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit d1003673e92ba47edd6aeeb3dbea05c18269d0e7
Author: Adrien Nader
Date: 2014-12-10 22:22:20 +0100
po/fr: fix several typos that have been around since the beginning.
po/fr.po | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
commit 4c5aa911a0df027e46171e368debc543d2fa72b2
Author: Adrien Nader
Date: 2014-12-03 20:02:31 +0100
po/fr: last batch of new translations for now.
Four new error messages.
po/fr.po | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
commit 3e3099e36d27059499e7996fb38a62e8ab01d356
Author: Adrien Nader
Date: 2014-12-03 20:01:32 +0100
po/fr: translations for --threads, --block-size and --block-list.
po/fr.po | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
commit e7d96a5933eec4e9d4a62569ee88df0ebb0f1d53
Author: Adrien Nader
Date: 2014-12-03 20:00:53 +0100
po/fr: remove fuzzy marker for error messages that will be kept in English.
The following is a copy of a comment inside fr.po:
Note from translator on "file status flags".
The following entry is kept un-translated on purpose. It is difficult to
translate and should only happen in exceptional circumstances which means
that translating would:
- lose some of the meaning
- make it more difficult to look up in search engines; it might happen one
in
a million times, if we dilute the error message in 20 languages, it will be
almost impossible to find an explanation and support for the error.
po/fr.po | 22 ++++++++++++++++------
1 file changed, 16 insertions(+), 6 deletions(-)
commit 46cbb9033af8a21fafe543302d6919746e0d72af
Author: Adrien Nader
Date: 2014-12-03 19:58:25 +0100
po/fr: several minor updates and better wording.
Meaning doesn't change at all: it's only for better wording and/or
formatting of a few strings.
po/fr.po | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
commit 7ce49d444f04e73145f79c832eb4d510594b074a
Author: Adrien Nader
Date: 2014-12-03 19:56:12 +0100
po/fr: update my email address and copyright years.
po/fr.po | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 214c553ebc3047cd720da1ce5c80cf7c38118d3c
Author: Adrien Nader
Date: 2014-11-26 10:08:26 +0100
fr.po: commit file after only "update-po" so actual is readable.
po/fr.po | 311 ++++++++++++++++++++++++++++++++++++++++-----------------------
1 file changed, 199 insertions(+), 112 deletions(-)
commit 1190c641af09cde85f8bd0fbe5c4906f4a29431b
Author: Lasse Collin
Date: 2014-12-02 20:04:07 +0200
liblzma: Document how lzma_mt.block_size affects memory usage.
src/liblzma/api/lzma/container.h | 4 ++++
1 file changed, 4 insertions(+)
commit e4fc1d2f9571fba79ce383595be2ea2a9257def0
Author: Lasse Collin
Date: 2014-11-28 20:07:18 +0200
Update INSTALL about a "make check" failure in test_scripts.sh.
INSTALL | 24 +++++++++++++++++-------
1 file changed, 17 insertions(+), 7 deletions(-)
commit 34f9e40a0a0c3bd2c2730cdb9cd550bbb8a3f2fe
Author: Lasse Collin
Date: 2014-11-26 20:12:27 +0200
Remove LZMA_UNSTABLE macro.
src/liblzma/api/lzma/container.h | 4 ----
src/liblzma/common/common.h | 2 --
src/xz/private.h | 1 -
3 files changed, 7 deletions(-)
commit 6d9c0ce9f2677b159e32b224aba5b535b304a705
Author: Lasse Collin
Date: 2014-11-26 20:10:33 +0200
liblzma: Update lzma_stream_encoder_mt() API docs.
src/liblzma/api/lzma/container.h | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
commit 2301f3f05dd9742f42cda8f0f318864f5dc39ab3
Author: Lasse Collin
Date: 2014-11-25 12:32:05 +0200
liblzma: Verify the filter chain in threaded encoder initialization.
This way an invalid filter chain is detected at the Stream
encoder initialization instead of delaying it to the first
call to lzma_code() which triggers the initialization of
the actual filter encoder(s).
src/liblzma/common/stream_encoder_mt.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
commit 107a263d5bb63cd3593fd6a5c938706539f84523
Author: Lasse Collin
Date: 2014-11-17 19:11:49 +0200
Build: Update m4/ax_pthread.m4 from Autoconf Archive.
m4/ax_pthread.m4 | 71 +++++++++++++++++++++++++++++++++++++-------------------
1 file changed, 47 insertions(+), 24 deletions(-)
commit b13a781833399ff5726cfc997f3cb2f0acbdbf31
Author: Lasse Collin
Date: 2014-11-17 18:52:21 +0200
Build: Replace obsolete AC_HELP_STRING with AS_HELP_STRING.
configure.ac | 36 ++++++++++++++++++------------------
m4/tuklib_integer.m4 | 2 +-
2 files changed, 19 insertions(+), 19 deletions(-)
commit 542cac122ed3550148a2af0033af22b757491378
Author: Lasse Collin
Date: 2014-11-17 18:43:19 +0200
Build: Fix Autoconf warnings about escaped backquotes.
Thanks to Daniel Richard G. for pointing out that it's
good to sometimes run autoreconf -fi with -Wall.
configure.ac | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
commit 7b03a15cea8cd4f19ed680b51c4bcbae3ce4142f
Author: Lasse Collin
Date: 2014-11-10 18:54:40 +0200
xzdiff: Use mkdir if mktemp isn't available.
src/scripts/xzdiff.in | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
commit f8c13e5e3609581d5dd9f8777985ca07f2390ad7
Author: Lasse Collin
Date: 2014-11-10 18:45:01 +0200
xzdiff: Create a temporary directory to hold a temporary file.
This avoids the possibility of "File name too long" when
creating a temp file when the input file name is very long.
This also means that other users on the system can no longer
see the input file names in /tmp (or whatever $TMPDIR is)
since the temporary directory will have a generic name. This
usually doesn't matter since on many systems one can see
the arguments given to all processes anyway.
The number X chars to mktemp where increased from 6 to 10.
Note that with some shells temp files or dirs won't be used at all.
src/scripts/xzdiff.in | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
commit 7716dcf9df7f457500cb657314e7a9aea5fedb06
Author: Lasse Collin
Date: 2014-11-10 15:38:47 +0200
liblzma: Fix lzma_mt.preset in lzma_stream_encoder_mt_memusage().
It read the filter chain from a wrong variable. This is a similar
bug that was fixed in 9494fb6d0ff41c585326f00aa8f7fe58f8106a5e.
src/liblzma/common/stream_encoder_mt.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
commit 230fa4a605542c84b4178a57381695a0af4e779b
Author: Lasse Collin
Date: 2014-11-10 14:49:55 +0200
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit 4e4ae08bc7c1711e399c9f2d26eb375d39d08101
Author: Lasse Collin
Date: 2014-10-29 21:28:25 +0200
Update .gitignore files.
.gitignore | 2 ++
m4/.gitignore | 3 +++
2 files changed, 5 insertions(+)
commit c923b140b27d1a055db6284e10fd546ad1a7fcdb
Author: Lasse Collin
Date: 2014-10-29 21:15:35 +0200
Build: Prepare to support Automake's subdir-objects.
Due to a bug in Automake, subdir-objects won't be enabled
for now.
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=17354
Thanks to Daniel Richard G. for the original patches.
configure.ac | 7 ++++++-
src/Makefile.am | 22 +++++++++++++++++++++-
src/liblzma/Makefile.am | 4 ++--
src/lzmainfo/Makefile.am | 4 ++--
src/xz/Makefile.am | 10 +++++-----
src/xzdec/Makefile.am | 8 ++++----
6 files changed, 40 insertions(+), 15 deletions(-)
commit 08c2aa16bea0df82828f665d51fba2e0a5e8997f
Author: Lasse Collin
Date: 2014-10-24 20:09:29 +0300
Translations: Update the Italian translation.
Thanks to Milo Casagrande.
po/it.po | 452 ++++++++++++++++++++++++++++++++++++++-------------------------
1 file changed, 275 insertions(+), 177 deletions(-)
commit 2f9f61aa83539c54ff6c118a2693890f0519b3dd
Author: Lasse Collin
Date: 2014-10-18 18:51:45 +0300
Translations: Update the Polish translation.
Thanks to Jakub Bogusz.
po/pl.po | 332 ++++++++++++++++++++++++++++++++++++++++-----------------------
1 file changed, 214 insertions(+), 118 deletions(-)
commit 4f9d233f67aea25e532824d11b7642cf7dee7a76
Author: Andre Noll
Date: 2014-10-14 17:30:30 +0200
l10n: de.po: Change translator email address.
Although the old address is still working, the new one should
be preferred. So this commit changes all three places in de.po
accordingly.
Signed-off-by: Andre Noll
po/de.po | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 00502b2bedad43f0cc167ac17ae0608837ee196b
Author: Andre Noll
Date: 2014-10-14 17:30:29 +0200
l10n: de.po: Update German translation
Signed-off-by: Andre Noll
po/de.po | 531 +++++++++++++++++++++++++++++++++------------------------------
1 file changed, 281 insertions(+), 250 deletions(-)
commit 706b0496753fb609e69f1570ec603f11162189d1
Author: Andre Noll
Date: 2014-10-14 17:30:28 +0200
l10n: de.po: Fix typo: Schießen -> Schließen.
That's a funny one since "schießen" means to shoot :)
Signed-off-by: Andre Noll
po/de.po | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 7c32e6a935c3d7ee366abad1679bd5f322f0c7d4
Author: Lasse Collin
Date: 2014-10-09 19:42:26 +0300
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit 076258cc458f1e705041ac7a729b15ffe8c5214a
Author: Lasse Collin
Date: 2014-10-09 19:41:51 +0300
Add support for AmigaOS/AROS to tuklib_physmem().
Thanks to Fredrik Wikstrom.
m4/tuklib_physmem.m4 | 3 ++-
src/common/tuklib_physmem.c | 7 +++++++
2 files changed, 9 insertions(+), 1 deletion(-)
commit efa7b0a210e1baa8e128fc98c5443a944c39ad24
Author: Lasse Collin
Date: 2014-10-09 18:42:14 +0300
xzgrep: Avoid passing both -q and -l to grep.
The behavior of grep -ql varies:
- GNU grep behaves like grep -q.
- OpenBSD grep behaves like grep -l.
POSIX doesn't make it 100 % clear what behavior is expected.
Anyway, using both -q and -l at the same time makes no sense
so both options simply should never be used at the same time.
Thanks to Christian Weisgerber.
src/scripts/xzgrep.in | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
commit 9c5f76098c9986b48d2fc574a0b764f4cde0c538
Author: Trần Ngọc Quân
Date: 2014-09-25 09:22:45 +0700
l10n: vi.po: Update Vietnamese translation
Signed-off-by: Trần Ngọc Quân
po/vi.po | 136 +++++++++++++++++++++++++++++++++++++++------------------------
1 file changed, 84 insertions(+), 52 deletions(-)
commit c4911f2db36d811896c73c008b4218d8fa9a4730
Author: Lasse Collin
Date: 2014-09-25 18:38:48 +0300
Build: Detect supported compiler warning flags better.
Clang and nowadays also GCC accept any -Wfoobar option
but then may give a warning that an unknown warning option
was specified. To avoid adding unsupported warning options,
the options are now tested with -Werror.
Thanks to Charles Diza.
configure.ac | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
commit 76e75522ed6f5c228d55587dee5a997893f6e474
Author: Lasse Collin
Date: 2014-09-20 21:01:21 +0300
Update NEWS for 5.0.7.
NEWS | 11 +++++++++++
1 file changed, 11 insertions(+)
commit d62028b4c1174fc67b6929f126f5eb24c018c700
Author: Lasse Collin
Date: 2014-09-20 19:42:56 +0300
liblzma: Fix a portability problem in Makefile.am.
POSIX supports $< only in inference rules (suffix rules).
Using it elsewhere is a GNU make extension and doesn't
work e.g. with OpenBSD make.
Thanks to Christian Weisgerber for the patch.
src/liblzma/Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit c35de31d4283edad3e57d37ffe939406542cb7bb
Author: Lasse Collin
Date: 2014-09-14 21:54:09 +0300
Bump the version number to 5.1.4beta.
src/liblzma/api/lzma/version.h | 4 ++--
src/liblzma/liblzma.map | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
commit e9e097e22cacdaa23e5414fea7913535449cb340
Author: Lasse Collin
Date: 2014-09-14 21:50:13 +0300
Update NEWS for 5.0.6 and 5.1.4beta.
NEWS | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)
commit 642f856bb8562ab66704b1e01ac7bc08b6d0a663
Author: Lasse Collin
Date: 2014-09-14 21:02:41 +0300
Update TODO.
TODO | 38 ++++++++++++++++++++++++++++++++++----
1 file changed, 34 insertions(+), 4 deletions(-)
commit 6b5e3b9eff5b8cedb2aac5f524d4d60fc8a48124
Author: Lasse Collin
Date: 2014-08-05 22:32:36 +0300
xz: Add --ignore-check.
src/xz/args.c | 7 +++++++
src/xz/args.h | 1 +
src/xz/coder.c | 10 +++++++++-
src/xz/message.c | 2 ++
src/xz/xz.1 | 19 +++++++++++++++++++
5 files changed, 38 insertions(+), 1 deletion(-)
commit 9adbc2ff373f979c917cdfd3679ce0ebd59f1040
Author: Lasse Collin
Date: 2014-08-05 22:15:07 +0300
liblzma: Add support for LZMA_IGNORE_CHECK.
src/liblzma/api/lzma/container.h | 24 ++++++++++++++++++++++++
src/liblzma/common/common.h | 1 +
src/liblzma/common/stream_decoder.c | 14 ++++++++++++--
3 files changed, 37 insertions(+), 2 deletions(-)
commit 0e0f34b8e4f1c60ecaec15c2105982381cc9c3e6
Author: Lasse Collin
Date: 2014-08-05 22:03:30 +0300
liblzma: Add support for lzma_block.ignore_check.
Note that this slightly changes how lzma_block_header_decode()
has been documented. Earlier it said that the .version is set
to the lowest required value, but now it says that the .version
field is kept unchanged if possible. In practice this doesn't
affect any old code, because before this commit the only
possible .version was 0.
src/liblzma/api/lzma/block.h | 50 ++++++++++++++++++++++++-------
src/liblzma/common/block_buffer_encoder.c | 2 +-
src/liblzma/common/block_decoder.c | 18 ++++++++---
src/liblzma/common/block_encoder.c | 2 +-
src/liblzma/common/block_header_decoder.c | 12 ++++++--
src/liblzma/common/block_header_encoder.c | 2 +-
src/liblzma/common/block_util.c | 2 +-
7 files changed, 68 insertions(+), 20 deletions(-)
commit 71e1437ab585b46f7a25f5a131557d3d1c0cbaa2
Author: Lasse Collin
Date: 2014-08-04 19:25:58 +0300
liblzma: Use lzma_memcmplen() in the BT3 match finder.
I had missed this when writing the commit
5db75054e900fa06ef5ade5f2c21dffdd5d16141.
Thanks to Jun I Jin.
src/liblzma/lz/lz_encoder_mf.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
commit 41dc9ea06e1414ebe8ef52afc8fc15b6e3282b04
Author: Lasse Collin
Date: 2014-08-04 00:25:44 +0300
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit 5dcffdbcc23a68abc3ac3539b30be71bc9b5af84
Author: Lasse Collin
Date: 2014-08-03 21:32:25 +0300
liblzma: SHA-256: Optimize the Maj macro slightly.
The Maj macro is used where multiple things are added
together, so making Maj a sum of two expressions allows
some extra freedom for the compiler to schedule the
instructions.
I learned this trick from
.
src/liblzma/check/sha256.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit a9477d1e0c6fd0e47e637d051e7b9e2a5d9af517
Author: Lasse Collin
Date: 2014-08-03 21:08:12 +0300
liblzma: SHA-256: Optimize the way rotations are done.
This looks weird because the rotations become sequential,
but it helps quite a bit on both 32-bit and 64-bit x86:
- It requires fewer instructions on two-operand
instruction sets like x86.
- It requires one register less which matters especially
on 32-bit x86.
I hope this doesn't hurt other archs.
I didn't invent this idea myself, but I don't remember where
I saw it first.
src/liblzma/check/sha256.c | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
commit 5a76c7c8ee9a0afbeedb1c211db9224260404347
Author: Lasse Collin
Date: 2014-08-03 20:38:13 +0300
liblzma: SHA-256: Remove the GCC #pragma that became unneeded.
The unrolling in the previous commit should avoid the
situation where a compiler may think that an uninitialized
variable might be accessed.
src/liblzma/check/sha256.c | 5 -----
1 file changed, 5 deletions(-)
commit 9a096f8e57509775c331950b8351bbca77bdcfa8
Author: Lasse Collin
Date: 2014-08-03 20:33:38 +0300
liblzma: SHA-256: Unroll a little more.
This way a branch isn't needed for each operation
to choose between blk0 and blk2, and still the code
doesn't grow as much as it would with full unrolling.
src/liblzma/check/sha256.c | 25 ++++++++++++++++---------
1 file changed, 16 insertions(+), 9 deletions(-)
commit bc7650d87bf27f85f1a2a806dc2db1780e09e6a5
Author: Lasse Collin
Date: 2014-08-03 19:56:43 +0300
liblzma: SHA-256: Do the byteswapping without a temporary buffer.
src/liblzma/check/sha256.c | 13 +------------
1 file changed, 1 insertion(+), 12 deletions(-)
commit 544aaa3d13554e8640f9caf7db717a96360ec0f6
Author: Lasse Collin
Date: 2014-07-25 22:38:28 +0300
liblzma: Use lzma_memcmplen() in normal mode of LZMA.
Two locations were not changed yet because the simplest change
assumes that the initial "len" may be greater than "limit".
src/liblzma/lzma/lzma_encoder_optimum_normal.c | 20 +++++---------------
1 file changed, 5 insertions(+), 15 deletions(-)
commit f48fce093b07aeda95c18850f5e086d9f2383380
Author: Lasse Collin
Date: 2014-07-25 22:30:38 +0300
liblzma: Simplify LZMA fast mode code by using memcmp().
src/liblzma/lzma/lzma_encoder_optimum_fast.c | 11 +----------
1 file changed, 1 insertion(+), 10 deletions(-)
commit 6bf5308e34e23dede5b301b1b9b4f131dacd9218
Author: Lasse Collin
Date: 2014-07-25 22:29:49 +0300
liblzma: Use lzma_memcmplen() in fast mode of LZMA.
src/liblzma/lzma/lzma_encoder_optimum_fast.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 353212137e51e45b105a3a3fc2e6879f1cf0d492
Author: Lasse Collin
Date: 2014-07-25 21:16:23 +0300
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit 5db75054e900fa06ef5ade5f2c21dffdd5d16141
Author: Lasse Collin
Date: 2014-07-25 21:15:07 +0300
liblzma: Use lzma_memcmplen() in the match finders.
This doesn't change the match finder output.
src/liblzma/lz/lz_encoder.c | 13 ++++++++++++-
src/liblzma/lz/lz_encoder_mf.c | 33 +++++++++++----------------------
2 files changed, 23 insertions(+), 23 deletions(-)
commit e1c8f1d01f4a4e2136173edab2dc63c71ef038f4
Author: Lasse Collin
Date: 2014-07-25 20:57:20 +0300
liblzma: Add lzma_memcmplen() for fast memory comparison.
This commit just adds the function. Its uses will be in
separate commits.
This hasn't been tested much yet and it's perhaps a bit early
to commit it but if there are bugs they should get found quite
quickly.
Thanks to Jun I Jin from Intel for help and for pointing out
that string comparison needs to be optimized in liblzma.
configure.ac | 13 +++
src/liblzma/common/Makefile.inc | 1 +
src/liblzma/common/memcmplen.h | 170 ++++++++++++++++++++++++++++++++++++++++
3 files changed, 184 insertions(+)
commit 765735cf52e5123586e74a51b9c073b5257f631f
Author: Lasse Collin
Date: 2014-07-12 21:10:09 +0300
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit 59da01785ef66c7e62f36e70ca808fd2824bb995
Author: Lasse Collin
Date: 2014-07-12 20:06:08 +0300
Translations: Add Vietnamese translation.
Thanks to Trần Ngọc Quân.
po/LINGUAS | 1 +
po/vi.po | 1007 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 1008 insertions(+)
commit 17215f751c354852700e7f8592ccf319570a0721
Author: Lasse Collin
Date: 2014-06-29 20:54:14 +0300
xz: Update the help message of a few options.
Updated: --threads, --block-size, and --block-list
Added: --flush-timeout
src/xz/message.c | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
commit 96864a6ddf91ad693d102ea165f3d7918744d582
Author: Lasse Collin
Date: 2014-06-18 22:07:06 +0300
xz: Use lzma_cputhreads() instead of own copy of tuklib_cpucores().
src/xz/Makefile.am | 1 -
src/xz/hardware.c | 12 +++++++++---
2 files changed, 9 insertions(+), 4 deletions(-)
commit a115cc3748482e277f42a968baa3cd266f031dba
Author: Lasse Collin
Date: 2014-06-18 22:04:24 +0300
liblzma: Add lzma_cputhreads().
src/liblzma/Makefile.am | 8 +++++++-
src/liblzma/api/lzma/hardware.h | 14 ++++++++++++++
src/liblzma/common/Makefile.inc | 1 +
src/liblzma/common/hardware_cputhreads.c | 22 ++++++++++++++++++++++
src/liblzma/liblzma.map | 1 +
5 files changed, 45 insertions(+), 1 deletion(-)
commit 3ce3e7976904fbab4e6482bafa442856f77a51fa
Author: Lasse Collin
Date: 2014-06-18 19:11:52 +0300
xz: Check for filter chain compatibility for --flush-timeout.
This avoids LZMA_PROG_ERROR from lzma_code() with filter chains
that don't support LZMA_SYNC_FLUSH.
src/xz/coder.c | 30 +++++++++++++++++++++---------
1 file changed, 21 insertions(+), 9 deletions(-)
commit 381ac14ed79e5d38809f251705be8b3193bba417
Author: Lasse Collin
Date: 2014-06-13 19:21:54 +0300
xzgrep: List xzgrep_expected_output in tests/Makefile.am.
tests/Makefile.am | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 4244b65b06d5ecaf6f9dd0387ac7e3166bd2364e
Author: Lasse Collin
Date: 2014-06-13 18:58:22 +0300
xzgrep: Improve the test script.
Now it should be close to the functionality of the original
version by Pavel Raiskup.
tests/Makefile.am | 3 ++-
tests/test_scripts.sh | 24 ++++++++++++++----------
tests/xzgrep_expected_output | 39 +++++++++++++++++++++++++++++++++++++++
3 files changed, 55 insertions(+), 11 deletions(-)
commit 1e60f2c0a0ee6c18b02943ce56214799a70aac26
Author: Lasse Collin
Date: 2014-06-11 21:03:25 +0300
xzgrep: Add a test for the previous fix.
This is a simplified version of Pavel Raiskup's
original patch.
tests/test_scripts.sh | 26 ++++++++++++++++++++++----
1 file changed, 22 insertions(+), 4 deletions(-)
commit ceca37901783988204caaf40dff4623d535cc789
Author: Lasse Collin
Date: 2014-06-11 20:43:28 +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.
src/scripts/xzgrep.in | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
commit 8c19216baccb92d011694590df8a1262da2e980c
Author: Lasse Collin
Date: 2014-06-09 21:21:24 +0300
xz: Force single-threaded mode when --flush-timeout is used.
src/xz/coder.c | 11 +++++++++++
1 file changed, 11 insertions(+)
commit 87f1a24810805187d7bbc8ac5512e7eec307ddf5
Author: Lasse Collin
Date: 2014-05-25 22:05:39 +0300
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit da1718f266fcfc091e7bf08aae1bc986d0e6cc6b
Author: Lasse Collin
Date: 2014-05-25 21:45:56 +0300
liblzma: Use lzma_alloc_zero() in LZ encoder initialization.
This avoids a memzero() call for a newly-allocated memory,
which can be expensive when encoding small streams with
an over-sized dictionary.
To avoid using lzma_alloc_zero() for memory that doesn't
need to be zeroed, lzma_mf.son is now allocated separately,
which requires handling it separately in normalize() too.
Thanks to Vincenzo Innocente for reporting the problem.
src/liblzma/lz/lz_encoder.c | 84 ++++++++++++++++++++++--------------------
src/liblzma/lz/lz_encoder.h | 2 +-
src/liblzma/lz/lz_encoder_mf.c | 31 +++++++++-------
3 files changed, 62 insertions(+), 55 deletions(-)
commit 28af24e9cf2eb259997c85dce13d4c97b3daa47a
Author: Lasse Collin
Date: 2014-05-25 19:25:57 +0300
liblzma: Add the internal function lzma_alloc_zero().
src/liblzma/common/common.c | 21 +++++++++++++++++++++
src/liblzma/common/common.h | 6 ++++++
2 files changed, 27 insertions(+)
commit ed9ac85822c490e34b68c259afa0b385d21d1c40
Author: Lasse Collin
Date: 2014-05-08 18:03:09 +0300
xz: Fix uint64_t vs. size_t which broke 32-bit build.
Thanks to Christian Hesse.
src/xz/coder.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit d716acdae3fa7996f9e68a7bac012e6d8d13dd02
Author: Lasse Collin
Date: 2014-05-04 11:09:11 +0300
Docs: Update comments to refer to lzma/lzma12.h in example programs.
doc/examples/03_compress_custom.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 4d5b7b3fda31241ca86ed35e08e73f776ee916e0
Author: Lasse Collin
Date: 2014-05-04 11:07:17 +0300
liblzma: Rename the private API header lzma/lzma.h to lzma/lzma12.h.
It can be confusing that two header files have the same name.
The public API file is still lzma.h.
src/liblzma/api/Makefile.am | 2 +-
src/liblzma/api/lzma.h | 2 +-
src/liblzma/api/lzma/{lzma.h => lzma12.h} | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
commit 1555a9c5664afc7893a2b75e9970105437f01ef1
Author: Lasse Collin
Date: 2014-04-25 17:53:42 +0300
Build: Fix the combination of --disable-xzdec --enable-lzmadec.
In this case "make install" could fail if the man page directory
didn't already exist at the destination. If it did exist, a
dangling symlink was created there. Now the link is omitted
instead. This isn't the best fix but it's better than the old
behavior.
src/xzdec/Makefile.am | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
commit 56056571df3377eaa6ae6233b3ccc5d72e81d43d
Author: Lasse Collin
Date: 2014-04-25 17:44:26 +0300
Build: Add --disable-doc to configure.
INSTALL | 6 ++++++
Makefile.am | 2 ++
configure.ac | 6 ++++++
3 files changed, 14 insertions(+)
commit 6de61d8721097a6214810841aa85b08e303ac538
Author: Lasse Collin
Date: 2014-04-24 18:06:24 +0300
Update INSTALL.
Add a note about failing "make check". The source of
the problem should be fixed in libtool (if it really is
a libtool bug and not mine) but I'm unable to spend time
on that for now. Thanks to Nelson H. F. Beebe for reporting
the issue.
Add a note about a possible need to run "ldconfig" after
"make install".
INSTALL | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
commit 54df428799a8d853639b753d0e6784694d73eb3e
Author: Lasse Collin
Date: 2014-04-09 17:26:10 +0300
xz: Rename a variable to avoid a namespace collision on Solaris.
I don't know the details but I have an impression that there's
no problem in practice if using GCC since people have built xz
with GCC (without patching xz), but renaming the variable cannot
hurt either.
Thanks to Mark Ashley.
src/xz/signals.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
commit 5876ca27daa1429676b1160007d9688266907f00
Author: Lasse Collin
Date: 2014-01-29 20:19:41 +0200
Docs: Add example program for threaded encoding.
I didn't add -DLZMA_UNSTABLE to Makefile so one has to
specify it manually as long as LZMA_UNSTABLE is needed.
doc/examples/04_compress_easy_mt.c | 184 +++++++++++++++++++++++++++++++++++++
doc/examples/Makefile | 3 +-
2 files changed, 186 insertions(+), 1 deletion(-)
commit 9494fb6d0ff41c585326f00aa8f7fe58f8106a5e
Author: Lasse Collin
Date: 2014-01-29 20:13:51 +0200
liblzma: Fix lzma_mt.preset not working with lzma_stream_encoder_mt().
It read the filter chain from a wrong variable.
src/liblzma/common/stream_encoder_mt.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 673a4cb53de3a715685cb1b836da57a3c7dcd43c
Author: Lasse Collin
Date: 2014-01-20 11:20:40 +0200
liblzma: Fix typo in a comment.
src/liblzma/api/lzma/block.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit ad96a871a1470eb76d6233d3890ce9338047b7a3
Author: Lasse Collin
Date: 2014-01-12 19:38:43 +0200
Windows: Add config.h for building liblzma with MSVC 2013.
This is for building liblzma. Building xz tool too requires
a little more work. Maybe it will be supported, but for most
MSVC users it's enough to be able to build liblzma.
C99 support in MSVC 2013 is almost usable which is a big
improvement over earlier versions. It's "almost" because
there's a dumb bug that breaks mixed declarations after
an "if" statements unless the "if" statement uses braces:
https://connect.microsoft.com/VisualStudio/feedback/details/808650/visual-studio-2013-c99-compiler-bug
https://connect.microsoft.com/VisualStudio/feedback/details/808472/c99-support-of-mixed-declarations-and-statements-fails-with-certain-types-and-constructs
Hopefully it will get fixed. Then liblzma should be
compilable with MSVC 2013 without patching.
windows/config.h | 139 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 139 insertions(+)
commit 3d5c090872fab4212b57c290e8ed4d02c78c1737
Author: Lasse Collin
Date: 2014-01-12 17:41:14 +0200
xz: Fix a comment.
src/xz/coder.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 69fd4e1c932c7975476a0143c86e45d81b60d3f9
Author: Lasse Collin
Date: 2014-01-12 17:04:33 +0200
Windows: Add MSVC defines for inline and restrict keywords.
src/common/sysdefs.h | 10 ++++++++++
1 file changed, 10 insertions(+)
commit a19d9e8575ee6647cd9154cf1f20203f1330485f
Author: Lasse Collin
Date: 2014-01-12 16:44:52 +0200
liblzma: Avoid C99 compound literal arrays.
MSVC 2013 doesn't like them. Maybe they aren't so good
for readability either since many aren't used to them.
src/liblzma/lzma/lzma_encoder_presets.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
commit e28528f1c867b2ed4ac91195ad08efb9bb8a6263
Author: Lasse Collin
Date: 2014-01-12 12:50:30 +0200
liblzma: Remove a useless C99ism from sha256.c.
Unsurprisingly it makes no difference in compiled output.
src/liblzma/check/sha256.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 5ad1effc45adfb7dabc9a98e79736077e6b7e2d5
Author: Lasse Collin
Date: 2014-01-12 12:17:08 +0200
xz: Fix use of wrong variable.
Since the only call to suffix_set() uses optarg
as the argument, fixing this bug doesn't change
the behavior of the program.
src/xz/suffix.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 3e62c68d75b5a3fdd46dbb34bb335d73289860d5
Author: Lasse Collin
Date: 2014-01-12 12:11:36 +0200
Fix typos in comments.
src/common/mythread.h | 2 +-
src/liblzma/check/crc32_fast.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
commit e90ea601fb72867ec04adf456cbe4bf9520fd412
Author: Lasse Collin
Date: 2013-11-26 18:20:16 +0200
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit b22e94d8d15764416354e04729382a7371ae2c30
Author: Lasse Collin
Date: 2013-11-26 18:20:09 +0200
liblzma: Document the need for block->check for lzma_block_header_decode().
Thanks to Tomer Chachamu.
src/liblzma/api/lzma/block.h | 3 +++
1 file changed, 3 insertions(+)
commit d1cd8b1cb824b72421d1ee370e628024d2fcbec4
Author: Lasse Collin
Date: 2013-11-12 16:38:57 +0200
xz: Update the man page about --block-size and --block-list.
src/xz/xz.1 | 24 +++++++++++++++---------
1 file changed, 15 insertions(+), 9 deletions(-)
commit 76be7c612e6bcc38724488ccc3b8bcb1cfec9f0a
Author: Lasse Collin
Date: 2013-11-12 16:30:53 +0200
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit dd750acbe2259d75444ef0f8da2d4bacc90d7afc
Author: Lasse Collin
Date: 2013-11-12 16:29:48 +0200
xz: Make --block-list and --block-size work together in single-threaded.
Previously, --block-list and --block-size only worked together
in threaded mode. Boundaries are specified by --block-list, but
--block-size specifies the maximum size for a Block. Now this
works in single-threaded mode too.
Thanks to James M Leddy for the original patch.
src/xz/coder.c | 90 ++++++++++++++++++++++++++++++++++++++++++++++++----------
1 file changed, 75 insertions(+), 15 deletions(-)
commit ae222fe9805d0161d022d75ba8485dab8bf6d7d5
Author: Lasse Collin
Date: 2013-10-26 13:26:14 +0300
Bump the version number to 5.1.3alpha.
src/liblzma/api/lzma/version.h | 2 +-
src/liblzma/liblzma.map | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
commit 2193837a6a597cd3bf4e9ddf49421a5697d8e155
Author: Lasse Collin
Date: 2013-10-26 13:25:02 +0300
Update NEWS for 5.1.3alpha.
NEWS | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
commit ed48e75e2763876173aef8902da407a8eb28854b
Author: Lasse Collin
Date: 2013-10-26 12:47:04 +0300
Update TODO.
TODO | 4 ----
1 file changed, 4 deletions(-)
commit 841da0352d79a56a44796a4c39163429c9f039a3
Author: Lasse Collin
Date: 2013-10-25 22:41:28 +0300
xz: Document behavior of --block-list with threads.
This needs to be updated before 5.2.0.
src/xz/xz.1 | 24 +++++++++++++++++++++---
1 file changed, 21 insertions(+), 3 deletions(-)
commit 56feb8665b78c1032aabd53c619c62af51defe64
Author: Lasse Collin
Date: 2013-10-22 20:03:12 +0300
xz: Document --flush-timeout=TIMEOUT on the man page.
src/xz/xz.1 | 37 ++++++++++++++++++++++++++++++++++++-
1 file changed, 36 insertions(+), 1 deletion(-)
commit ba413da1d5bb3324287cf3174922acd921165971
Author: Lasse Collin
Date: 2013-10-22 19:51:55 +0300
xz: Take advantage of LZMA_FULL_BARRIER with --block-list.
Now if --block-list is used in threaded mode, the encoder
won't need to flush at each Block boundary specified via
--block-list. This improves performance a lot, making
threading helpful with --block-list.
The flush timer was reset after LZMA_FULL_FLUSH but since
LZMA_FULL_BARRIER doesn't flush, resetting the timer is
no longer done.
src/xz/coder.c | 32 +++++++++++++++-----------------
1 file changed, 15 insertions(+), 17 deletions(-)
commit 0cd45fc2bc5537de287a0bc005e2d67467a92148
Author: Lasse Collin
Date: 2013-10-02 20:05:23 +0300
liblzma: Support LZMA_FULL_FLUSH and _BARRIER in threaded encoder.
Now --block-list=SIZES works with in the threaded mode too,
although the performance is still bad due to the use of
LZMA_FULL_FLUSH instead of the new LZMA_FULL_BARRIER.
src/liblzma/common/stream_encoder_mt.c | 55 ++++++++++++++++++++++++----------
1 file changed, 39 insertions(+), 16 deletions(-)
commit 97bb38712f414fabecca908af2e38a12570293fd
Author: Lasse Collin
Date: 2013-10-02 12:55:11 +0300
liblzma: Add LZMA_FULL_BARRIER support to single-threaded encoder.
In the single-threaded encoder LZMA_FULL_BARRIER is simply
an alias for LZMA_FULL_FLUSH.
src/liblzma/api/lzma/base.h | 37 ++++++++++++++++++++++++++++++-------
src/liblzma/common/common.c | 17 +++++++++++++++--
src/liblzma/common/common.h | 7 ++++++-
src/liblzma/common/stream_encoder.c | 4 +++-
4 files changed, 54 insertions(+), 11 deletions(-)
commit fef0c6b410c08e581c9178700a4e7599f0895ff9
Author: Lasse Collin
Date: 2013-09-17 11:57:51 +0300
liblzma: Add block_buffer_encoder.h into Makefile.inc.
This should have been in b465da5988dd59ad98fda10c2e4ea13d0b9c73bc.
src/liblzma/common/Makefile.inc | 1 +
1 file changed, 1 insertion(+)
commit 8083e03291b6d21c0f538163e187b4e8cd5594e4
Author: Lasse Collin
Date: 2013-09-17 11:55:38 +0300
xz: Add a missing test for TUKLIB_DOSLIKE.
src/xz/file_io.c | 2 ++
1 file changed, 2 insertions(+)
commit 6b44b4a775fe29ecc7bcb7996e086e3bc09e5fd0
Author: Lasse Collin
Date: 2013-09-17 11:52:28 +0300
Add native threading support on Windows.
Now liblzma only uses "mythread" functions and types
which are defined in mythread.h matching the desired
threading method.
Before Windows Vista, there is no direct equivalent to
pthread condition variables. Since this package doesn't
use pthread_cond_broadcast(), pre-Vista threading can
still be kept quite simple. The pre-Vista code doesn't
use anything that wasn't already available in Windows 95,
so the binaries should run even on Windows 95 if someone
happens to care.
INSTALL | 41 ++-
configure.ac | 118 ++++++--
src/common/mythread.h | 513 ++++++++++++++++++++++++++-------
src/liblzma/common/stream_encoder_mt.c | 83 +++---
src/xz/coder.c | 8 +-
windows/README-Windows.txt | 2 +-
windows/build.bash | 23 +-
7 files changed, 573 insertions(+), 215 deletions(-)
commit ae0ab74a88d5b9b15845f1d9a24ade4349a54f9f
Author: Lasse Collin
Date: 2013-09-11 14:40:35 +0300
Build: Remove a comment about Automake 1.10 from configure.ac.
The previous commit supports silent rules and that requires
Automake 1.11.
configure.ac | 2 --
1 file changed, 2 deletions(-)
commit 72975df6c8c59aaf849138ab3606e8fb6970596a
Author: Lasse Collin
Date: 2013-09-09 20:37:03 +0300
Build: Create liblzma.pc in a src/liblzma/Makefile.am.
Previously it was done in configure, but doing that goes
against the Autoconf manual. Autoconf requires that it is
possible to override e.g. prefix after running configure
and that doesn't work correctly if liblzma.pc is created
by configure.
A potential downside of this change is that now e.g.
libdir in liblzma.pc is a standalone string instead of
being defined via ${prefix}, so if one overrides prefix
when running pkg-config the libdir won't get the new value.
I don't know if this matters in practice.
Thanks to Vincent Torri.
configure.ac | 1 -
src/liblzma/Makefile.am | 20 ++++++++++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
commit 1c2b6e7e8382ed390f53e140f160488bb2205ecc
Author: Lasse Collin
Date: 2013-08-04 15:24:09 +0300
Fix the previous commit which broke the build.
Apparently I didn't even compile-test the previous commit.
Thanks to Christian Hesse.
src/common/tuklib_cpucores.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 124eb69c7857f618b4807588c51bc9ba21bf8691
Author: Lasse Collin
Date: 2013-08-03 13:52:58 +0300
Windows: Add Windows support to tuklib_cpucores().
It is used for Cygwin too. I'm not sure if that is
a good or bad idea.
Thanks to Vincent Torri.
m4/tuklib_cpucores.m4 | 19 +++++++++++++++++--
src/common/tuklib_cpucores.c | 13 ++++++++++++-
2 files changed, 29 insertions(+), 3 deletions(-)
commit eada8a875ce3fd521cb42e4ace2624d3d49c5f35
Author: Anders F Bjorklund
Date: 2013-08-02 15:59:46 +0200
macosx: separate liblzma package
macosx/build.sh | 23 +++++++++++++++--------
1 file changed, 15 insertions(+), 8 deletions(-)
commit be0100d01ca6a75899d051bee00acf17e6dc0c15
Author: Anders F Bjorklund
Date: 2013-08-02 15:58:44 +0200
macosx: set minimum to leopard
macosx/build.sh | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
commit 416729e2d743f4b2fe9fd438eedeb98adce033c3
Author: Anders F Bjorklund
Date: 2011-08-07 13:13:30 +0200
move configurables into variables
macosx/build.sh | 25 ++++++++++++++++++-------
1 file changed, 18 insertions(+), 7 deletions(-)
commit 16581080e5f29f9a4e49efece21c5bf572323acc
Author: Lasse Collin
Date: 2013-07-15 14:08:41 +0300
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit 3e2b198ba37b624efd9c7caee2a435dc986b46c6
Author: Lasse Collin
Date: 2013-07-15 14:08:02 +0300
Build: Fix the detection of missing CRC32.
Thanks to Vincent Torri.
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit dee6ad3d5915422bc30a6821efeacaeb8ca8ef00
Author: Lasse Collin
Date: 2013-07-04 14:18:46 +0300
xz: Add preliminary support for --flush-timeout=TIMEOUT.
When --flush-timeout=TIMEOUT is used, xz will use
LZMA_SYNC_FLUSH if read() would block and at least
TIMEOUT milliseconds has elapsed since the previous flush.
This can be useful in realtime-like use cases where the
data is simultanously decompressed by another process
(possibly on a different computer). If new uncompressed
input data is produced slowly, without this option xz could
buffer the data for a long time until it would become
decompressible from the output.
If TIMEOUT is 0, the feature is disabled. This is the default.
This commit affects the compression side. Using xz for
the decompression side for the above purpose doesn't work
yet so well because there is quite a bit of input and
output buffering when decompressing.
The --long-help or man page were not updated yet.
The details of this feature may change.
src/xz/args.c | 7 +++++++
src/xz/coder.c | 46 +++++++++++++++++++++++++++++++++++-----------
src/xz/file_io.c | 46 ++++++++++++++++++++++++++++++++++++----------
3 files changed, 78 insertions(+), 21 deletions(-)
commit fa381acaf9a29a8114e1c0a97de99bab9adb014e
Author: Lasse Collin
Date: 2013-07-04 13:41:03 +0300
xz: Don't set src_eof=true after an I/O error because it's useless.
src/xz/file_io.c | 3 ---
1 file changed, 3 deletions(-)
commit ea00545beace5b950f709ec21e46878e0f448678
Author: Lasse Collin
Date: 2013-07-04 13:25:11 +0300
xz: Fix the test when to read more input.
Testing for end of file was no longer correct after full flushing
became possible with --block-size=SIZE and --block-list=SIZES.
There was no bug in practice though because xz just made a few
unneeded zero-byte reads.
src/xz/coder.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 736903c64bef394c06685d79908e397bcb08b88f
Author: Lasse Collin
Date: 2013-07-04 12:51:57 +0300
xz: Move some of the timing code into mytime.[hc].
This switches units from microseconds to milliseconds.
New clock_gettime(CLOCK_MONOTONIC) will be used if available.
There is still a fallback to gettimeofday().
src/xz/Makefile.am | 2 ++
src/xz/coder.c | 5 +++
src/xz/message.c | 54 +++++++++------------------------
src/xz/mytime.c | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
src/xz/mytime.h | 47 ++++++++++++++++++++++++++++
src/xz/private.h | 1 +
6 files changed, 158 insertions(+), 40 deletions(-)
commit 24edf8d807e24ffaa1e793114d94cca3b970027d
Author: Lasse Collin
Date: 2013-07-01 14:35:03 +0300
Update THANKS.
THANKS | 1 +
1 file changed, 1 insertion(+)
commit c0627b3fceacfa1ed162f5f55235360ea26f569a
Author: Lasse Collin
Date: 2013-07-01 14:34:11 +0300
xz: Silence a warning seen with _FORTIFY_SOURCE=2.
Thanks to Christian Hesse.
src/xz/file_io.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
commit 1936718bb38ee394bd89836fdd4eabc0beb02443
Author: Lasse Collin
Date: 2013-06-30 19:40:11 +0300
Update NEWS for 5.0.5.
NEWS | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
commit a37ae8b5eb6093a530198f109c6f7a538c80ecf0
Author: Lasse Collin
Date: 2013-06-30 18:02:27 +0300
Man pages: Use similar syntax for synopsis as in xz.
The man pages of lzmainfo, xzmore, and xzdec had similar
constructs as the man page of xz had before the commit
eb6ca9854b8eb9fbf72497c1cf608d6b19d2d494. Eric S. Raymond
didn't mention these man pages in his bug report, but
it's nice to be consistent.
src/lzmainfo/lzmainfo.1 | 4 ++--
src/scripts/xzmore.1 | 6 +++---
src/xzdec/xzdec.1 | 10 +++++-----
3 files changed, 10 insertions(+), 10 deletions(-)
commit cdba9ddd870ae72fd6219a125662c20ec997f86c
Author: Lasse Collin
Date: 2013-06-29 15:59:13 +0300
xz: Use non-blocking I/O for the output file.
Now both reading and writing should be without
race conditions with signals.
They might still be signal handling issues left.
Signals are blocked during many operations to avoid
EINTR but it may cause problems e.g. if writing to
stderr blocks when trying to display an error message.
src/xz/file_io.c | 57 ++++++++++++++++++++++++++++++++++++++++++++++++--------
1 file changed, 49 insertions(+), 8 deletions(-)
commit e61a5c95da3fe31281d959e5e842885a8ba2b5bd
Author: Lasse Collin
Date: 2013-06-28 23:56:17 +0300
xz: Fix return value type in io_write_buf().
It didn't affect the behavior of the code since -1
becomes true anyway.
src/xz/file_io.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 9dc319eabb34a826f4945f91c71620f14a60e9e2
Author: Lasse Collin
Date: 2013-06-28 23:48:05 +0300
xz: Use the self-pipe trick to avoid a race condition with signals.
It is possible that a signal to set user_abort arrives right
before a blocking system call is made. In this case the call
may block until another signal arrives, while the wanted
behavior is to make xz clean up and exit as soon as possible.
After this commit, the race condition is avoided with the
input side which already uses non-blocking I/O. The output
side still uses blocking I/O and thus has the race condition.
src/xz/file_io.c | 56 ++++++++++++++++++++++++++++++++++++++++++++------------
src/xz/file_io.h | 8 ++++++++
src/xz/signals.c | 5 +++++
3 files changed, 57 insertions(+), 12 deletions(-)
commit 3541bc79d0cfabc0ad155c99bfdad1289f17fec3
Author: Lasse Collin
Date: 2013-06-28 22:51:02 +0300
xz: Use non-blocking I/O for the input file.
src/xz/file_io.c | 156 +++++++++++++++++++++++++++++++++++++++----------------
1 file changed, 111 insertions(+), 45 deletions(-)
commit 78673a08bed5066c81e8a8e90d20e670c28ecfd5
Author: Lasse Collin