forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Michał Górny <[email protected]>
- Loading branch information
Showing
2 changed files
with
118 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
DIST libarchive-3.5.2.tar.gz 7054934 BLAKE2B 1fc6ee0166573658dc5e0f170113c07ecdaa76b287cbf68bdee63ccd198dad615b3f2803a3fc1aed303cd1f7f32033e6d8e782ef6a8a991562cdc2a375894c9e SHA512 2003ec9b24086373451bd7317bdab86d81627f087c14a6f7df1a92e131a216749f9aa352504c3d04dc82b62078b59aeea5aad5543b7e6c1c21fcafa2955d3762 | ||
DIST libarchive-3.5.3.tar.gz 7038767 BLAKE2B a9f8b44c42efadb29cba2597c201bf9064d69632db92dad07df3f1bc9667257d8578c2ae7fae65ffc53e075466e3d326e4fe77d18d3f06656a4a255324a81fba SHA512 889879e869f7391e3b85b5e3c2bbad3c1a5e50ec7b62c0be8f2817e2dfa8410e6eb409a3c4dce2675b9e7134bae3f129475e331bc3d15d637b91412c7eb026a2 | ||
DIST libarchive-3.6.0.tar.gz 8570393 BLAKE2B 57a8e1681485a489dc9d3823cc8c9b0d68e7d84510a3eff0b6adc268825bb9aa6179d8a810b249c3f72e3674e1df6e5ba2ed0043196458bedc3c1d880c5d4a0b SHA512 700579c5dd15b61333cc4dbf01ebfbd26d6e8c20d5cbe6525683634418fec5c87a5a1e28a81cc59ad7c94218682e406aa3b55d81036bd9fa31d83d989c6d764c |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,117 @@ | ||
# Copyright 1999-2022 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=8 | ||
inherit multilib-minimal toolchain-funcs | ||
|
||
DESCRIPTION="Multi-format archive and compression library" | ||
HOMEPAGE="https://www.libarchive.org/" | ||
SRC_URI="https://www.libarchive.org/downloads/${P}.tar.gz" | ||
|
||
LICENSE="BSD BSD-2 BSD-4 public-domain" | ||
SLOT="0/13" | ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" | ||
IUSE="acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle static-libs xattr +zlib zstd" | ||
|
||
RDEPEND=" | ||
acl? ( virtual/acl[${MULTILIB_USEDEP}] ) | ||
blake2? ( app-crypt/libb2[${MULTILIB_USEDEP}] ) | ||
bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] ) | ||
expat? ( dev-libs/expat[${MULTILIB_USEDEP}] ) | ||
!expat? ( dev-libs/libxml2[${MULTILIB_USEDEP}] ) | ||
iconv? ( virtual/libiconv[${MULTILIB_USEDEP}] ) | ||
kernel_linux? ( | ||
xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] ) | ||
) | ||
dev-libs/openssl:0=[${MULTILIB_USEDEP}] | ||
lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] ) | ||
lzma? ( >=app-arch/xz-utils-5.2.5-r1[${MULTILIB_USEDEP}] ) | ||
lzo? ( >=dev-libs/lzo-2[${MULTILIB_USEDEP}] ) | ||
nettle? ( dev-libs/nettle:0=[${MULTILIB_USEDEP}] ) | ||
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] ) | ||
zstd? ( app-arch/zstd[${MULTILIB_USEDEP}] )" | ||
DEPEND="${RDEPEND} | ||
kernel_linux? ( | ||
virtual/os-headers | ||
e2fsprogs? ( sys-fs/e2fsprogs ) | ||
)" | ||
|
||
multilib_src_configure() { | ||
export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923 | ||
|
||
local myconf=( | ||
$(use_enable acl) | ||
$(use_enable static-libs static) | ||
$(use_enable xattr) | ||
$(use_with blake2 libb2) | ||
$(use_with bzip2 bz2lib) | ||
$(use_with expat) | ||
$(use_with !expat xml2) | ||
$(use_with iconv) | ||
$(use_with lz4) | ||
$(use_with lzma) | ||
$(use_with lzo lzo2) | ||
$(use_with nettle) | ||
$(use_with zlib) | ||
$(use_with zstd) | ||
|
||
# Windows-specific | ||
--without-cng | ||
) | ||
if multilib_is_native_abi ; then | ||
myconf+=( | ||
--enable-bsdcat=$(tc-is-static-only && echo static || echo shared) | ||
--enable-bsdcpio=$(tc-is-static-only && echo static || echo shared) | ||
--enable-bsdtar=$(tc-is-static-only && echo static || echo shared) | ||
) | ||
else | ||
myconf+=( | ||
--disable-bsdcat | ||
--disable-bsdcpio | ||
--disable-bsdtar | ||
) | ||
fi | ||
|
||
ECONF_SOURCE="${S}" econf "${myconf[@]}" | ||
} | ||
|
||
multilib_src_compile() { | ||
if multilib_is_native_abi ; then | ||
emake | ||
else | ||
emake libarchive.la | ||
fi | ||
} | ||
|
||
src_test() { | ||
mkdir -p "${T}"/bin || die | ||
# tests fail when lbzip2[symlink] is used in place of ref bunzip2 | ||
ln -s "${BROOT}/bin/bunzip2" "${T}"/bin || die | ||
local -x PATH=${T}/bin:${PATH} | ||
multilib-minimal_src_test | ||
} | ||
|
||
multilib_src_test() { | ||
# sandbox is breaking long symlink behavior | ||
local -x SANDBOX_ON=0 | ||
local -x LD_PRELOAD= | ||
# some locales trigger different output that breaks tests | ||
local -x LC_ALL=C | ||
emake check | ||
} | ||
|
||
multilib_src_install() { | ||
if multilib_is_native_abi ; then | ||
emake DESTDIR="${D}" install | ||
else | ||
local install_targets=( | ||
install-includeHEADERS | ||
install-libLTLIBRARIES | ||
install-pkgconfigDATA | ||
) | ||
emake DESTDIR="${D}" "${install_targets[@]}" | ||
fi | ||
|
||
# Libs.private: should be used from libarchive.pc instead | ||
find "${ED}" -type f -name "*.la" -delete || die | ||
} |