Module Name: pkgsrc
Committed By: wiz
Date: Sun Feb 1 08:51:16 UTC 2026
Modified Files:
pkgsrc/security/libgcrypt: distinfo
Added Files:
pkgsrc/security/libgcrypt/patches: patch-cipher_asm-common-amd64.h
patch-cipher_rijndael-vaes-avx512-amd64.S
Log Message:
libgcrypt: add upstream patch candidate for SmartOS fix
To generate a diff of this commit:
cvs rdiff -u -r1.104 -r1.105 pkgsrc/security/libgcrypt/distinfo
cvs rdiff -u -r0 -r1.1 \
pkgsrc/security/libgcrypt/patches/patch-cipher_asm-common-amd64.h \
pkgsrc/security/libgcrypt/patches/patch-cipher_rijndael-vaes-avx512-amd64.S
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/security/libgcrypt/distinfo
diff -u pkgsrc/security/libgcrypt/distinfo:1.104 pkgsrc/security/libgcrypt/distinfo:1.105
--- pkgsrc/security/libgcrypt/distinfo:1.104 Fri Jan 30 14:01:24 2026
+++ pkgsrc/security/libgcrypt/distinfo Sun Feb 1 08:51:16 2026
@@ -1,7 +1,9 @@
-$NetBSD: distinfo,v 1.104 2026/01/30 14:01:24 wiz Exp $
+$NetBSD: distinfo,v 1.105 2026/02/01 08:51:16 wiz Exp $
BLAKE2s (libgcrypt-1.12.0.tar.bz2) = 8e8c265bd087638c042cc6563a664436e4b208e15b8e93c58b801f9abd26685a
SHA512 (libgcrypt-1.12.0.tar.bz2) = 9421461297bd79b14f94d1ab275c3ed93b5d433531915c5cc7a718a94d32978a46feccb7a33fe63a60780ff00d465fbe1fe9ada5c250cf6d10a525c246c63d1c
Size (libgcrypt-1.12.0.tar.bz2) = 4438947 bytes
+SHA1 (patch-cipher_asm-common-amd64.h) = e0ad048681448f4fde3d75c2429edfd122e97e0b
+SHA1 (patch-cipher_rijndael-vaes-avx512-amd64.S) = a8dae214c6763c8783b1128ef205163e8dc0e704
SHA1 (patch-mpi_config.links) = 1bb6bd677b0c7519fe14672bba0adc8c99c8e09f
SHA1 (patch-src_libgcrypt-config.in) = 2b791d7ebe51c52ece864b23dcbeae5354701263
Added files:
Index: pkgsrc/security/libgcrypt/patches/patch-cipher_asm-common-amd64.h
diff -u /dev/null pkgsrc/security/libgcrypt/patches/patch-cipher_asm-common-amd64.h:1.1
--- /dev/null Sun Feb 1 08:51:16 2026
+++ pkgsrc/security/libgcrypt/patches/patch-cipher_asm-common-amd64.h Sun Feb 1 08:51:16 2026
@@ -0,0 +1,19 @@
+$NetBSD: patch-cipher_asm-common-amd64.h,v 1.1 2026/02/01 08:51:16 wiz Exp $
+
+https://dev.gnupg.org/file/view/35198420/
+
+--- cipher/asm-common-amd64.h.orig 2025-05-08 06:47:34.000000000 +0000
++++ cipher/asm-common-amd64.h
+@@ -53,6 +53,12 @@
+ # define ADD_RIP
+ #endif
+
++#ifdef __PIC__
++# define AT_PLT ELF(@PLT)
++#else
++# define AT_PLT
++#endif
++
+ #if defined(HAVE_COMPATIBLE_GCC_WIN64_PLATFORM_AS) || !defined(__PIC__)
+ # define GET_EXTERN_POINTER(name, reg) movabsq $name, reg
+ #else
Index: pkgsrc/security/libgcrypt/patches/patch-cipher_rijndael-vaes-avx512-amd64.S
diff -u /dev/null pkgsrc/security/libgcrypt/patches/patch-cipher_rijndael-vaes-avx512-amd64.S:1.1
--- /dev/null Sun Feb 1 08:51:16 2026
+++ pkgsrc/security/libgcrypt/patches/patch-cipher_rijndael-vaes-avx512-amd64.S Sun Feb 1 08:51:16 2026
@@ -0,0 +1,69 @@
+$NetBSD: patch-cipher_rijndael-vaes-avx512-amd64.S,v 1.1 2026/02/01 08:51:16 wiz Exp $
+
+https://dev.gnupg.org/file/view/35198420/
+
+--- cipher/rijndael-vaes-avx512-amd64.S.orig 2026-01-20 13:36:28.000000000 +0000
++++ cipher/rijndael-vaes-avx512-amd64.S
+@@ -277,7 +277,7 @@ _gcry_vaes_avx512_cbc_dec_amd64:
+ .Lcbc_dec_skip_avx512:
+ /* Handle trailing blocks with AVX2 implementation. */
+ cmpq $0, %r8;
+- ja _gcry_vaes_avx2_cbc_dec_amd64;
++ ja _gcry_vaes_avx2_cbc_dec_amd64 AT_PLT;
+
+ ret_spec_stop
+ CFI_ENDPROC();
+@@ -491,7 +491,7 @@ _gcry_vaes_avx512_cfb_dec_amd64:
+ .Lcfb_dec_skip_avx512:
+ /* Handle trailing blocks with AVX2 implementation. */
+ cmpq $0, %r8;
+- ja _gcry_vaes_avx2_cfb_dec_amd64;
++ ja _gcry_vaes_avx2_cfb_dec_amd64 AT_PLT;
+
+ ret_spec_stop
+ CFI_ENDPROC();
+@@ -813,7 +813,7 @@ _gcry_vaes_avx512_ctr_enc_amd64:
+ .Lctr_enc_skip_avx512:
+ /* Handle trailing blocks with AVX2 implementation. */
+ cmpq $0, %r8;
+- ja _gcry_vaes_avx2_ctr_enc_amd64;
++ ja _gcry_vaes_avx2_ctr_enc_amd64 AT_PLT;
+
+ ret_spec_stop
+ CFI_ENDPROC();
+@@ -1037,7 +1037,7 @@ _gcry_vaes_avx512_ctr32le_enc_amd64:
+ .Lctr32le_enc_skip_avx512:
+ /* Handle trailing blocks with AVX2 implementation. */
+ cmpq $0, %r8;
+- ja _gcry_vaes_avx2_ctr32le_enc_amd64;
++ ja _gcry_vaes_avx2_ctr32le_enc_amd64 AT_PLT;
+
+ ret_spec_stop
+ CFI_ENDPROC();
+@@ -1721,7 +1721,7 @@ _gcry_vaes_avx512_ocb_aligned_crypt_amd64:
+ .Locb_skip_avx512:
+ /* Handle trailing blocks with AVX2 implementation. */
+ cmpq $0, %r8;
+- ja _gcry_vaes_avx2_ocb_crypt_amd64;
++ ja _gcry_vaes_avx2_ocb_crypt_amd64 AT_PLT;
+
+ xorl %eax, %eax;
+ ret_spec_stop
+@@ -2084,7 +2084,7 @@ _gcry_vaes_avx512_xts_crypt_amd64:
+ .Lxts_crypt_skip_avx512:
+ /* Handle trailing blocks with AVX2 implementation. */
+ cmpq $0, %r8;
+- ja _gcry_vaes_avx2_xts_crypt_amd64;
++ ja _gcry_vaes_avx2_xts_crypt_amd64 AT_PLT;
+
+ ret_spec_stop
+ CFI_ENDPROC();
+@@ -2347,7 +2347,7 @@ _gcry_vaes_avx512_ecb_crypt_amd64:
+ .Lecb_crypt_skip_avx512:
+ /* Handle trailing blocks with AVX2 implementation. */
+ cmpq $0, %r8;
+- ja _gcry_vaes_avx2_ecb_crypt_amd64;
++ ja _gcry_vaes_avx2_ecb_crypt_amd64 AT_PLT;
+
+ ret_spec_stop
+ CFI_ENDPROC();