diff --git a/common.gypi b/common.gypi index 5eea907a0ef1e2..ef3c76cc8123cf 100644 --- a/common.gypi +++ b/common.gypi @@ -244,8 +244,9 @@ 'cflags_cc': [ '-fno-rtti', '-fno-exceptions', '-std=gnu++0x' ], 'ldflags': [ '-rdynamic' ], 'target_conditions': [ - ['_type=="static_library"', { - 'standalone_static_library': 1, # disable thin archive which needs binutils >= 2.19 + # The 1990s toolchain on SmartOS can't handle thin archives. + ['_type=="static_library" and OS=="solaris"', { + 'standalone_static_library': 1, }], ], 'conditions': [ diff --git a/node.gyp b/node.gyp index 4cb368a8c6f334..994de2b436cfe9 100644 --- a/node.gyp +++ b/node.gyp @@ -368,7 +368,9 @@ 'conditions': [ ['OS in "linux freebsd" and node_shared=="false"', { 'ldflags': [ - '-Wl,--whole-archive <(PRODUCT_DIR)/<(OPENSSL_PRODUCT)', + '-Wl,--whole-archive,' + '<(PRODUCT_DIR)/obj.target/deps/openssl/' + '<(OPENSSL_PRODUCT)', '-Wl,--no-whole-archive', ], }],