1*4882a593Smuzhiyun################################################################################ 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# libarchive 4*4882a593Smuzhiyun# 5*4882a593Smuzhiyun################################################################################ 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunLIBARCHIVE_VERSION = 3.5.2 8*4882a593SmuzhiyunLIBARCHIVE_SOURCE = libarchive-$(LIBARCHIVE_VERSION).tar.xz 9*4882a593SmuzhiyunLIBARCHIVE_SITE = https://www.libarchive.de/downloads 10*4882a593SmuzhiyunLIBARCHIVE_INSTALL_STAGING = YES 11*4882a593SmuzhiyunLIBARCHIVE_LICENSE = BSD-2-Clause, BSD-3-Clause, CC0-1.0, OpenSSL, Apache-2.0 12*4882a593SmuzhiyunLIBARCHIVE_LICENSE_FILES = COPYING 13*4882a593SmuzhiyunLIBARCHIVE_CPE_ID_VENDOR = libarchive 14*4882a593Smuzhiyun 15*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBARCHIVE_BSDTAR),y) 16*4882a593Smuzhiyunifeq ($(BR2_STATIC_LIBS),y) 17*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --enable-bsdtar=static 18*4882a593Smuzhiyunelse 19*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --enable-bsdtar=shared 20*4882a593Smuzhiyunendif 21*4882a593Smuzhiyunelse 22*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --disable-bsdtar 23*4882a593Smuzhiyunendif 24*4882a593Smuzhiyun 25*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBARCHIVE_BSDCPIO),y) 26*4882a593Smuzhiyunifeq ($(BR2_STATIC_LIBS),y) 27*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --enable-bsdcpio=static 28*4882a593Smuzhiyunelse 29*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --enable-bsdcpio=shared 30*4882a593Smuzhiyunendif 31*4882a593Smuzhiyunelse 32*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --disable-bsdcpio 33*4882a593Smuzhiyunendif 34*4882a593Smuzhiyun 35*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBARCHIVE_BSDCAT),y) 36*4882a593Smuzhiyunifeq ($(BR2_STATIC_LIBS),y) 37*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --enable-bsdcat=static 38*4882a593Smuzhiyunelse 39*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --enable-bsdcat=shared 40*4882a593Smuzhiyunendif 41*4882a593Smuzhiyunelse 42*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --disable-bsdcat 43*4882a593Smuzhiyunendif 44*4882a593Smuzhiyun 45*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_ACL),y) 46*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += acl 47*4882a593Smuzhiyunelse 48*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --disable-acl 49*4882a593Smuzhiyunendif 50*4882a593Smuzhiyun 51*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_ATTR),y) 52*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += attr 53*4882a593Smuzhiyunelse 54*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --disable-xattr 55*4882a593Smuzhiyunendif 56*4882a593Smuzhiyun 57*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_BZIP2),y) 58*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --with-bz2lib 59*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += bzip2 60*4882a593Smuzhiyunelse 61*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-bz2lib 62*4882a593Smuzhiyunendif 63*4882a593Smuzhiyun 64*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_EXPAT),y) 65*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += expat 66*4882a593Smuzhiyunelse 67*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-expat 68*4882a593Smuzhiyunendif 69*4882a593Smuzhiyun 70*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBICONV),y) 71*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += libiconv 72*4882a593Smuzhiyunelse 73*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-libiconv-prefix 74*4882a593Smuzhiyunendif 75*4882a593Smuzhiyun 76*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBXML2),y) 77*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += libxml2 78*4882a593SmuzhiyunLIBARCHIVE_CONF_ENV += XML2_CONFIG=$(STAGING_DIR)/usr/bin/xml2-config 79*4882a593Smuzhiyunelse 80*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-xml2 81*4882a593Smuzhiyunendif 82*4882a593Smuzhiyun 83*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LZ4),y) 84*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --with-lz4 85*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += lz4 86*4882a593Smuzhiyunelse 87*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-lz4 88*4882a593Smuzhiyunendif 89*4882a593Smuzhiyun 90*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LZO),y) 91*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += lzo 92*4882a593Smuzhiyunelse 93*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-lzo2 94*4882a593Smuzhiyunendif 95*4882a593Smuzhiyun 96*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_MBEDTLS),y) 97*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += mbedtls 98*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --with-mbedtls 99*4882a593Smuzhiyunelse 100*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-mbedtls 101*4882a593Smuzhiyunendif 102*4882a593Smuzhiyun 103*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_NETTLE),y) 104*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += nettle 105*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --with-nettle 106*4882a593Smuzhiyunelse 107*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-nettle 108*4882a593Smuzhiyunendif 109*4882a593Smuzhiyun 110*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_OPENSSL),y) 111*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += openssl 112*4882a593Smuzhiyunelse 113*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-openssl 114*4882a593Smuzhiyunendif 115*4882a593Smuzhiyun 116*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_ZLIB),y) 117*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += zlib 118*4882a593Smuzhiyunelse 119*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-zlib 120*4882a593Smuzhiyunendif 121*4882a593Smuzhiyun 122*4882a593Smuzhiyun# libarchive requires LZMA with thread support in the toolchain 123*4882a593Smuzhiyunifeq ($(BR2_TOOLCHAIN_HAS_THREADS)$(BR2_PACKAGE_XZ),yy) 124*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += xz 125*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --with-lzma 126*4882a593Smuzhiyunelse 127*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-lzma 128*4882a593Smuzhiyunendif 129*4882a593Smuzhiyun 130*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_ZSTD),y) 131*4882a593SmuzhiyunLIBARCHIVE_DEPENDENCIES += zstd 132*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --with-zstd 133*4882a593Smuzhiyunelse 134*4882a593SmuzhiyunLIBARCHIVE_CONF_OPTS += --without-zstd 135*4882a593Smuzhiyunendif 136*4882a593Smuzhiyun 137*4882a593Smuzhiyun# The only user of host-libarchive needs zlib support 138*4882a593SmuzhiyunHOST_LIBARCHIVE_DEPENDENCIES = host-zlib 139*4882a593SmuzhiyunHOST_LIBARCHIVE_CONF_OPTS = \ 140*4882a593Smuzhiyun --disable-bsdtar \ 141*4882a593Smuzhiyun --disable-bsdcpio \ 142*4882a593Smuzhiyun --disable-bsdcat \ 143*4882a593Smuzhiyun --disable-acl \ 144*4882a593Smuzhiyun --disable-xattr \ 145*4882a593Smuzhiyun --without-bz2lib \ 146*4882a593Smuzhiyun --without-expat \ 147*4882a593Smuzhiyun --without-libiconv-prefix \ 148*4882a593Smuzhiyun --without-xml2 \ 149*4882a593Smuzhiyun --without-lz4 \ 150*4882a593Smuzhiyun --without-lzo2 \ 151*4882a593Smuzhiyun --without-mbedtls \ 152*4882a593Smuzhiyun --without-nettle \ 153*4882a593Smuzhiyun --without-openssl \ 154*4882a593Smuzhiyun --without-lzma \ 155*4882a593Smuzhiyun --without-zstd 156*4882a593Smuzhiyun 157*4882a593Smuzhiyun$(eval $(autotools-package)) 158*4882a593Smuzhiyun$(eval $(host-autotools-package)) 159