diff options
author | Luca Lindhorst <info@lucalindhorst.de> | 2019-06-04 20:15:50 +0200 |
---|---|---|
committer | Rich Trott <rtrott@gmail.com> | 2019-07-29 22:49:49 -0700 |
commit | 15674610524a1c97ba12c7f00f65cf62ca4bb800 (patch) | |
tree | 7acbf97d0b515ce9ac89a32bc700b681ac2cc714 /common.gypi | |
parent | 99879cac865877825a5a1feda4b766a6f780573f (diff) | |
download | android-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.gypi | 12 |
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': [ |