FreeBSD Bugzilla – Attachment 229076 Details for
Bug 259454
www/node: Fails to link: ld: error: undefined symbol: __atomic_is_lock_free
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
0001-www-node-fix-build-of-bundled-ssl-on-i386
0001-www-node-fix-build-of-bundled-ssl-on-i386.patch (text/plain), 2.15 KB, created by
Felix Palmen
on 2021-10-27 16:17:36 UTC
(
hide
)
Description:
0001-www-node-fix-build-of-bundled-ssl-on-i386
Filename:
MIME Type:
Creator:
Felix Palmen
Created:
2021-10-27 16:17:36 UTC
Size:
2.15 KB
patch
obsolete
>From 6eb2563cf57cc51cb7206944a7b5b1713d3613cf Mon Sep 17 00:00:00 2001 >From: Felix Palmen <felix@palmen-it.de> >Date: Wed, 27 Oct 2021 18:08:24 +0200 >Subject: [PATCH] www/node: fix build of bundled ssl on i386 > >disable use of __atomic_is_lock_free() >--- > ..._openssl_openssl_crypto_threads__pthread.c | 29 +++++++++++++++++++ > 1 file changed, 29 insertions(+) > create mode 100644 www/node/files/patch-deps_openssl_openssl_crypto_threads__pthread.c > >diff --git a/www/node/files/patch-deps_openssl_openssl_crypto_threads__pthread.c b/www/node/files/patch-deps_openssl_openssl_crypto_threads__pthread.c >new file mode 100644 >index 000000000000..babf2bdb7655 >--- /dev/null >+++ b/www/node/files/patch-deps_openssl_openssl_crypto_threads__pthread.c >@@ -0,0 +1,29 @@ >+--- deps/openssl/openssl/crypto/threads_pthread.c.orig 2021-10-27 15:57:20 UTC >++++ deps/openssl/openssl/crypto/threads_pthread.c >+@@ -188,7 +188,7 @@ int CRYPTO_THREAD_compare_id(CRYPTO_THREAD_ID a, CRYPT >+ >+ int CRYPTO_atomic_add(int *val, int amount, int *ret, CRYPTO_RWLOCK *lock) >+ { >+-# if defined(__GNUC__) && defined(__ATOMIC_ACQ_REL) >++# if defined(__GNUC__) && defined(__ATOMIC_ACQ_REL) && !defined(__i386__) >+ if (__atomic_is_lock_free(sizeof(*val), val)) { >+ *ret = __atomic_add_fetch(val, amount, __ATOMIC_ACQ_REL); >+ return 1; >+@@ -215,7 +215,7 @@ int CRYPTO_atomic_add(int *val, int amount, int *ret, >+ int CRYPTO_atomic_or(uint64_t *val, uint64_t op, uint64_t *ret, >+ CRYPTO_RWLOCK *lock) >+ { >+-# if defined(__GNUC__) && defined(__ATOMIC_ACQ_REL) >++# if defined(__GNUC__) && defined(__ATOMIC_ACQ_REL) && !defined(__i386__) >+ if (__atomic_is_lock_free(sizeof(*val), val)) { >+ *ret = __atomic_or_fetch(val, op, __ATOMIC_ACQ_REL); >+ return 1; >+@@ -240,7 +240,7 @@ int CRYPTO_atomic_or(uint64_t *val, uint64_t op, uint6 >+ >+ int CRYPTO_atomic_load(uint64_t *val, uint64_t *ret, CRYPTO_RWLOCK *lock) >+ { >+-# if defined(__GNUC__) && defined(__ATOMIC_ACQUIRE) >++# if defined(__GNUC__) && defined(__ATOMIC_ACQUIRE) && !defined(__i386__) >+ if (__atomic_is_lock_free(sizeof(*val), val)) { >+ __atomic_load(val, ret, __ATOMIC_ACQUIRE); >+ return 1; >-- >2.33.0 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 259454
: 229076