app-arch/libarchive: Bump to 3.4.2
authorMichał Górny <mgorny@gentoo.org>
Wed, 12 Feb 2020 05:35:03 +0000 (06:35 +0100)
committerMichał Górny <mgorny@gentoo.org>
Wed, 12 Feb 2020 05:55:38 +0000 (06:55 +0100)
Signed-off-by: Michał Górny <mgorny@gentoo.org>
app-arch/libarchive/Manifest
app-arch/libarchive/libarchive-3.4.2.ebuild [new file with mode: 0644]

index c39e2cf187c7d084bfe636ff0a5c7133e5d6121a..46f807ed6b39ccd7eca2bab86b51d04e116060ba 100644 (file)
@@ -1,3 +1,4 @@
 DIST libarchive-3.3.3.tar.gz 6535598 BLAKE2B 627949d24572b8345800e72a24d1e8d95cd0f19bb7fab70e2f36be011fee6f345eecfa9563640068b10888520aafdf30b1e3426b7e2743589cabd3ab5c270a22 SHA512 9d12b47d6976efa9f98e62c25d8b85fd745d4e9ca7b7e6d36bfe095dfe5c4db017d4e785d110f3758f5938dad6f1a1b009267fd7e82cb7212e93e1aea237bab7
 DIST libarchive-3.4.0.tar.gz 6908093 BLAKE2B 6da5798ceabb542d8b877b3d672f6e6431ed7340ec0160a5d8cef28591b516b55d426002379eddc632a478bfd2f034a358f8552f55c9f066fd7f5c31c218b462 SHA512 2f9e2a551a6bcab56fb1a030b5d656df7299a3d151465aa02f0420d344d2fada49dee4755b3abff9095f62519e14dc9af8afa1695ecc6d5fdb4f0b28e6ede852
 DIST libarchive-3.4.1.tar.gz 6931920 BLAKE2B e1175cac67dd265be711005ff19dc16cf807cfd2f3f77f4530165adbc11bb33b58bdb28815b7d787414b8f4c3ec180a5607283618e5c319447a414141c89c19d SHA512 fa7e9e5c8c00cd7e98f0ff373c300771f0a87317bca031c3030bac29b96b02ab66cf34905147e4135824bf9cdfdd1dedf3032e93d6d706c9a11e968da1ed8dad
+DIST libarchive-3.4.2.tar.gz 6979481 BLAKE2B eea90e4751ae487cd1a9b0eecd16598d1b81ffff665ae97a160e3858c8ffe60b82003f081af644f3f32260d0e1d3f3077240125e8279bf8111a79d93c68ac25d SHA512 a8922e54f2e985889d205ee8a0594c1d30dad950438b602a5be6bb1b274a735ad20a48ed484efd458013a0810d26ee4ae76e3a6c820823243d24ea0593ed7021
diff --git a/app-arch/libarchive/libarchive-3.4.2.ebuild b/app-arch/libarchive/libarchive-3.4.2.ebuild
new file mode 100644 (file)
index 0000000..c4d0a5b
--- /dev/null
@@ -0,0 +1,134 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit libtool 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 ~sh ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="acl blake2 +bzip2 +e2fsprogs expat +iconv kernel_linux libressl lz4 +lzma lzo nettle static-libs +threads 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}] )
+       )
+       !libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] )
+       libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
+       lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
+       lzma? ( app-arch/xz-utils[threads=,${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 )
+       )"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-3.3.3-libressl.patch
+)
+
+# Various test problems, starting with the fact that sandbox
+# explodes on long paths. https://bugs.gentoo.org/598806
+RESTRICT="test"
+
+src_prepare() {
+       default
+       elibtoolize  # is required for Solaris sol2_ld linker fix
+}
+
+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
+}
+
+multilib_src_test() {
+       # Replace the default src_test so that it builds tests in parallel
+       multilib_is_native_abi && emake check
+}
+
+multilib_src_install() {
+       if multilib_is_native_abi ; then
+               emake DESTDIR="${D}" install
+
+               # Create symlinks for FreeBSD
+               if ! use prefix && [[ ${CHOST} == *-freebsd* ]]; then
+                       # Exclude cat for the time being #589876
+                       for bin in cpio tar; do
+                               dosym bsd${bin} /usr/bin/${bin}
+                               echo '.so bsd${bin}.1' > "${T}"/${bin}.1
+                               doman "${T}"/${bin}.1
+                       done
+               fi
+       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
+}
+
+multilib_src_install_all() {
+       cd "${S}" || die
+       einstalldocs
+}