xref: /OK3568_Linux_fs/buildroot/package/libarchive/libarchive.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
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