@@ -8,55 +8,42 @@ XZ_VERSION = 5.6.0
XZ_SOURCE = xz-$(XZ_VERSION).tar.bz2
XZ_SITE = https://github.com/tukaani-project/xz/releases/download/v$(XZ_VERSION)
XZ_INSTALL_STAGING = YES
-XZ_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99'
XZ_LICENSE = Public Domain, BSD-0-Clause, GPL-2.0+, GPL-3.0+, LGPL-2.1+
XZ_LICENSE_FILES = COPYING COPYING.0BSD COPYING.GPLv2 COPYING.GPLv3 COPYING.LGPLv2.1
XZ_CPE_ID_VENDOR = tukaani
XZ_CONF_OPTS = \
- --enable-encoders=lzma1,lzma2,delta,x86,powerpc,ia64,arm,armthumb,arm64,sparc,riscv \
- --enable-decoders=lzma1,lzma2,delta,x86,powerpc,ia64,arm,armthumb,arm64,sparc,riscv \
- --enable-match-finders=hc3,hc4,bt2,bt3,bt4 \
- --enable-checks=crc32,crc64,sha256 \
- --disable-external-sha256 \
- --enable-microlzma \
- --enable-lzip-decoder \
- --enable-assembler \
- --enable-clmul-crc \
- --enable-arm64-crc32 \
- --disable-small \
- --enable-assume-ram=128 \
- --enable-xz \
- --enable-xzdec \
- --enable-lzmadec \
- --enable-lzmainfo \
- --enable-lzma-links \
- --enable-scripts \
- --enable-sandbox=auto \
- --enable-symbol-versions \
- --enable-rpath \
- --enable-largfile \
- --enable-ifunc \
- --enable-unaligned-access=auto \
- --disable-unsafe-type-punning \
- --disable-werror \
- --enable-year2038
+ -DENCODERS="lzma1;lzma2;delta;x86;powerpc;ia64;arm;armthumb;arm64;sparc;riscv" \
+ -DDECODERS="lzma1;lzma2;delta;x86;powerpc;ia64;arm;armthumb;arm64;sparc;riscv" \
+ -DMATCH_FINDERS="hc3;hc4;bt2;bt3;bt4" \
+ -DADDITIONAL_CHECK_TYPES="crc64;sha256" \
+ -DMICROLZMA_ENCODER=ON \
+ -DMICROLZMA_DECODER=ON \
+ -DLZIP_DECODER=ON \
+ -DALLOW_CLMUL_CRC=ON \
+ -DALLOW_ARM64_CRC32=ON \
+ -DENABLE_SMALL=OFF \
+ -DENABLE_SANDBOX=ON \
+ -DUSE_ATTR_IFUNC=ON \
+ -DCREATE_XZ_SYMLINKS=ON \
+ -DCREATE_LZMA_SYMLINKS=ON \
+ -DBUILD_SHARED_LIBS=OFF
HOST_XZ_CONF_OPTS = \
$(XZ_CONF_OPTS) \
- --enable-nls \
- --enable-threads
+ -DENABLE_NLS=ON \
+ -DENABLE_THREADS=ON
ifeq ($(BR2_SYSTEM_ENABLE_NLS),y)
-XZ_CONF_OPTS += --enable-nls
+XZ_CONF_OPTS += -DENABLE_NLS=ON
else
-Z_CONF_OPTS += --disable-nls
+XZ_CONF_OPTS += -DENABLE_NLS=OFF
endif
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
-XZ_CONF_OPTS += --enable-threads
+XZ_CONF_OPTS += -DENABLE_THREADS=ON
else
-XZ_CONF_OPTS += --disable-threads
+XZ_CONF_OPTS += -DENABLE_THREADS=OFF
endif
# we are built before ccache
@@ -64,5 +51,5 @@ HOST_XZ_CONF_ENV = \
CC="$(HOSTCC_NOCCACHE)" \
CXX="$(HOSTCXX_NOCCACHE)"
-$(eval $(autotools-package))
-$(eval $(host-autotools-package))
+$(eval $(cmake-package))
+$(eval $(host-cmake-package))
Convert to cmake build with the following autoconf options without direct equivalent cmake option: - '--disable-external-sha256' - '--enable-assembler' - '--enable-assume-ram=128': hard coded in the CMakeLists.txt file 1685 target_compile_definitions(xz PRIVATE ASSUME_RAM=128) - '--enable-scripts' (see [1]: 'CMake: xzdiff, xzgrep, xzless, xzmore, and their symlinks are now installed') - '--enable-symbol-versions': hard coded in the CMakeLists.txt file 1247 target_compile_definitions(liblzma PRIVATE HAVE_SYMBOL_VERSIONS_LINUX=1) - '--enable-rpath' - '--enable-largefile': see CMakeLists.txt 233 # Check for large file support. It's required on some 32-bit platforms and 234 # even on 64-bit MinGW-w64 to get 64-bit off_t. This can be forced off on 235 # the CMake command line if needed: -DLARGE_FILE_SUPPORT=OFF 236 tuklib_large_file_support(ALL) - '--enable-unaligned-access=auto': see CMakeLists.txt and cmake/tuklib_integer.cmake 238 # This is needed by liblzma and xz. 239 tuklib_integer(ALL) - '--disable-unsafe-type-punning' see CMakeLists.txt and cmake/tuklib_integer.cmake 238 # This is needed by liblzma and xz. 239 tuklib_integer(ALL) - '--disable-werror' - '--enable-year2038' [1] https://github.com/tukaani-project/xz/releases/tag/v5.6.0 Signed-off-by: Peter Seiderer <ps.report@gmx.net> --- package/xz/xz.mk | 59 +++++++++++++++++++----------------------------- 1 file changed, 23 insertions(+), 36 deletions(-)