summaryrefslogtreecommitdiff
path: root/common.gypi
diff options
context:
space:
mode:
authorLuca Lindhorst <info@lucalindhorst.de>2019-06-04 20:15:50 +0200
committerRich Trott <rtrott@gmail.com>2019-07-29 22:49:49 -0700
commit15674610524a1c97ba12c7f00f65cf62ca4bb800 (patch)
tree7acbf97d0b515ce9ac89a32bc700b681ac2cc714 /common.gypi
parent99879cac865877825a5a1feda4b766a6f780573f (diff)
downloadandroid-node-v8-15674610524a1c97ba12c7f00f65cf62ca4bb800.tar.gz
android-node-v8-15674610524a1c97ba12c7f00f65cf62ca4bb800.tar.bz2
android-node-v8-15674610524a1c97ba12c7f00f65cf62ca4bb800.zip
deps: dlloads node static linked executable
OpenSSL dlloads itself to prevent unloading, in case it might be dynamically loaded. However when linked statically this will lead to dloading the main executable. Refs: https://github.com/nodejs/node/pull/21848#issuecomment-498396551 PR-URL: https://github.com/nodejs/node/pull/28045 Fixes: https://github.com/nodejs/node/issues/27925 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
Diffstat (limited to 'common.gypi')
-rw-r--r--common.gypi12
1 files changed, 12 insertions, 0 deletions
diff --git a/common.gypi b/common.gypi
index 634909c1ad..c1752f823b 100644
--- a/common.gypi
+++ b/common.gypi
@@ -496,6 +496,18 @@
'-Wl,--export-dynamic',
],
}],
+ # if node is built as an executable,
+ # the openssl mechanism for keeping itself "dload"-ed to ensure proper
+ # atexit cleanup does not apply
+ ['node_shared_openssl!="true" and node_shared!="true"', {
+ 'defines': [
+ # `OPENSSL_NO_PINSHARED` prevents openssl from dload
+ # current node executable,
+ # see https://github.com/nodejs/node/pull/21848
+ # or https://github.com/nodejs/node/issues/27925
+ 'OPENSSL_NO_PINSHARED'
+ ],
+ }],
['node_shared_openssl!="true"', {
# `OPENSSL_THREADS` is defined via GYP for openSSL for all architectures.
'defines': [