aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-07-23Upgrade xz to 5.2.5HEADndk-r23-beta6ndk-r23-beta5ndk-r23-beta4ndk-r23-beta3ndk-r23-beta2ndk-r23-beta1ndk-r22-beta1ndk-r22ndk-release-r23ndk-release-r22mastermainllvm-r487747llvm-r450784llvm-r416183llvm-r399163bbusytown-mac1010-releaseHaibo Huang
Bug: 161925045 Change-Id: Ifaeca15b70f1a880ddb0550b20ca5da26e5c5aa5
2020-03-17Bump version and soname for 5.2.5.Lasse Collin
2020-03-17Update NEWS for 5.2.5.Lasse Collin
2020-03-16Translations: Rebuild cs.po to avoid incorrect fuzzy strings.Lasse Collin
"make dist" updates the .po files and the fuzzy strings would result in multiple very wrong translations.
2020-03-16README: Update outdated sections.Lasse Collin
2020-03-16README: Mention that translatable strings will change after 5.2.x.Lasse Collin
2020-03-16README: Mention that man pages can be translated.Lasse Collin
2020-03-16Translations: Add partial Danish translation.Lasse Collin
I made a few minor white space changes without getting them approved by the Danish translation team.
2020-03-16Update INSTALL.generic from Automake 1.16.1.Lasse Collin
2020-03-15Update INSTALL for Windows and DOS and add preliminary info for z/OS.Lasse Collin
2020-03-15Build: Update m4/ax_pthread.m4 from Autoconf Archive (again).Lasse Collin
2020-03-11xz: Never use thousand separators in DJGPP builds.Lasse Collin
DJGPP 2.05 added support for thousands separators but it's broken at least under WinXP with Finnish locale that uses a non-breaking space as the thousands separator. Workaround by disabling thousands separators for DJGPP builds.
2020-03-11DOS: Update dos/Makefile for DJGPP 2.05.Lasse Collin
It doesn't need -fgnu89-inline like 2.04beta did.
2020-03-11DOS: Update instructions in dos/INSTALL.txt.Lasse Collin
2020-03-11DOS: Update config.h.Lasse Collin
The added defines assume GCC >= 4.8.
2020-03-11Translations: Add hu, zh_CN, and zh_TW.Lasse Collin
I made a few white space changes to these without getting them approved by the translation teams. (I tried to contact the hu and zh_TW teams but didn't succeed. I didn't contact the zh_CN team.)
2020-03-11Translations: Update vi.po to match the file from the TP.Lasse Collin
The translated strings haven't been updated but word wrapping is different.
2020-03-11Translations: Add fi and pt_BR, and update de, fr, it, and pl.Lasse Collin
The German translation isn't identical to the file in the Translation Project but the changes (white space changes only) were approved by the translator Mario Blättermann.
2020-03-11Update THANKS.Lasse Collin
2020-03-11Build: Add very limited experimental CMake support.Lasse Collin
This version matches CMake files in the master branch (commit 265daa873c0d871f5f23f9b56e133a6f20045a0a) except that this omits two source files that aren't in v5.2 and in the beginning of CMakeLists.txt the first paragraph in the comment is slightly different to point out possible issues in building shared liblzma.
2020-03-11Build: Add support for --no-po4a option to autogen.sh.Lasse Collin
Normally, if po4a isn't available, autogen.sh will return with non-zero exit status. The option --no-po4a can be useful when one knows that po4a isn't available but wants autogen.sh to still return with zero exit status.
2020-03-11Update m4/.gitignore.Lasse Collin
2020-03-11liblzma: Remove unneeded <sys/types.h> from fastpos_tablegen.c.Lasse Collin
This file only generates fastpos_table.c. It isn't built as a part of liblzma.
2020-03-11Use defined(__GNUC__) before __GNUC__ in preprocessor lines.Lasse Collin
This should silence the equivalent of -Wundef in compilers that don't define __GNUC__.
2020-03-11liblzma: Add more uses of lzma_memcmplen() to the normal mode of LZMA.Lasse Collin
This gives a tiny encoder speed improvement. This could have been done in 2014 after the commit 544aaa3d13554e8640f9caf7db717a96360ec0f6 but it was forgotten.
2020-03-11Build: Add visibility.m4 from gnulib.Lasse Collin
Appears that this file used to get included as a side effect of gettext. After the change to gettext version requirements this file no longer got copied to the package and so the build was broken.
2020-03-11xz: Silence a warning when sig_atomic_t is long int.Lasse Collin
It can be true at least on z/OS.
2020-03-11xz: Avoid unneeded access of a volatile variable.Lasse Collin
2020-03-11tuklib_integer.m4: Optimize the check order.Lasse Collin
The __builtin byteswapping is the preferred one so check for it first.
2020-03-11tuklib_exit: Add missing header.Lasse Collin
strerror() needs <string.h> which happened to be included via tuklib_common.h -> tuklib_config.h -> sysdefs.h if HAVE_CONFIG_H was defined. This wasn't tested without config.h before so it had worked fine.
2020-03-11sysdefs.h: Omit the conditionals around string.h and limits.h.Lasse Collin
string.h is used unconditionally elsewhere in the project and configure has always stopped if limits.h is missing, so these headers must have been always available even on the weirdest systems.
2020-03-11Build: Bump Autoconf and Libtool version requirements.Lasse Collin
There is no specific reason for this other than blocking the most ancient versions. These are still old: Autoconf 2.69 (2012) Automake 1.12 (2012) gettext 0.19.6 (2015) Libtool 2.4 (2010)
2020-03-11Build: Use AM_GNU_GETTEXT_REQUIRE_VERSION and require 0.19.6.Lasse Collin
This bumps the version requirement from 0.19 (from 2014) to 0.19.6 (2015). Using only the old AM_GNU_GETTEXT_VERSION results in old gettext infrastructure being placed in the package. By using both macros we get the latest gettext files while the other programs in the Autotools family can still see the old macro.
2020-03-11Translations: Add German translation of the man pages.Lasse Collin
Thanks to Mario Blättermann.
2020-03-11Build: Add support for translated man pages using po4a.Lasse Collin
The dependency on po4a is optional. It's never required to install the translated man pages when xz is built from a release tarball. If po4a is missing when building from xz.git, the translated man pages won't be generated but otherwise the build will work normally. The translations are only updated automatically by autogen.sh and by "make mydist". This makes it easy to keep po4a as an optional dependency and ensures that I won't forget to put updated translations to a release tarball. The translated man pages aren't installed if --disable-nls is used. The installation of translated man pages abuses Automake internals by calling "install-man" with redefined dist_man_MANS and man_MANS. This makes the hairy script code slightly less hairy. If it breaks some day, this code needs to be fixed; don't blame Automake developers. Also, this adds more quotes to the existing shell script code in the Makefile.am "-hook"s.
2020-02-06Update THANKS (sync with the master branch).Lasse Collin
2020-02-06Update tests/.gitignore.Lasse Collin
2020-02-06Update m4/.gitignore.Lasse Collin
2020-02-06Update THANKS.Lasse Collin
2020-02-05xz: Comment out annoying sandboxing messages.Lasse Collin
2020-02-05Build: Workaround a POSIX shell detection problem on Solaris.Lasse Collin
I don't know if the problem is in gnulib's gl_POSIX_SHELL macro or if xzgrep does something that isn't in POSIX. The workaround adds a special case for Solaris: if /usr/xpg4/bin/sh exists and gl_cv_posix_shell wasn't overriden on the configure command line, use that shell for xzgrep and other scripts. That shell is known to work and exists on most Solaris systems.
2020-02-05Build: Update m4/ax_pthread.m4 from Autoconf Archive.Lasse Collin
2020-02-05xz: Limit --memlimit-compress to at most 4020 MiB for 32-bit xz.Lasse Collin
See the code comment for reasoning. It's far from perfect but hopefully good enough for certain cases while hopefully doing nothing bad in other situations. At presets -5 ... -9, 4020 MiB vs. 4096 MiB makes no difference on how xz scales down the number of threads. The limit has to be a few MiB below 4096 MiB because otherwise things like "xz --lzma2=dict=500MiB" won't scale down the dict size enough and xz cannot allocate enough memory. With "ulimit -v $((4096 * 1024))" on x86-64, the limit in xz had to be no more than 4085 MiB. Some safety margin is good though. This is hack but it should be useful when running 32-bit xz on a 64-bit kernel that gives full 4 GiB address space to xz. Hopefully this is enough to solve this: https://bugzilla.redhat.com/show_bug.cgi?id=1196786 FreeBSD has a patch that limits the result in tuklib_physmem() to SIZE_MAX on 32-bit systems. While I think it's not the way to do it, the results on --memlimit-compress have been good. This commit should achieve practically identical results for compression while leaving decompression and tuklib_physmem() and thus lzma_physmem() unaffected.
2020-02-05xz: Set the --flush-timeout deadline when the first input byte arrives.Lasse Collin
xz --flush-timeout=2000, old version: 1. xz is started. The next flush will happen after two seconds. 2. No input for one second. 3. A burst of a few kilobytes of input. 4. No input for one second. 5. Two seconds have passed and flushing starts. The first second counted towards the flush-timeout even though there was no pending data. This can cause flushing to occur more often than needed. xz --flush-timeout=2000, after this commit: 1. xz is started. 2. No input for one second. 3. A burst of a few kilobytes of input. The next flush will happen after two seconds counted from the time when the first bytes of the burst were read. 4. No input for one second. 5. No input for another second. 6. Two seconds have passed and flushing starts.
2020-02-05xz: Move flush_needed from mytime.h to file_pair struct in file_io.h.Lasse Collin
2020-02-05xz: coder.c: Make writing output a separate function.Lasse Collin
The same code sequence repeats so it's nicer as a separate function. Note that in one case there was no test for opt_mode != MODE_TEST, but that was only because that condition would always be true, so this commit doesn't change the behavior there.
2020-02-05xz: Fix semi-busy-waiting in xz --flush-timeout.Lasse Collin
When input blocked, xz --flush-timeout=1 would wake up every millisecond and initiate flushing which would have nothing to flush and thus would just waste CPU time. The fix disables the timeout when no input has been seen since the previous flush.
2020-02-05xz: Refactor io_read() a bit.Lasse Collin
2020-02-05xz: Update a comment in file_io.h.Lasse Collin
2020-02-05xz: Move the setting of flush_needed in file_io.c to a nicer location.Lasse Collin