Tue Apr 2 02:13:01 2024 UTC (56d)
security/p11-kit: Add DragonFly support


(charlotte)
diff -r1.25 -r1.26 pkgsrc/security/p11-kit/distinfo
diff -r1.4 -r1.5 pkgsrc/security/p11-kit/patches/patch-common_compat.c
diff -r0 -r1.3 pkgsrc/security/p11-kit/patches/patch-common_message.c

cvs diff -r1.25 -r1.26 pkgsrc/security/p11-kit/distinfo (expand / switch to unified diff)

--- pkgsrc/security/p11-kit/distinfo 2023/11/16 12:17:26 1.25
+++ pkgsrc/security/p11-kit/distinfo 2024/04/02 02:13:01 1.26
@@ -1,7 +1,8 @@ @@ -1,7 +1,8 @@
1$NetBSD: distinfo,v 1.25 2023/11/16 12:17:26 tnn Exp $ 1$NetBSD: distinfo,v 1.26 2024/04/02 02:13:01 charlotte Exp $
2 2
3BLAKE2s (p11-kit-0.25.3.tar.xz) = 6d1a804ddacc44f27a8019d39b042815be9cb800be6b2aecc21dda6b045163a4 3BLAKE2s (p11-kit-0.25.3.tar.xz) = 6d1a804ddacc44f27a8019d39b042815be9cb800be6b2aecc21dda6b045163a4
4SHA512 (p11-kit-0.25.3.tar.xz) = ad2d393bf122526cbba18dc9d5a13f2c1cad7d70125ec90ffd02059dfa5ef30ac59dfc0bb9bc6380c8f317e207c9e87e895f1945634f56ddf910c2958868fb4c 4SHA512 (p11-kit-0.25.3.tar.xz) = ad2d393bf122526cbba18dc9d5a13f2c1cad7d70125ec90ffd02059dfa5ef30ac59dfc0bb9bc6380c8f317e207c9e87e895f1945634f56ddf910c2958868fb4c
5Size (p11-kit-0.25.3.tar.xz) = 991528 bytes 5Size (p11-kit-0.25.3.tar.xz) = 991528 bytes
6SHA1 (patch-common_compat.c) = bdcb10cebe5e7755c81f88ef033b9dfecd7a1aad 6SHA1 (patch-common_compat.c) = b20afd074ab26ec5e2011b483678ad4d5defc561
 7SHA1 (patch-common_message.c) = 4169ab2cb0b923d306c0b77908e1a412fec261c8
7SHA1 (patch-meson.build) = eb1c4130b097e3d57a74c9aa5482872670f3472b 8SHA1 (patch-meson.build) = eb1c4130b097e3d57a74c9aa5482872670f3472b

cvs diff -r1.4 -r1.5 pkgsrc/security/p11-kit/patches/patch-common_compat.c (expand / switch to unified diff)

--- pkgsrc/security/p11-kit/patches/patch-common_compat.c 2019/03/24 18:03:54 1.4
+++ pkgsrc/security/p11-kit/patches/patch-common_compat.c 2024/04/02 02:13:01 1.5
@@ -1,18 +1,29 @@ @@ -1,18 +1,29 @@
1$NetBSD: patch-common_compat.c,v 1.4 2019/03/24 18:03:54 ryoon Exp $ 1$NetBSD: patch-common_compat.c,v 1.5 2024/04/02 02:13:01 charlotte Exp $
2 2
3- Hide getauxval() symbol because the implementation is incomplete 3- Hide getauxval() symbol because the implementation is incomplete
4 and breaks for example openssl on NetBSD/evbarm 4 and breaks for example openssl on NetBSD/evbarm
5 https://github.com/p11-glue/p11-kit/issues/192 5 https://github.com/p11-glue/p11-kit/issues/192
6 6
7--- common/compat.c.orig 2018-08-10 09:54:46.000000000 +0000 7- issetugid() et al. are hidden behind __BSD_VISIBLE on DragonFly, too.
8+++ common/compat.c 8
9@@ -791,6 +791,9 @@ mkdtemp (char *template) 9--- common/compat.c.orig 2023-10-26 02:56:44.000000000 -0700
 10+++ common/compat.c 2024-04-01 19:04:55.358513000 -0700
 11@@ -49,7 +49,7 @@
 12 * This is needed to expose issetugid, getresuid, and getresgid, which are
 13 * hidden with the _XOPEN_SOURCE setting above
 14 */
 15-#ifdef __FreeBSD__
 16+#if defined(__FreeBSD__) || defined(__DragonFly__)
 17 #undef __BSD_VISIBLE
 18 #define __BSD_VISIBLE 1
 19 #endif
 20@@ -859,6 +859,9 @@
10 #ifndef HAVE_GETAUXVAL 21 #ifndef HAVE_GETAUXVAL
11  22
12 unsigned long 23 unsigned long
13+#if defined(__GNUC__) || defined(__clang__) 24+#if defined(__GNUC__) || defined(__clang__)
14+__attribute__((visibility("hidden"))) 25+__attribute__((visibility("hidden")))
15+#endif 26+#endif
16 getauxval (unsigned long type) 27 getauxval (unsigned long type)
17 { 28 {
18 static unsigned long secure = 0UL; 29 static unsigned long secure = 0UL;

File Added: pkgsrc/security/p11-kit/patches/patch-common_message.c
$NetBSD: patch-common_message.c,v 1.3 2024/04/02 02:13:01 charlotte Exp $

On DragonFly, xlocale.h provides all the locale functionality (locale.h
provides only some of it).

--- common/message.c.orig	2024-04-01 18:58:42.168426000 -0700
+++ common/message.c	2024-04-01 18:59:19.339981000 -0700
@@ -51,7 +51,11 @@
 #include <assert.h>
 #include <errno.h>
 #ifdef HAVE_LOCALE_H
+#ifdef __DragonFly__
+#include <xlocale.h>
+#else
 #include <locale.h>
+#endif // __DragonFly__
 #endif
 #include <stdarg.h>
 #include <stdlib.h>