This is subdirectory src/liblzma of xz-utils-4.999.9beta, except for files Makefile.in, Makefile.win and R_changes common/{bswap,integer,mythread}.h are from xz-utils-4.999.9beta. check/{sha256.c,crc_macros.h} is modified to look on the usual include path. common/local.h is a set of definitions of features to be built, and common/sysdef.h is a modified copy of xz-utils-4.999.9beta/common/sysdefs.h which includes it. All the files from xz-utils are in the public domain. The subblock encoder is not used: it is not configured in by default and seems not to work on x86_64 platforms. Performance optimizations are only used on (32-bit) Windows: it is assumed that on other OSes an optimized system liblzma is or could be made available. common/vli_encoder.c, common/vli_decoder.c, api/lzma/api.h: Remove incorrect use of restrict keyword. See commit 49cfc8d392cf535f8dd10233225b1fc726fec9ef in the XZ-Utils git repository. This is a temporary fix until the next version of XZ-Utils is released and integrated. Without this small change Intels C compiler and gcc 4.4.x (and possibly others) may generate broken code. common/sysdefs.h: Change _Bool to _Bool8 to avoid clashes on one Solaris 10 system. (Solaris 10 has stdbool.h, but it was not being found.)