summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-libs/pkcs11-helper/files/pkcs11-helper-1.29.0-incompatible-func-ptr-clang16.patch30
-rw-r--r--dev-libs/pkcs11-helper/pkcs11-helper-1.29.0-r1.ebuild42
2 files changed, 72 insertions, 0 deletions
diff --git a/dev-libs/pkcs11-helper/files/pkcs11-helper-1.29.0-incompatible-func-ptr-clang16.patch b/dev-libs/pkcs11-helper/files/pkcs11-helper-1.29.0-incompatible-func-ptr-clang16.patch
new file mode 100644
index 000000000000..5b1036b9999b
--- /dev/null
+++ b/dev-libs/pkcs11-helper/files/pkcs11-helper-1.29.0-incompatible-func-ptr-clang16.patch
@@ -0,0 +1,30 @@
+https://github.com/OpenSC/pkcs11-helper/commit/744001c1424b2d178272194d64e3356824ecdcdc
+https://github.com/OpenSC/pkcs11-helper/issues/60
+https://bugs.gentoo.org/880975
+
+From 744001c1424b2d178272194d64e3356824ecdcdc Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 12 Nov 2022 02:24:58 +0200
+Subject: [PATCH] openssl: fix openssl_ex_data_dup prototype
+
+--- a/lib/pkcs11h-openssl.c
++++ b/lib/pkcs11h-openssl.c
+@@ -340,7 +340,7 @@ int
+ __pkcs11h_openssl_ex_data_dup (
+ CRYPTO_EX_DATA *to,
+ CRYPTO_EX_DATA *from,
+- void *from_d,
++ void **from_d,
+ int idx,
+ long argl,
+ void *argp
+@@ -350,7 +350,7 @@ int
+ __pkcs11h_openssl_ex_data_dup (
+ CRYPTO_EX_DATA *to,
+ const CRYPTO_EX_DATA *from,
+- void *from_d,
++ void **from_d,
+ int idx,
+ long argl,
+ void *argp
+
diff --git a/dev-libs/pkcs11-helper/pkcs11-helper-1.29.0-r1.ebuild b/dev-libs/pkcs11-helper/pkcs11-helper-1.29.0-r1.ebuild
new file mode 100644
index 000000000000..d0676d9b7a49
--- /dev/null
+++ b/dev-libs/pkcs11-helper/pkcs11-helper-1.29.0-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="PKCS#11 helper library"
+HOMEPAGE="https://github.com/OpenSC/pkcs11-helper"
+SRC_URI="https://github.com/OpenSC/${PN}/releases/download/${P}/${P}.tar.bz2"
+
+LICENSE="|| ( BSD GPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="doc gnutls nss"
+
+RDEPEND=">=dev-libs/openssl-0.9.7:=
+ gnutls? ( >=net-libs/gnutls-1.4.4:= )
+ nss? ( dev-libs/nss )"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig
+ doc? ( >=app-doc/doxygen-1.4.7 )"
+
+PATCHES=(
+ "${FILESDIR}/${P}-incompatible-func-ptr-clang16.patch"
+)
+
+src_configure() {
+ econf \
+ --disable-crypto-engine-polarssl \
+ --disable-crypto-engine-mbedtls \
+ $(use_enable doc) \
+ $(use_enable gnutls crypto-engine-gnutls) \
+ $(use_enable nss crypto-engine-nss)
+}
+
+src_install() {
+ default
+
+ # bug #555262
+ rm "${ED}"/usr/share/doc/${PF}/COPYING.{BSD,GPL} || die
+
+ find "${ED}" -name '*.la' -delete || die
+}