summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-01-04 04:17:01 +0000
committerSam James <sam@gentoo.org>2023-01-04 04:32:00 +0000
commit45599c2be55766dd3b748308d22cf3e4378d4890 (patch)
tree4a0a3aaa8db6a5e6f7408d03b8d5c599593359d2 /app-crypt
parentdev-scheme/guile: fix configure w/ clang 16 (3.0.x) (diff)
downloadgentoo-45599c2be55766dd3b748308d22cf3e4378d4890.tar.gz
gentoo-45599c2be55766dd3b748308d22cf3e4378d4890.tar.bz2
gentoo-45599c2be55766dd3b748308d22cf3e4378d4890.zip
app-crypt/p11-kit: fix configure w/ clang 16
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'app-crypt')
-rw-r--r--app-crypt/p11-kit/files/p11-kit-0.24.1-configure-clang16.patch35
-rw-r--r--app-crypt/p11-kit/p11-kit-0.24.1-r1.ebuild (renamed from app-crypt/p11-kit/p11-kit-0.24.1.ebuild)11
2 files changed, 44 insertions, 2 deletions
diff --git a/app-crypt/p11-kit/files/p11-kit-0.24.1-configure-clang16.patch b/app-crypt/p11-kit/files/p11-kit-0.24.1-configure-clang16.patch
new file mode 100644
index 000000000000..3af5da6c68ac
--- /dev/null
+++ b/app-crypt/p11-kit/files/p11-kit-0.24.1-configure-clang16.patch
@@ -0,0 +1,35 @@
+https://github.com/p11-glue/p11-kit/commit/d39043f7c6e44247b5b1a237888e80b2a4d9c2b2
+
+From d39043f7c6e44247b5b1a237888e80b2a4d9c2b2 Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer@redhat.com>
+Date: Mon, 12 Dec 2022 19:40:25 +0100
+Subject: [PATCH] Fix meson/configure _Thread_local checks for C99
+ compatibility
+
+The type was missing from the definition, which happens to work
+in current compilers for historic reasons. Implicit ints were
+actually removed from C in 1999.
+--- a/configure.ac
++++ b/configure.ac
+@@ -148,7 +148,7 @@ if test "$os_unix" = "yes"; then
+ [ac_cv_tls_keyword=
+ for keyword in _Thread_local __thread; do
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdlib.h>]],
+- [[static ]$keyword[ foo;]])],
++ [[static ]$keyword[ int foo;]])],
+ [ac_cv_tls_keyword=$keyword])
+ done])
+ if test -n "$ac_cv_tls_keyword"; then
+--- a/meson.build
++++ b/meson.build
+@@ -200,7 +200,7 @@ if host_system != 'windows'
+ tls_test_code_template = '''
+ #include <stdlib.h>
+ int main (void) {
+-static @0@ foo;
++static @0@ int foo;
+ return 0;
+ }
+ '''
+
+
diff --git a/app-crypt/p11-kit/p11-kit-0.24.1.ebuild b/app-crypt/p11-kit/p11-kit-0.24.1-r1.ebuild
index 91ee0171c43a..e5ecd181f2ff 100644
--- a/app-crypt/p11-kit/p11-kit-0.24.1.ebuild
+++ b/app-crypt/p11-kit/p11-kit-0.24.1-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-inherit multilib-minimal
+inherit autotools multilib-minimal
DESCRIPTION="Provides a standard configuration setup for installing PKCS#11"
HOMEPAGE="https://p11-glue.github.io/p11-glue/p11-kit.html"
@@ -22,6 +22,10 @@ RDEPEND="asn1? ( >=dev-libs/libtasn1-3.4:=[${MULTILIB_USEDEP}] )
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
+PATCHES=(
+ "${FILESDIR}"/${P}-configure-clang16.patch
+)
+
pkg_setup() {
# disable unsafe tests, bug#502088
export FAKED_MODE=1
@@ -38,7 +42,10 @@ src_prepare() {
sed -i -e 's/SUN_LEN \(([^)]\+)\)/strlen (\1->sun_path)/' \
p11-kit/server.c || die
fi
+
default
+ # TODO: drop in next release (after 0.24.1), p11-kit-0.24.1-configure-clang16.patch is emrged
+ eautoreconf
}
multilib_src_configure() {