git: 85219598c47f - main - security/openssl-devel: unbreak on i386 via atomic stub
Bernard Spil
brnrd at FreeBSD.org
Sun Aug 1 10:34:13 UTC 2021
The branch main has been updated by brnrd:
URL: https://cgit.FreeBSD.org/ports/commit/?id=85219598c47f5023fd3aa88b64e6c88493361b0e
commit 85219598c47f5023fd3aa88b64e6c88493361b0e
Author: Bernard Spil <brnrd at FreeBSD.org>
AuthorDate: 2021-08-01 10:15:47 +0000
Commit: Bernard Spil <brnrd at FreeBSD.org>
CommitDate: 2021-08-01 10:34:03 +0000
security/openssl-devel: unbreak on i386 via atomic stub
Submitted by: jbeich
---
security/openssl-devel/Makefile | 2 --
.../files/patch-crypto_threads__pthread.c | 20 ++++++++++++++++++++
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/security/openssl-devel/Makefile b/security/openssl-devel/Makefile
index 9f18800fa823..5f18559936af 100644
--- a/security/openssl-devel/Makefile
+++ b/security/openssl-devel/Makefile
@@ -17,8 +17,6 @@ CONFLICTS_INSTALL= libressl-[0-9]* \
libressl-devel-[0-9]* \
openssl-[0-9]*
-BROKEN_i386= ld: error: undefined symbol: __atomic_is_lock_free
-
HAS_CONFIGURE= yes
CONFIGURE_SCRIPT= config
CONFIGURE_ENV= PERL="${PERL}"
diff --git a/security/openssl-devel/files/patch-crypto_threads__pthread.c b/security/openssl-devel/files/patch-crypto_threads__pthread.c
new file mode 100644
index 000000000000..fbc67e3e8393
--- /dev/null
+++ b/security/openssl-devel/files/patch-crypto_threads__pthread.c
@@ -0,0 +1,20 @@
+Drop after FreeBSD 13.0/12.2 EOL around 2022-05-30
+
+ld: error: undefined symbol: __atomic_is_lock_free
+>>> referenced by threads_pthread.c
+>>> libfips-lib-threads_pthread.o:(CRYPTO_atomic_or) in archive providers/libfips.a
+>>> referenced by threads_pthread.c
+>>> libfips-lib-threads_pthread.o:(CRYPTO_atomic_load) in archive providers/libfips.a
+
+--- crypto/threads_pthread.c.orig 2021-07-29 14:50:29 UTC
++++ crypto/threads_pthread.c
+@@ -15,6 +15,9 @@
+
+ #if defined(__sun)
+ # include <atomic.h>
++#elif defined(__clang__) && defined(__i386__) && __clang_major__ < 12
++/* Until https://github.com/llvm/llvm-project/commit/00530dee5d12 */
++#define __atomic_is_lock_free(size, ptr) ((void)(ptr), size <= sizeof(void *))
+ #endif
+
+ #if defined(OPENSSL_THREADS) && !defined(CRYPTO_TDEBUG) && !defined(OPENSSL_SYS_WINDOWS)
More information about the dev-commits-ports-all
mailing list