Docs: Update INSTALL and also add new prohibited options to PACKAGERS.
This commit is contained in:
parent
c8ef089c14
commit
df8ad4af65
49
INSTALL
49
INSTALL
|
@ -316,6 +316,18 @@ XZ Utils Installation
|
||||||
| xz -v -0 -Csha256 > foo.xz
|
| xz -v -0 -Csha256 > foo.xz
|
||||||
time xz --test foo.xz
|
time xz --test foo.xz
|
||||||
|
|
||||||
|
--disable-microlzma
|
||||||
|
Don't build MicroLZMA encoder and decoder. This omits
|
||||||
|
lzma_microlzma_encoder() and lzma_microlzma_decoder()
|
||||||
|
API functions from liblzma. These functions are needed
|
||||||
|
by specific applications only. They were written for
|
||||||
|
erofs-utils but they may be used by others too.
|
||||||
|
|
||||||
|
--disable-lzip-decoder
|
||||||
|
Disable decompression support for .lz (lzip) files.
|
||||||
|
This omits the API function lzma_lzip_decoder() from
|
||||||
|
liblzma and .lz support from the xz tool.
|
||||||
|
|
||||||
--disable-xz
|
--disable-xz
|
||||||
--disable-xzdec
|
--disable-xzdec
|
||||||
--disable-lzmadec
|
--disable-lzmadec
|
||||||
|
@ -359,15 +371,32 @@ XZ Utils Installation
|
||||||
code.
|
code.
|
||||||
|
|
||||||
--enable-unaligned-access
|
--enable-unaligned-access
|
||||||
Allow liblzma to use unaligned memory access for 16-bit
|
Allow liblzma to use unaligned memory access for 16-bit,
|
||||||
and 32-bit loads and stores. This should be enabled only
|
32-bit, and 64-bit loads and stores. This should be
|
||||||
when the hardware supports this, i.e. when unaligned
|
enabled only when the hardware supports this, that is,
|
||||||
access is fast. Some operating system kernels emulate
|
when unaligned access is fast. Some operating system
|
||||||
unaligned access, which is extremely slow. This option
|
kernels emulate unaligned access, which is extremely
|
||||||
shouldn't be used on systems that rely on such emulation.
|
slow. This option shouldn't be used on systems that
|
||||||
|
rely on such emulation.
|
||||||
|
|
||||||
Unaligned access is enabled by default on x86, x86-64,
|
Unaligned access is enabled by default on x86, x86-64,
|
||||||
and big endian PowerPC.
|
big endian PowerPC, some ARM, and some ARM64 systems.
|
||||||
|
|
||||||
|
--enable-unsafe-type-punning
|
||||||
|
This enables use of code like
|
||||||
|
|
||||||
|
uint8_t *buf8 = ...;
|
||||||
|
*(uint32_t *)buf8 = ...;
|
||||||
|
|
||||||
|
which violates strict aliasing rules and may result
|
||||||
|
in broken code. There should be no need to use this
|
||||||
|
option with recent GCC or Clang versions on any
|
||||||
|
arch as just as fast code can be generated in a safe
|
||||||
|
way too (using __builtin_assume_aligned + memcpy).
|
||||||
|
|
||||||
|
However, this option might improve performance in some
|
||||||
|
other cases, especially with old compilers (for example,
|
||||||
|
GCC 3 and early 4.x on x86, GCC < 6 on ARMv6 and ARMv7).
|
||||||
|
|
||||||
--enable-small
|
--enable-small
|
||||||
Reduce the size of liblzma by selecting smaller but
|
Reduce the size of liblzma by selecting smaller but
|
||||||
|
@ -456,6 +485,10 @@ XZ Utils Installation
|
||||||
sandboxing. If no Capsicum support
|
sandboxing. If no Capsicum support
|
||||||
is found, configure will give an error.
|
is found, configure will give an error.
|
||||||
|
|
||||||
|
pledge Use pledge(2) (OpenBSD >= 5.9) for
|
||||||
|
sandboxing. If pledge(2) isn't found,
|
||||||
|
configure will give an error.
|
||||||
|
|
||||||
--enable-symbol-versions
|
--enable-symbol-versions
|
||||||
Use symbol versioning for liblzma. This is enabled by
|
Use symbol versioning for liblzma. This is enabled by
|
||||||
default on GNU/Linux, other GNU-based systems, and
|
default on GNU/Linux, other GNU-based systems, and
|
||||||
|
@ -518,7 +551,7 @@ XZ Utils Installation
|
||||||
liblzma, pass --enable-small to configure.
|
liblzma, pass --enable-small to configure.
|
||||||
|
|
||||||
- Tell the compiler to optimize for size instead of speed.
|
- Tell the compiler to optimize for size instead of speed.
|
||||||
E.g. with GCC, put -Os into CFLAGS.
|
For example, with GCC, put -Os into CFLAGS.
|
||||||
|
|
||||||
- xzdec and lzmadec will never use multithreading capabilities of
|
- xzdec and lzmadec will never use multithreading capabilities of
|
||||||
liblzma. You can avoid dependency on libpthread by passing
|
liblzma. You can avoid dependency on libpthread by passing
|
||||||
|
|
|
@ -138,6 +138,8 @@ Information to packagers of XZ Utils
|
||||||
--enable-checks
|
--enable-checks
|
||||||
--enable-small (*)
|
--enable-small (*)
|
||||||
--disable-threads (*)
|
--disable-threads (*)
|
||||||
|
--disable-microlzma (*)
|
||||||
|
--disable-lzip-decoder (*)
|
||||||
|
|
||||||
(*) These are OK when building xzdec and lzmadec as described
|
(*) These are OK when building xzdec and lzmadec as described
|
||||||
in INSTALL.
|
in INSTALL.
|
||||||
|
|
Loading…
Reference in New Issue