logo

overlay

My (experimental) gentoo overlay
commit: 0105c472e05845cbb8dd4a5604a341c69c20945e
parent: 3c0f574d8b120f04b4c71277c70b427402fd7b4c
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date:   Fri, 16 Nov 2018 22:42:18 +0100

app-arch/libarchive: Import from ::gentoo

Diffstat:

Aapp-arch/libarchive/Manifest1+
Aapp-arch/libarchive/files/libarchive-3.3.3-libressl.patch12++++++++++++
Aapp-arch/libarchive/libarchive-3.3.3.ebuild128+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Aapp-arch/libarchive/metadata.xml36++++++++++++++++++++++++++++++++++++
Mmail-mta/opensmtpd/opensmtpd-6.4.0_p1.ebuild2+-
5 files changed, 178 insertions(+), 1 deletion(-)

diff --git a/app-arch/libarchive/Manifest b/app-arch/libarchive/Manifest @@ -0,0 +1 @@ +DIST libarchive-3.3.3.tar.gz 6535598 BLAKE2B 627949d24572b8345800e72a24d1e8d95cd0f19bb7fab70e2f36be011fee6f345eecfa9563640068b10888520aafdf30b1e3426b7e2743589cabd3ab5c270a22 SHA512 9d12b47d6976efa9f98e62c25d8b85fd745d4e9ca7b7e6d36bfe095dfe5c4db017d4e785d110f3758f5938dad6f1a1b009267fd7e82cb7212e93e1aea237bab7 diff --git a/app-arch/libarchive/files/libarchive-3.3.3-libressl.patch b/app-arch/libarchive/files/libarchive-3.3.3-libressl.patch @@ -0,0 +1,12 @@ +--- a/libarchive/archive_openssl_evp_private.h ++++ b/libarchive/archive_openssl_evp_private.h +@@ -28,7 +28,8 @@ + #include <openssl/evp.h> + #include <openssl/opensslv.h> + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || \ ++(defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L) + #include <stdlib.h> /* malloc, free */ + #include <string.h> /* memset */ + static inline EVP_MD_CTX *EVP_MD_CTX_new(void) diff --git a/app-arch/libarchive/libarchive-3.3.3.ebuild b/app-arch/libarchive/libarchive-3.3.3.ebuild @@ -0,0 +1,128 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit libtool multilib-minimal toolchain-funcs + +DESCRIPTION="BSD tar command" +HOMEPAGE="http://www.libarchive.org/" +SRC_URI="http://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 ~s390 ~sh ~sparc ~x86 ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="acl +bzip2 +e2fsprogs expat +iconv kernel_linux libressl lz4 +lzma lzo nettle static-libs +threads xattr +zlib" + +RDEPEND=" + acl? ( virtual/acl[${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}] )" +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=() + myconf=( + $(use_enable acl) + $(use_enable static-libs static) + $(use_enable xattr) + $(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) + ) + 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}" -name "*.la" -delete || die +} + +multilib_src_install_all() { + cd "${S}" || die + einstalldocs +} diff --git a/app-arch/libarchive/metadata.xml b/app-arch/libarchive/metadata.xml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>bsd@gentoo.org</email> + <name>BSD Project</name> + </maintainer> + <longdescription lang="en"> + The bsdtar program creates and manipulates streaming archive files. + It has a number of advantages over previous tar implementations. + </longdescription> + <use> + <flag name="bzip2"> + Allow accessing bzip2-compressed archives through libbz2 (which + comes with <pkg>app-arch/bzip2</pkg>). This only affects + libarchive's native support: bsdtar will keep using bunzip2 as a + filter if that's not built-in. + </flag> + <flag name="e2fsprogs"> + Use file flags from <pkg>sys-fs/e2fsprogs</pkg> headers instead of <pkg>virtual/os-headers</pkg> headers + </flag> + <flag name="lz4"> + Enable support for LZ4 compression using <pkg>app-arch/lz4</pkg> + </flag> + <flag name="nettle"> + Use <pkg>dev-libs/nettle</pkg> as crypto backend + </flag> + <flag name="zlib"> + Allow accessing gzip-compressed archives through + <pkg>sys-libs/zlib</pkg>. This only affects libarchive's native + support: bsdtar will keep using gunzip as a filter if that's not + built-in. It's also needed for supporting extraction of ZIP + files. + </flag> + </use> +</pkgmetadata> diff --git a/mail-mta/opensmtpd/opensmtpd-6.4.0_p1.ebuild b/mail-mta/opensmtpd/opensmtpd-6.4.0_p1.ebuild @@ -15,7 +15,7 @@ SRC_URI="https://www.opensmtpd.org/archives/${MY_P/_}.tar.gz" LICENSE="ISC BSD BSD-1 BSD-2 BSD-4" SLOT="0" -KEYWORDS="" +KEYWORDS="~amd64" IUSE="libressl pam mandoc +mta" DEPEND="