镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

Commit 3b639be

Browse files
authored
build: do not include shared gtest in node link path
Signed-off-by: Antoine du Hamel <duhamelantoine1995@gmail.com> PR-URL: #66626 Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com>
1 parent d8d598b commit 3b639be

2 files changed

Lines changed: 11 additions & 7 deletions

File tree

‎configure.py‎

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2195,9 +2195,10 @@ def configure_napi(output):
21952195
version = getnapibuildversion.get_napi_version()
21962196
output['variables']['napi_build_version'] = version
21972197

2198-
def configure_library(lib, output, pkgname=None):
2198+
def configure_library(lib, output, pkgname=None, libraries_key='libraries'):
21992199
shared_lib = 'shared_' + lib
22002200
output['variables']['node_' + shared_lib] = b(getattr(options, shared_lib))
2201+
libraries = output[libraries_key]
22012202

22022203
if getattr(options, shared_lib):
22032204
(pkg_libs, pkg_cflags, pkg_libpath, _) = pkg_config(pkgname or lib)
@@ -2216,17 +2217,17 @@ def configure_library(lib, output, pkgname=None):
22162217
output['msvs_settings']['VCLinkerTool']['AdditionalOptions'] += [
22172218
f"/LIBPATH:{options.__dict__[shared_lib + '_libpath']}"]
22182219
else:
2219-
output['libraries'] += [
2220+
libraries += [
22202221
f"-L{options.__dict__[shared_lib + '_libpath']}"]
22212222
elif pkg_libpath:
2222-
output['libraries'] += [pkg_libpath]
2223+
libraries += [pkg_libpath]
22232224

22242225
default_libs = getattr(options, shared_lib + '_libname')
22252226

22262227
if default_libs:
2227-
output['libraries'] += [f'-l{l}' for l in default_libs.split(',')]
2228+
libraries += [f'-l{l}' for l in default_libs.split(',')]
22282229
elif pkg_libs:
2229-
output['libraries'] += pkg_libs.split()
2230+
libraries += pkg_libs.split()
22302231

22312232

22322233
def configure_v8(o, configs):
@@ -2974,7 +2975,9 @@ def make_bin_override():
29742975
configure_library('simdutf', output)
29752976
configure_library('brotli', output, pkgname=['libbrotlidec', 'libbrotlienc'])
29762977
configure_library('cares', output, pkgname='libcares')
2977-
configure_library('gtest', output)
2978+
# Only cctest uses gtest; keep it out of the node binary's link line.
2979+
output['variables']['node_shared_gtest_libraries'] = []
2980+
configure_library('gtest', output, 'node_shared_gtest_libraries')
29782981
configure_library('hdr_histogram', output)
29792982
configure_library('highway', output, pkgname='libhwy')
29802983
configure_library('merve', output)

‎node.gyp‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
'node_shared_brotli%': 'false',
2020
'node_shared_cares%': 'false',
2121
'node_shared_gtest%': 'false',
22+
'node_shared_gtest_libraries%': [],
2223
'node_shared_hdr_histogram%': 'false',
2324
'node_shared_highway%': 'false',
2425
'node_shared_http_parser%': 'false',
@@ -1387,7 +1388,7 @@
13871388
],
13881389
}],
13891390
[ 'node_shared_gtest=="true"', {
1390-
'libraries': [ '-lgtest_main' ],
1391+
'libraries': [ '-lgtest_main', '<@(node_shared_gtest_libraries)' ],
13911392
}],
13921393
[ 'node_use_bundled_v8!="false" and node_shared_abseil=="false"', {
13931394
'dependencies': [ 'tools/v8_gypfiles/abseil.gyp:abseil' ],

0 commit comments

Comments
 (0)