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