Gentoo Archives: gentoo-commits

From: Fabian Groffen <grobian@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-arch/xar/files/, app-arch/xar/
Date: Tue, 01 Jan 2019 14:28:57
Message-Id: 1546352922.b4e5b9ee780046c14e6bc99574a70bd3b8118eff.grobian@gentoo
1 commit: b4e5b9ee780046c14e6bc99574a70bd3b8118eff
2 Author: Fabian Groffen <grobian <AT> gentoo <DOT> org>
3 AuthorDate: Tue Jan 1 14:28:20 2019 +0000
4 Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org>
5 CommitDate: Tue Jan 1 14:28:42 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b4e5b9ee
7
8 app-arch/xar: revbump for openssl and solaris fixes
9
10 Closes: https://bugs.gentoo.org/674178
11 Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>
12 Package-Manager: Portage-2.3.51, Repoman-2.3.11
13
14 app-arch/xar/files/xar-1.8-openssl-1.1.patch | 45 ++++++++++++++++++++++++
15 app-arch/xar/xar-1.8-r2.ebuild | 52 ++++++++++++++++++++++++++++
16 2 files changed, 97 insertions(+)
17
18 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
19 new file mode 100644
20 index 00000000000..bd0b1daab00
21 --- /dev/null
22 +++ b/app-arch/xar/files/xar-1.8-openssl-1.1.patch
23 @@ -0,0 +1,45 @@
24 +lib/hash.c: fix compilation with OpenSSL-1.1+
25 +
26 +EVP_MD_CTX has become an anonymous struct now, so can't allocate size
27 +for it anymore.
28 +
29 +--- a/lib/hash.c 2015-06-09 03:22:07.000000000 +0000
30 ++++ b/lib/hash.c 2019-01-01 14:37:01.487775958 +0000
31 +@@ -102,7 +102,7 @@
32 + #ifdef __APPLE__
33 + CCDigestRef digest;
34 + #else
35 +- EVP_MD_CTX digest;
36 ++ EVP_MD_CTX *digest;
37 + const EVP_MD *type;
38 + #endif
39 + unsigned int length;
40 +@@ -123,7 +123,8 @@
41 + #else
42 + OpenSSL_add_all_digests();
43 + HASH_CTX(hash)->type = EVP_get_digestbyname(digest_name);
44 +- EVP_DigestInit(&HASH_CTX(hash)->digest, HASH_CTX(hash)->type);
45 ++ HASH_CTX(hash)->digest = EVP_MD_CTX_new();
46 ++ EVP_DigestInit(HASH_CTX(hash)->digest, HASH_CTX(hash)->type);
47 + #endif
48 +
49 + HASH_CTX(hash)->digest_name = strdup(digest_name);
50 +@@ -143,7 +143,7 @@
51 + #ifdef __APPLE__
52 + CCDigestUpdate(HASH_CTX(hash)->digest, buffer, nbyte);
53 + #else
54 +- EVP_DigestUpdate(&HASH_CTX(hash)->digest, buffer, nbyte);
55 ++ EVP_DigestUpdate(HASH_CTX(hash)->digest, buffer, nbyte);
56 + #endif
57 + }
58 +
59 +@@ -160,7 +160,8 @@
60 + CCDigestFinal(HASH_CTX(hash)->digest, buffer);
61 + CCDigestDestroy(HASH_CTX(hash)->digest);
62 + #else
63 +- EVP_DigestFinal(&HASH_CTX(hash)->digest, buffer, &HASH_CTX(hash)->length);
64 ++ EVP_DigestFinal(HASH_CTX(hash)->digest, buffer, &HASH_CTX(hash)->length);
65 ++ EVP_MD_CTX_free(HASH_CTX(hash)->digest);
66 + #endif
67 +
68 + *nbyte = HASH_CTX(hash)->length;
69
70 diff --git a/app-arch/xar/xar-1.8-r2.ebuild b/app-arch/xar/xar-1.8-r2.ebuild
71 new file mode 100644
72 index 00000000000..b8acc75f231
73 --- /dev/null
74 +++ b/app-arch/xar/xar-1.8-r2.ebuild
75 @@ -0,0 +1,52 @@
76 +# Copyright 1999-2019 Gentoo Authors
77 +# Distributed under the terms of the GNU General Public License v2
78 +
79 +EAPI=6
80 +inherit flag-o-matic multilib-minimal ltprune
81 +
82 +APPLE_PV=400
83 +DESCRIPTION="An easily extensible archive format"
84 +HOMEPAGE="https://opensource.apple.com/source/xar/"
85 +SRC_URI="https://opensource.apple.com/tarballs/xar/xar-${APPLE_PV}.tar.gz"
86 +
87 +LICENSE="BSD-2"
88 +SLOT="0"
89 +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"
90 +IUSE="libressl kernel_Darwin"
91 +
92 +DEPEND="
93 + !kernel_Darwin? (
94 + !kernel_SunOS? ( virtual/acl )
95 + !libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] )
96 + libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
97 + )
98 + app-arch/bzip2[${MULTILIB_USEDEP}]
99 + sys-libs/zlib[${MULTILIB_USEDEP}]
100 + dev-libs/libxml2[${MULTILIB_USEDEP}]
101 +"
102 +RDEPEND="${DEPEND}"
103 +
104 +PATCHES=(
105 + "${FILESDIR}"/${PN}-1.6.1-ext2.patch
106 + "${FILESDIR}"/${PN}-1.8-safe_dirname.patch
107 + "${FILESDIR}"/${PN}-1.8-arm-ppc.patch
108 + "${FILESDIR}"/${PN}-1.8-openssl-1.1.patch
109 +)
110 +
111 +S=${WORKDIR}/${PN}-${APPLE_PV}/${PN}
112 +
113 +multilib_src_configure() {
114 + use kernel_Darwin || append-libs $(pkg-config --libs openssl)
115 + ECONF_SOURCE=${S} \
116 + econf \
117 + --disable-static
118 + # botched check, fix it up
119 + if use kernel_SunOS ; then
120 + sed -i -e '/HAVE_SYS_ACL_H/s:^\(.*\)$:/* \1 */:' include/config.h || die
121 + fi
122 +}
123 +
124 +multilib_src_install() {
125 + default
126 + prune_libtool_files
127 +}