aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-01-24Set LC_NUMERIC=C when --robot is used.Lasse Collin1-0/+4
It is to ensure that floating point numbers will always have a dot as the decimal separator.
2010-01-24Some improvements to printing sizes in xz.Lasse Collin5-90/+166
2010-01-20Fix a typo in README.Lasse Collin1-1/+1
Thanks to R. Bijker.
2010-01-17Updated windows/Makefile.Lasse Collin2-13/+27
Thanks to Dan Shechter for the patch. It is likely that windows/Makefile will be removed completely, because Autotols based build nowadays works well with both 32-bit and 64-bit MinGW (I just need to update the docs).
2010-01-15Update the xz man page to match the previous two commits.Lasse Collin1-6/+3
2010-01-13Don't read compressed data from a terminal or write itLasse Collin2-15/+13
to a terminal even if --force is specified. It just seems more reasonable this way. The new behavior matches bzip2. The old one matched gzip.
2010-01-13Don't compress or decompress special files unless writingLasse Collin1-5/+10
to stdout even if --force is used. --force will still enable compression of symlinks, but only in case they point to a regular file. The new way simply seems more reasonable. It matches gzip's behavior while the old one matched bzip2's behavior.
2010-01-12Updated THANKS.Lasse Collin1-0/+1
2010-01-12Add IRIX-specific code to tuklib_physmem and tuklib_cpucores.Lasse Collin4-3/+55
This is untested but it will get tested soon and, if needed, fixed before 5.0.0. Thanks to Stuart Shelton.
2010-01-01Fix _memconfig() functions.Lasse Collin4-19/+20
This affects lzma_memusage() and lzma_memlimit_get().
2009-12-31Revised the Index handling code.Lasse Collin9-858/+1703
This breaks API and ABI but most apps are not affected since most apps don't use this part of the API. You will get a compile error if you are using anything that got broken. Summary of changes: - Ability to store Stream Flags, which are needed for random-access reading in multi-Stream files. - Separate function to set size of Stream Padding. - Iterator structure makes it possible to read the same lzma_index from multiple threads at the same time. - A lot faster code to locate Blocks. - Removed lzma_index_equal() without adding anything to replace it. I don't know what it should do exactly with the new features and what actually needs this function in the first place other than test_index.c, which now has its own code to compare lzma_indexes.
2009-12-31Remove c-format tag in cs.po.Lasse Collin1-1/+0
It was fixed in the C code earlier.
2009-12-31Add missing lzma_nothrow in filter.h.Lasse Collin1-2/+2
2009-12-09Remove redefinition of _(msgid) macro from lzmainfo.c.Lasse Collin1-7/+0
2009-12-09update po/.gitignoreJonathan Nieder1-6/+22
Since the *.gmo files are deleted by the maintainer-clean target, I assume they are not meant to be tracked. Also add the other files listed in the Makefile’s clean targets (stamp-poT, xz.po, xz.[12].po, *.new.po, xz.mo) to make sure they are not accidentally tracked. Most of these are intermediate files that would not appear unless a build is interrupted or fails. Split the list of untracked files by origin to make it easier to tell if files are missing in the future. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
2009-12-09Always rely on GCC's auto-import on Windows.Lasse Collin1-7/+9
I understood that this is nicer, because then people don't need to worry about the LZMA_API_STATIC macro. Thanks to Charles Wilson and Keith Marshall.
2009-12-07Fix file_io.c on DOS-like systems.Lasse Collin1-0/+4
The problem was introduced when adding sparse file support in 465d1b0d6518c5d980f2db4c2d769f9905bdd902. Thanks to Charles Wilson.
2009-12-07Add Czech translation.Lasse Collin3-0/+639
Thanks to Marek Černocký. Other people planning to translate xz: Note that the messages are a little bit in flux still. Translations are still welcome, just be prepared to some extra work in case there are changes.
2009-12-07Add a note for translators to add a bug reporting addressLasse Collin1-0/+4
for translation bugs.
2009-12-07Prevent xgettext from taking one regular string as a C format string.Lasse Collin1-1/+1
Thanks to Marek Černocký.
2009-11-28Remove duplicate code in io_open_dest().Lasse Collin1-8/+1
Fix a missing _() in the error message too.
2009-11-26Typo fix to sysdefs.h.Lasse Collin1-1/+1
Thanks to Jonathan Nieder.
2009-11-26Fix a memory leak in test_index.c.Lasse Collin1-0/+2
This was introduced in bd13b04e202b6f495a68eb0766f97085b7c50a06. Thanks to Jim Meyering for noticing it.
2009-11-25Add missing error check to coder.c.Lasse Collin1-9/+11
With bad luck this could cause a segfault due to reading (but not writing) past the end of the buffer.
2009-11-25Fix bugs in lzma_index_read() and lzma_index_cat().Lasse Collin2-14/+44
lzma_index_read() didn't skip over Stream Padding if it was the first record in the Index. lzma_index_cat() didn't combine small Indexes correctly. The test suite was updated to check for these bugs. These bugs didn't affect the xz command line tool or most users of liblzma in any way.
2009-11-25Index decoder fixes.Lasse Collin2-17/+32
The Index decoder code didn't perfectly match the API docs, which said that *i will be set to point to the decoded Index only after decoding has succeeded. The docs were a bit unclear too. Now the decoder will initially set *i to NULL. *i will be set to point to the decoded Index once decoding has succeeded. This simplifies applications too, since it avoids dangling pointers.
2009-11-25Create sparse files by default when decompressing intoLasse Collin6-56/+272
a regular file. Sparse file creation can be disabled with --no-sparse. I don't promise yet that the name of this option won't change before 5.0.0. It's possible that the code, that checks when it is safe to use sparse output on stdout, is not good enough, and a more flexible command line option is needed to configure sparse file handling.
2009-11-22Updated THANKS.Lasse Collin1-0/+1
2009-11-22Add missing consts to pointer casts.Lasse Collin2-4/+5
2009-11-22Enable assembler code only if it is known to workLasse Collin1-14/+12
on that operating system. I'm too lazy to think how to make a good Autoconf test for this and it's not that important anyway. No longer define HAVE_ASM_X86 or HAVE_ASM_X86_64. Inline assembler (if any) is used if a macro like __i386__ or __x86_64__ is defined.
2009-11-22Make fastpos.h use tuklib_integer.h instead of bsr.hLasse Collin3-65/+1
when --enable-small has been specified.
2009-11-22Update tuklib_integer.h with bit scan functions.Lasse Collin1-8/+181
Thanks to Joachim Henke for the original patch.
2009-11-20Update tuklib_cpucores.m4 and tuklib_physmem.m4 from tuklib,Lasse Collin3-36/+61
which now use AC_CACHE_CHECK. Using the cache variable, configure now warns if there is no method to detect the amount of RAM and recommends using --enable-assume-ram.
2009-11-16Add support for --info-memory and --robot to xz.Lasse Collin6-55/+133
Currently --robot works only with --info-memory and --version. --help and --long-help work too, but --robot has no effect on them. Thanks to Jonathan Nieder for the original patches.
2009-11-15Fix wrong indentation caused by incorrect settingsLasse Collin3-13/+13
in the text editor.
2009-11-15Add lzma_physmem().Lasse Collin10-11/+88
I had hoped to keep liblzma as purely a compression library as possible (e.g. file I/O will go into a different library), but it seems that applications linking agaisnt liblzma need some way to determine the memory usage limit, and knowing the amount of RAM is one reasonable way to help making such decisions. Thanks to Jonathan Nieder for the original patch.
2009-11-14Updated THANKS.Lasse Collin1-0/+1
2009-11-14Some updates to xz man page.Lasse Collin1-5/+49
2009-11-14Fix description of --memory in --long-help.Lasse Collin1-2/+1
2009-11-14Update the debug programs so that they compile again.Lasse Collin3-7/+14
2009-11-14Fix a design error in liblzma API.Lasse Collin20-118/+273
Originally the idea was that using LZMA_FULL_FLUSH with Stream encoder would read the filter chain from the same array that was used to intialize the Stream encoder. Since most apps wouldn't use LZMA_FULL_FLUSH, most apps wouldn't need to keep the filter chain available after initializing the Stream encoder. However, due to my mistake, it actually required keeping the array always available. Since setting the new filter chain via the array used at initialization time is not a nice way to do it for a couple of reasons, this commit ditches it and introduces lzma_filters_update(). This new function replaces also the "persistent" flag used by LZMA2 (and to-be-designed Subblock filter), which was also an ugly thing to do. Thanks to Alexey Tourbin for reminding me about the problem that Stream encoder used to require keeping the filter chain allocated.
2009-10-17Fix wrong function name in the previous commit.Lasse Collin2-2/+2
It was meant to be lzma_filters_copy(), not lzma_filters_dup().
2009-10-17Add lzma_filters_copy().Lasse Collin2-0/+113
This will be needed internally by liblzma once I fix a design mistake in the encoder API. This function may be useful to applications too so it's good to export it.
2009-10-16Escape dashes in xzmore.1Jonathan Nieder1-2/+2
A minus sign is larger, easier to see in a printout, and more likely to use the same glyph as ASCII hyphen-minus in a terminal than a hyphen. Since broken manual pagers do not find hyphens when the user searches for a hyphen-minus, minus signs are also easier to search for. So use minus signs instead of hyphens to render sample terminal output.
2009-10-16Mention --check=none in --long-help. It was already inLasse Collin1-1/+1
the man page though. Thanks to Jim Meyering for noticing this.
2009-10-04Use a tuklib module for integer handling.Lasse Collin28-333/+467
This replaces bswap.h and integer.h. The tuklib module uses <byteswap.h> on GNU, <sys/endian.h> on *BSDs and <sys/byteorder.h> on Solaris, which may contain optimized code like inline assembly.
2009-10-02Add support for --enable-assume-ram=SIZE.Lasse Collin4-6/+46
2009-10-02Use unaligned access (if possible) on both endiannessesLasse Collin1-2/+2
in lz_encoder_hash.h.
2009-10-02Make liblzma produce the same output on both endiannesses.Lasse Collin6-14/+128
Seems that it is a problem in some cases if the same version of XZ Utils produces different output on different endiannesses, so this commit fixes that problem. The output will still vary between different XZ Utils versions, but I cannot avoid that for now. This commit bloatens the code on big endian systems by 1 KiB, which should be OK since liblzma is bloated already. ;-)
2009-09-27add lzmainfo to gitignoreMike Frysinger1-0/+2
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-09-27Updated THANKS.Lasse Collin1-0/+1
2009-09-27Work around a bug in Interix header files.Lasse Collin1-0/+6
Thanks to Markus Duft for the patch.
2009-09-24Fix an error in OpenVMS-specific code.Lasse Collin1-1/+1
Thanks to Jouk Jansen.
2009-09-22Added OpenVMS-specific information to INSTALL.Lasse Collin1-0/+11
2009-09-22Better fixes for OpenVMS support.Lasse Collin1-3/+16
Thanks to Jouk Jansen.
2009-09-22Avoid non-standard preprocessor construct.Lasse Collin1-4/+7
Thanks to Jouk Jansen.
2009-09-21Make sure that TUKLIB_DOSLIKE doesn't get defined on Cygwin.Lasse Collin1-1/+2
Thanks to Charles Wilson.
2009-09-19Various changes.Lasse Collin37-434/+768
Separate a few reusable components from XZ Utils specific code. The reusable code is now in "tuklib" modules. A few more could be separated still, e.g. bswap.h. Fix some bugs in lzmainfo. Fix physmem and cpucores code on OS/2. Thanks to Elbert Pol for help. Add OpenVMS support into physmem. Add a few #ifdefs to ease building XZ Utils on OpenVMS. Thanks to Jouk Jansen for the original patch.
2009-09-15Fix incorrect use of "restrict".Lasse Collin3-4/+4
2009-09-12Fix GCC version check for nothrow attribute.Lasse Collin1-1/+1
2009-09-12Updated THANKS.Lasse Collin1-0/+1
2009-09-12A few grammar fixes.Lasse Collin7-23/+23
Thanks to Christian Weisgerber for pointing out some of these.
2009-09-11Updated THANKS.Lasse Collin1-0/+1
2009-09-11Add PACKAGE_HOMEPAGE to {windows,dos}/config.h to fix build errors.Lasse Collin2-0/+6
2009-09-11Use $(LN_EXEEXT) in symlinks to executables.Lasse Collin2-2/+11
This fixes "make install" on operating systems using a suffix for executables. Cygwin is treated specially. The symlink names won't have .exe suffix even though the executables themselves have. Thanks to Charles Wilson.
2009-09-11Fix a couple of warnings.Lasse Collin5-11/+8
2009-09-05Add OS/2-specific code to physmem.h.Lasse Collin1-11/+21
Also move DJGPP-specific code near the code meant for other DOS-like systems.
2009-09-05Updated THANKS.Lasse Collin1-0/+2
2009-09-05Use sysctl() != -1 instead of !sysctl() to check ifLasse Collin2-2/+2
the function call succeeded. NetBSD 4.0 returns positive values on success, but NetBSD Current and FreeBSD return zero. OpenBSD's man page doesn't tell what sysctl() returns on success. All these BSDs return -1 on error. Thanks to Robert Elz and Thomas Klausner.
2009-09-02Mention in INSTALL that --enable-small doesn't modify CFLAGS.Lasse Collin1-0/+4
2009-09-01Refactored option parsing.Lasse Collin1-35/+35
2009-09-01Fix options parsing bug in xz.Lasse Collin1-4/+2
xz used to reject "xz --lzma2=pb=2," while "xz --lzma2=pb=2,," worked. Now both work.
2009-09-01Updated TODO.Lasse Collin1-0/+3
2009-08-31Revert 43f44160b1ddcbf7e5205c37db09b3bebe7226f9Lasse Collin2-10/+4
and use a fix that works on all systems using GNU assembler. Maybe the assembler code is used e.g. on Solaris x86 but let's worry about it if this doesn't work on it.
2009-08-30Updated THANKS.Lasse Collin1-0/+1
2009-08-30Add more OS/2 specific info to INSTALL.Lasse Collin1-0/+5
2009-08-29Use even more hackish way to support thousand separators.Lasse Collin1-11/+25
Seems that in addition on Windows and DOS, also OpenBSD lacks support for %'d style printf() format strings. So far that is the only modern POSIX-like system I know with this problem, but after this hack, the thousand separator shouldn't be a problem on any system. Maybe testing if a format string like %'d produces reasonable output is invoking undefined behavior on some systems, but so far all the problematic systems I've tried just print the raw format string (e.g. %'d prints 'd). Maybe Autoconf test would have been better, but this hack works also for cross-compilation, and avoids recompilation in case the system libc starts to support the thousand separator.
2009-08-29Updated THANKS.Lasse Collin1-0/+3
2009-08-29Fix sysctl() usage.Lasse Collin4-4/+4
This fixes build on *BSDs and Darwin. Thanks to Jukka Salmi for the patches. Richard Koch reported the problem too.
2009-08-29Fix x86 assembler on GCC 3.Lasse Collin2-4/+10
Thanks to Karl Berry.
2009-08-27"make dist" fixeslarhzu/v4.999.9betaLasse Collin1-7/+6
2009-08-27Update xz man page date.Lasse Collin1-1/+1
2009-08-27Fix the debug directory.Lasse Collin5-2/+7
6a2eb54092fc625d59921a607ff68cd1a90aa898 and 71f18e8a066a01dda0c8e5508b135ef104e43e4c required some changes that weren't applied in debug.
2009-08-27Add missing files to EXTRA_DIST.Lasse Collin1-4/+7
2009-08-27Bumped version to 4.999.9beta.Lasse Collin1-1/+1
2009-08-27Updated THANKS.Lasse Collin1-0/+2
2009-08-27.xz file format specification 1.0.4 (probably).Lasse Collin1-11/+15
Thanks to Christian von Roques, Peter Lawler, and Jim Meyering for the fixes.
2009-08-27Require GNU libtool 2.2.Lasse Collin1-10/+3
2009-08-27Add "dos" to EXTRA_DIST.Lasse Collin1-0/+1
2009-08-27Updated TODO.Lasse Collin1-0/+6
2009-08-27Some xz man page improvements.Lasse Collin1-16/+62
2009-08-27Removed doc/bugs.txt.Lasse Collin1-46/+0
2009-08-27Updated README.Lasse Collin1-10/+55
It now includes bug reporting instructions/tips.
2009-08-27Fix a typo in FAQ.Lasse Collin1-1/+1
Thanks to Jim Meyering. (From now on, I try to always remember to put the relevant thanks to commit messages.)
2009-08-27Updates to liblzma API headers.Lasse Collin12-197/+275
Added lzma_nothrow for every function. It adds throw() when the header is used in C++ code. Some lzma_attrs were added or removed. Lots of comments were improved.
2009-08-18Install faq.txt.Lasse Collin1-0/+1
2009-08-18Updated faq.txt.Lasse Collin1-166/+73
Some questions worth answering were removed, because I currently don't have good up to date answers to them.
2009-08-17Some xz man changes.Lasse Collin1-45/+43
2009-08-16Updated THANKS.Lasse Collin1-0/+1
2009-08-16Fix data corruption in LZ/LZMA2 encoder.Lasse Collin1-1/+1
Thanks to Jonathan Stott for the bug report.
2009-08-13Updated INSTALL and PACKAGERS to match the changesLasse Collin2-9/+22
made in --enable-dynamic.
2009-08-13Link lzmainfo against shared liblzma by default.Lasse Collin1-2/+2
2009-08-13Make --enable-dynamic a tristate option.Lasse Collin1-20/+57
Some programs will by default be linked against static liblzma and some against shared liblzma. --enable-dynamic now allows overriding the default to both directions (all dynamic or all static) even when building both shared and static liblzma. This is quite messy compared to how simple thing it is supposed to be. The complexity is mostly due to Windows support.
2009-08-13Fix xz Makefile.am for the man page.Lasse Collin1-0/+2
install-exec-hook -> install-data-hook
2009-08-13Add lzmainfo for backward compatibility with LZMA Utils.Lasse Collin5-1/+328
lzmainfo now links against static liblzma. In contrast to other command line tools in XZ Utils, linking lzmainfo against static liblzma by default is dumb. This will be fixed once I have fixed some related issues in configure.ac.
2009-08-13Sync some error messages from xz to xzdec.Lasse Collin2-5/+5
Make xz error message translation usable outside xz (at least in upcoming lzmainfo).
2009-08-13Add xz man page to manfiles in toplevel Makefile.am.Lasse Collin1-0/+1
2009-08-13Fix first line of xz man page.Lasse Collin1-1/+1
2009-08-10Added a rough version of the xz man page.Lasse Collin2-0/+1221
2009-08-09“xzdiff a.xz b.xz” always failsJonathan Nieder1-1/+1
Attempts to compare two compressed files result in no output and exit status 2. Instead of going to standard output, ‘diff’ output is being captured in the xz_status variable along with the exit status from the decompression commands. Later, when this variable is examined for nonzero status codes, numerals from dates in the ‘diff’ output make it appear as though decompression failed. So let the ‘diff’ output leak to standard output with another file descriptor. (This trick is used in all similar contexts elsewhere in xzdiff and in the analogous context in gzip’s zdiff script.)
2009-08-09xzless: Support compressed standard inputJonathan Nieder1-1/+7
It can be somewhat confusing that less < some_file.txt works fine, whereas xzless < some_file.txt.xz does not. Since version 429, ‘less’ allows a filter specified in the LESSOPEN environment variable to preprocess its input even if it comes from standard input, if $LESSOPEN begins with ‘|-’. So set $LESSOPEN to take advantage of this feature. Check less’s version at runtime so xzless can continue to work with older versions.
2009-08-09GPLv2+ not GPLv2 for Doxyfile.in is probably OK.Lasse Collin1-1/+1
2009-08-02Added a copyright notice to Doxyfile.in since it containsLasse Collin1-0/+3
lots of comments from Doxygen. It seems that the Doxygen authors' intent is to not apply their copyright on generated files, but since it doesn't matter for XZ Utils at all, better safe than sorry.
2009-08-02Updated THANKS.Lasse Collin1-0/+1
2009-08-02Updated TODO.Lasse Collin1-0/+4
2009-07-30Updated THANKS.Lasse Collin1-0/+1
2009-07-30xzdiff: add missing ;; to case statementJonathan Nieder1-3/+3
2009-07-24Added history.txt to doc_DATA.Lasse Collin1-0/+1
2009-07-24Updated .gitignore files.Lasse Collin2-17/+22
2009-07-24Minor improvements to COPYING.Lasse Collin1-3/+8
2009-07-23Fix incorrect usage of getopt_long(), which causedLasse Collin1-1/+0
invalid memory access if XZ_OPT was defined.
2009-07-20Avoid internal error with --format=xz --lzma1.Lasse Collin1-4/+12
2009-07-19Major documentation update.Lasse Collin8-170/+1070
Installation and packaging instructions were added. README and other generic docs were revised. Some of the documentation files are now installed to $docdir.
2009-07-19Added missing author notice to xzless.in.Lasse Collin1-0/+1
2009-07-18Use AC_CONFIG_AUX_DIR to clean up the toplevel directoryLasse Collin3-2/+3
a little. Fixed a related bug in the toplevel Makefile.am. Added the build-aux directory to .gitignore.
2009-07-18Updated the totally outdated TODO file.Lasse Collin1-90/+27
2009-07-18Added public domain notice into a few files.Lasse Collin5-1/+36
2009-07-14Allow extra commas in filter-specific options on xz command line.Lasse Collin1-0/+7
This may slightly ease writing scripts that construct filter-specific option strings dynamically.
2009-07-14Accept --lzma2=preset=6e where "e" is equivalent to --extremeLasse Collin1-21/+59
when no custom chain is in use.
2009-07-12Add dist-hook to create ChangeLog from the commit log,Lasse Collin1-0/+31
and to conver the man pages to PDF and plain text, which may be convenient to those who cannot render man pages.
2009-07-10BCJ filters: Reject invalid start offsets with LZMA_OPTIONS_ERROR.Lasse Collin8-8/+12
This is a quick and slightly dirty fix to make the code conform to the latest file format specification. Without this patch, it's possible to make corrupt files by specifying start offset that is not a multiple of the filter's alignment. Custom start offset is almost never used, so this was only a minor bug. The xz command line tool doesn't validate the start offset, so one will get a bit unclear error message if trying to use an invalid start offset.
2009-07-10Look for full command names instead of substringsLasse Collin1-9/+13
like "un", "cat", and "lz" when determining if xz is run as unxz, xzcat, lzma, unlzma, or lzcat. This is to ensure that if xz is renamed (e.g. via --program-transform-name), it doesn't so easily work in wrong mode.
2009-07-08Updated THANKS.Lasse Collin1-0/+2
2009-07-08Portability improvement to version.sh.Lasse Collin1-1/+2
2009-07-08Remove --force from xzdec.Lasse Collin2-9/+1
It was ignored for compatibility with xz, but now that --decompress --stdout --force copies unrecognized files as is to stdout, simply ignoring --force in xzdec would be wrong. xzdec will not support copying unrecognized data as is to stdout, so it cannot support --force.
2009-07-06Use sed instead of $(SED) so that we don't need toLasse Collin4-21/+21
use AC_PROG_SED. We don't do anything fancy with sed, so this should work OK. libtool 2.2 sets SED but 1.5 doesn't, so $(SED) happened to work when using libtool 2.2.
2009-07-05Major update to the xzgrep and other scripts based onLasse Collin14-369/+766
the latest versions found from gzip CVS repository. configure will try to find a POSIX shell to be used by the scripts. This should ease portability on systems which have pre-POSIX /bin/sh. xzgrep and xzdiff support .xz, .lzma, .gz, and .bz2 files. xzmore and xzless support only .xz and .lzma files. The name of the xz executable used in these scripts is now correct even if --program-transform-name has been used.
2009-07-05Use @PACKAGE_HOMEPAGE@ in liblzma.pc.in.Lasse Collin1-1/+1
2009-07-04Make "xz --decompress --stdout --force" copy unrecognizedLasse Collin1-35/+178
files as is to standard output. This feature is needed to be more compatible with gzip's behavior. This was more complicated to implement than it sounds, because the way liblzma is able to return errors with files of only a few bytes in size. xz now has its own file type detection code and no longer uses lzma_auto_decoder().
2009-07-02Define PACKAGE_HOMEPAGE in configure.ac and use it inLasse Collin3-4/+9
xz and xzdec. Use also PACKAGE_NAME instead of hardcoding "XZ Utils".
2009-07-01Avoid visibility related compiler warnings on Windows.Lasse Collin1-11/+9
2009-06-30Use static liblzma by default also for tests.Lasse Collin1-1/+4
2009-06-30Build system fixesLasse Collin21-372/+417
Don't use libtool convenience libraries to avoid recently discovered long-standing subtle but somewhat severe bugs in libtool (at least 1.5.22 and 2.2.6 are affected). It was found when porting XZ Utils to Windows <http://lists.gnu.org/archive/html/libtool/2009-06/msg00070.html> but the problem is significant also e.g. on GNU/Linux. Unless --disable-shared is passed to configure, static library built from a set of convenience libraries will contain PIC objects. That is, while libtool builds non-PIC objects too, only PIC objects will be used from the convenience libraries. On 32-bit x86 (tested on mobile XP2400+), using PIC instead of non-PIC makes the decompressor 10 % slower with the default CFLAGS. So while xz was linked against static liblzma by default, it got the slower PIC objects unless --disable-shared was used. I tend develop and benchmark with --disable-shared due to faster build time, so I hadn't noticed the problem in benchmarks earlier. This commit also adds support for building Windows resources into liblzma and executables.
2009-06-29Added a comment about "autoconf -fi" to autogen.sh.Lasse Collin1-0/+3
2009-06-28Add -no-undefined to get shared liblzma on Windows.Lasse Collin1-1/+1
2009-06-27Make physmem() work on Cygwin 1.5 and older.Lasse Collin1-37/+40
2009-06-27Moved the Windows resource files outside the windows directoryLasse Collin6-20/+23
to prepare for building them with Autotools.
2009-06-27Added missing $(EXEEXT).Lasse Collin1-1/+1
2009-06-27Create correct symlinks even whenLasse Collin3-45/+65
--program-{prefix,suffix,transform} is passed to configure.
2009-06-27Silence a compiler warning on DOS-like systems.Lasse Collin1-1/+4
2009-06-27Updated the filenames in POTFILES.in too.Lasse Collin1-2/+2
2009-06-27Hopefully improved portability of the assembler code inLasse Collin2-2/+14
Autotools based builds on Windows.
2009-06-26Updated THANKS (most of today's commits are based onLasse Collin1-0/+1
Charles Wilson's patches).
2009-06-26Updated comments to match renamed files.Lasse Collin4-4/+4
2009-06-26Rename process.[hc] to coder.[hc] and io.[hc] to file_io.[hc]Lasse Collin8-10/+10
to avoid problems on systems with system headers with those names.
2009-06-26Rename process_file() to coder_run().Lasse Collin3-9/+8
2009-06-26Ugly hack to make it possible to use the thousand separatorLasse Collin6-46/+84
format character with snprintf() on POSIX systems but not on non-POSIX systems and still keep xgettext working.
2009-06-26Added missing source files to windows/Makefile.Lasse Collin1-0/+2
2009-06-26Basic support for building with Cygwin and MinGW usingLasse Collin6-18/+28
the Autotools based build system. It's not good yet, more fixes will follow.
2009-06-26Fix @variables@ to $(variables) in Makefile.am files.Lasse Collin12-55/+59
Fix the ordering of libgnu.a and LTLIBINTL on the linker command line and added missing LTLIBINTL to tests/Makefile.am.
2009-06-26Allow to explicitly specify autotool versions in autogen.sh.Lasse Collin1-6/+6
2009-06-26Add version.sh to EXTRA_DIST.Lasse Collin1-1/+2
2009-06-24Support HW_PHYSMEM64Lasse Collin1-11/+19
2009-06-24Cast a char argument to isspace() to unsigned char.Lasse Collin1-2/+9
2009-06-05A few more spelling fixes. Released the .xz spec 1.0.3.Lasse Collin1-5/+7
2009-06-04Added xzdec man page.Lasse Collin2-0/+184
2009-06-04Harmonized xzdec --memory with xz --memory and madeLasse Collin1-21/+53
minor cleanups.
2009-06-04Fix purporse -> purpose. Thanks to Andrew Dudman.Lasse Collin4-5/+8
Released .xz spec 1.0.2 due to this fix too.
2009-06-01The .xz file format version 1.0.1Lasse Collin1-7/+22
2009-05-26Make the raw value of the Check field available to applicationsLasse Collin4-31/+42
via lzma_block structure. This changes ABI but not doesn't break API.
2009-05-23Remove undocumented alternative option names --bcj, --ppc,Lasse Collin1-3/+0
and --itanium.
2009-05-23Add support for specifying the BCJ filter start offsetLasse Collin4-21/+76
in the xz command line tool.
2009-05-23Updated THANKS.Lasse Collin1-0/+2
2009-05-22Added support for --quiet and --no-warn to xzdec.Lasse Collin1-27/+49
Cleaned up the --help message a little.
2009-05-22Use the 40 % of RAM memory usage limit in xzdec too.Lasse Collin1-5/+5
Update the memory usage info text in --help to match the text in xz --long-help.
2009-05-22Add --no-warn.Lasse Collin4-1/+34
2009-05-22Fix a comment.Lasse Collin1-1/+1
2009-05-22Remove the --info option, which was an alias for --list.Lasse Collin1-1/+0
2009-05-22If xz is run as lzma, unlzma, or lzcat, simply implyLasse Collin1-11/+6
--format=lzma. This means that xz emulating lzma doesn't decompress .xz files, while before this commit it did. The new way is slightly simpler in code and especially in upcoming documentation.
2009-05-22Make the default memory usage limit 40 % of RAM for bothLasse Collin5-88/+82
compressing and decompressing. This should be OK now that xz automatically scales down the compression settings if they would exceed the memory usage limit (earlier, the limit for compression was increased to 90 % because low limit broke scripts that used "xz -9" on systems with low RAM). Support spcifying the memory usage limit as a percentage of RAM (e.g. --memory=50%). Support --threads=0 to reset the thread limit to the default value (number of available CPU cores). Use UINT32_MAX instead of SIZE_MAX as the maximum in args.c. hardware.c was already expecting uint32_t value. Cleaned up the output of --help and --long-help.
2009-05-21Support special value "max" where xz and xzdec accept an integer.Lasse Collin2-1/+9
Don't round the memory usage limit in xzdec --help to avoid an integer overflow and to not give wrong impression that the limit is high enough when it may not actually be.
2009-05-21Install lzdiff, lzgrep, and lzmore as symlinksABCD1-2/+14
This adds lzdiff, lzgrep, and lzmore to the list of symlinks to install. It also installs symlinks for the manual pages and removes the new symlinks on uninstall.
2009-05-02Use a GCC-specific #pragma instead of GCC-specificLasse Collin3-18/+5
-Wno-uninitialized to silence a bogus warning.
2009-05-02Removed --disable-encoder and --disable-decoder. Use the valuesLasse Collin1-40/+8
given to --enable-encoders and --enable-decoders to determine if any encoder or decoder support is wanted.
2009-05-01Remove docs that are too outdated to be updatedLasse Collin5-956/+0
(rewrite will be better).
2009-05-01Added documentation about the legacy .lzma file format.Lasse Collin1-0/+166
2009-05-01Renamed the file format specification to xz-file-format.txtLasse Collin1-0/+0
which is the filename used on the WWW.
2009-04-28Fixed a crash in liblzma.Lasse Collin11-13/+13
liblzma tries to avoid useless free()/malloc() pairs in initialization when multiple files are handled using the same lzma_stream. This didn't work with filter chains due to comparison of wrong pointers in lzma_next_coder_init(), making liblzma think that no memory reallocation is needed even when it actually is. Easy way to trigger this bug is to decompress two files with a single xz command. The first file should have e.g. x86+LZMA2 as the filter chain, and the second file just LZMA2.
2009-04-15Fix uint32_t -> size_t in ARM and ARM-Thumb filters.Lasse Collin2-2/+2
On 64-bit system it would have gone into infinite loop if a single input buffer was over 4 GiB (unlikely).
2009-04-14Minor fixes to test files' README.Lasse Collin1-8/+9
2009-04-13Updated history.txt.Lasse Collin1-57/+66
2009-04-13Quick & dirty update to support xz in diff/grep/more scripts.Lasse Collin7-75/+119
2009-04-13Put the interesting parts of XZ Utils into the public domain.Lasse Collin206-2023/+868
Some minor documentation cleanups were made at the same time.
2009-04-10Fix off-by-one in LZ decoder.Lasse Collin1-1/+1
Fortunately, this bug had no security risk other than accepting some corrupt files as valid.
2009-03-31Fix minor typos in READMEPavel Roskin1-3/+3
2009-03-31Add a note and work-around instructions to README aboutLasse Collin1-0/+11
problems detecting a C99 compiler when some standard headers are missing.
2009-03-18Updated THANKS.Lasse Collin1-0/+1
2009-03-18Fix wrong macro names in lc_cpucores.m4 and cpucores.h.Lasse Collin2-4/+4
Thanks to Bert Wesarg.
2009-03-01Test for Linux-specific sysinfo() only on Linux systems.Lasse Collin1-9/+19
Some other systems have sysinfo() with different semantics.
2009-03-01Added AC_CONFIG_MACRO_DIR to configure.ac.Lasse Collin1-0/+1