diff options
author | Fabian Groffen <grobian@gentoo.org> | 2019-01-01 15:28:20 +0100 |
---|---|---|
committer | Fabian Groffen <grobian@gentoo.org> | 2019-01-01 15:28:42 +0100 |
commit | b4e5b9ee780046c14e6bc99574a70bd3b8118eff (patch) | |
tree | fd6ad085a01081a1a1398c0d19941b4fbc4aafec /app-arch/xar | |
parent | net-misc/gerbera: Fix mysql client dep (diff) | |
download | gentoo-b4e5b9ee780046c14e6bc99574a70bd3b8118eff.tar.gz gentoo-b4e5b9ee780046c14e6bc99574a70bd3b8118eff.tar.bz2 gentoo-b4e5b9ee780046c14e6bc99574a70bd3b8118eff.zip |
app-arch/xar: revbump for openssl and solaris fixes
Closes: https://bugs.gentoo.org/674178
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Package-Manager: Portage-2.3.51, Repoman-2.3.11
Diffstat (limited to 'app-arch/xar')
-rw-r--r-- | app-arch/xar/files/xar-1.8-openssl-1.1.patch | 45 | ||||
-rw-r--r-- | app-arch/xar/xar-1.8-r2.ebuild | 52 |
2 files changed, 97 insertions, 0 deletions
diff --git a/app-arch/xar/files/xar-1.8-openssl-1.1.patch b/app-arch/xar/files/xar-1.8-openssl-1.1.patch new file mode 100644 index 000000000000..bd0b1daab00b --- /dev/null +++ b/app-arch/xar/files/xar-1.8-openssl-1.1.patch @@ -0,0 +1,45 @@ +lib/hash.c: fix compilation with OpenSSL-1.1+ + +EVP_MD_CTX has become an anonymous struct now, so can't allocate size +for it anymore. + +--- a/lib/hash.c 2015-06-09 03:22:07.000000000 +0000 ++++ b/lib/hash.c 2019-01-01 14:37:01.487775958 +0000 +@@ -102,7 +102,7 @@ + #ifdef __APPLE__ + CCDigestRef digest; + #else +- EVP_MD_CTX digest; ++ EVP_MD_CTX *digest; + const EVP_MD *type; + #endif + unsigned int length; +@@ -123,7 +123,8 @@ + #else + OpenSSL_add_all_digests(); + HASH_CTX(hash)->type = EVP_get_digestbyname(digest_name); +- EVP_DigestInit(&HASH_CTX(hash)->digest, HASH_CTX(hash)->type); ++ HASH_CTX(hash)->digest = EVP_MD_CTX_new(); ++ EVP_DigestInit(HASH_CTX(hash)->digest, HASH_CTX(hash)->type); + #endif + + HASH_CTX(hash)->digest_name = strdup(digest_name); +@@ -143,7 +143,7 @@ + #ifdef __APPLE__ + CCDigestUpdate(HASH_CTX(hash)->digest, buffer, nbyte); + #else +- EVP_DigestUpdate(&HASH_CTX(hash)->digest, buffer, nbyte); ++ EVP_DigestUpdate(HASH_CTX(hash)->digest, buffer, nbyte); + #endif + } + +@@ -160,7 +160,8 @@ + CCDigestFinal(HASH_CTX(hash)->digest, buffer); + CCDigestDestroy(HASH_CTX(hash)->digest); + #else +- EVP_DigestFinal(&HASH_CTX(hash)->digest, buffer, &HASH_CTX(hash)->length); ++ EVP_DigestFinal(HASH_CTX(hash)->digest, buffer, &HASH_CTX(hash)->length); ++ EVP_MD_CTX_free(HASH_CTX(hash)->digest); + #endif + + *nbyte = HASH_CTX(hash)->length; diff --git a/app-arch/xar/xar-1.8-r2.ebuild b/app-arch/xar/xar-1.8-r2.ebuild new file mode 100644 index 000000000000..b8acc75f2315 --- /dev/null +++ b/app-arch/xar/xar-1.8-r2.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit flag-o-matic multilib-minimal ltprune + +APPLE_PV=400 +DESCRIPTION="An easily extensible archive format" +HOMEPAGE="https://opensource.apple.com/source/xar/" +SRC_URI="https://opensource.apple.com/tarballs/xar/xar-${APPLE_PV}.tar.gz" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +IUSE="libressl kernel_Darwin" + +DEPEND=" + !kernel_Darwin? ( + !kernel_SunOS? ( virtual/acl ) + !libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] ) + libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] ) + ) + app-arch/bzip2[${MULTILIB_USEDEP}] + sys-libs/zlib[${MULTILIB_USEDEP}] + dev-libs/libxml2[${MULTILIB_USEDEP}] +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-1.6.1-ext2.patch + "${FILESDIR}"/${PN}-1.8-safe_dirname.patch + "${FILESDIR}"/${PN}-1.8-arm-ppc.patch + "${FILESDIR}"/${PN}-1.8-openssl-1.1.patch +) + +S=${WORKDIR}/${PN}-${APPLE_PV}/${PN} + +multilib_src_configure() { + use kernel_Darwin || append-libs $(pkg-config --libs openssl) + ECONF_SOURCE=${S} \ + econf \ + --disable-static + # botched check, fix it up + if use kernel_SunOS ; then + sed -i -e '/HAVE_SYS_ACL_H/s:^\(.*\)$:/* \1 */:' include/config.h || die + fi +} + +multilib_src_install() { + default + prune_libtool_files +} |