build,win: rename node.lib to libnode.lib

eliminate the need for `rename_node_bin_win`

PR-URL: https://github.com/nodejs/node/pull/27150
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
This commit is contained in:
Refael Ackermann 2019-04-08 10:48:09 -04:00
parent 2e4ceb5747
commit 88beaf01f1
2 changed files with 6 additions and 42 deletions

View File

@ -22,7 +22,7 @@
'node_v8_options%': '', 'node_v8_options%': '',
'node_enable_v8_vtunejit%': 'false', 'node_enable_v8_vtunejit%': 'false',
'node_core_target_name%': 'node', 'node_core_target_name%': 'node',
'node_lib_target_name%': 'node_lib', 'node_lib_target_name%': 'libnode',
'node_intermediate_lib_type%': 'static_library', 'node_intermediate_lib_type%': 'static_library',
'library_files': [ 'library_files': [
'lib/internal/bootstrap/environment.js', 'lib/internal/bootstrap/environment.js',
@ -335,7 +335,7 @@
'msvs_settings': { 'msvs_settings': {
'VCLinkerTool': { 'VCLinkerTool': {
'AdditionalOptions': [ 'AdditionalOptions': [
'/WHOLEARCHIVE:<(node_core_target_name)<(STATIC_LIB_SUFFIX)', '/WHOLEARCHIVE:<(node_lib_target_name)<(STATIC_LIB_SUFFIX)',
], ],
}, },
}, },
@ -364,12 +364,6 @@
'OTHER_LDFLAGS': [ '-Wl,-rpath,@loader_path', ], 'OTHER_LDFLAGS': [ '-Wl,-rpath,@loader_path', ],
}, },
}], }],
[ 'node_intermediate_lib_type=="shared_library" and OS=="win"', {
# On Windows, having the same name for both executable and shared
# lib causes filename collision. Need a different PRODUCT_NAME for
# the executable and rename it back to node.exe later
'product_name': '<(node_core_target_name)-win',
}],
[ 'node_report=="true"', { [ 'node_report=="true"', {
'defines': [ 'defines': [
'NODE_REPORT', 'NODE_REPORT',
@ -441,9 +435,8 @@
{ {
'target_name': '<(node_lib_target_name)', 'target_name': '<(node_lib_target_name)',
'type': '<(node_intermediate_lib_type)', 'type': '<(node_intermediate_lib_type)',
'product_name': '<(node_core_target_name)',
'includes': [ 'includes': [
'node.gypi' 'node.gypi',
], ],
'include_dirs': [ 'include_dirs': [
@ -1017,41 +1010,12 @@
} ], } ],
] ]
}, # specialize_node_d }, # specialize_node_d
{
# When using shared lib to build executable in Windows, in order to avoid
# filename collision, the executable name is node-win.exe. Need to rename
# it back to node.exe
'target_name': 'rename_node_bin_win',
'type': 'none',
'dependencies': [
'<(node_core_target_name)',
],
'conditions': [
[ 'OS=="win" and node_intermediate_lib_type=="shared_library"', {
'actions': [
{
'action_name': 'rename_node_bin_win',
'inputs': [
'<(PRODUCT_DIR)/<(node_core_target_name)-win.exe'
],
'outputs': [
'<(PRODUCT_DIR)/<(node_core_target_name).exe',
],
'action': [
'move', '<@(_inputs)', '<@(_outputs)',
],
},
],
} ],
]
}, # rename_node_bin_win
{ {
'target_name': 'cctest', 'target_name': 'cctest',
'type': 'executable', 'type': 'executable',
'dependencies': [ 'dependencies': [
'<(node_lib_target_name)', '<(node_lib_target_name)',
'rename_node_bin_win',
'deps/gtest/gtest.gyp:gtest', 'deps/gtest/gtest.gyp:gtest',
'deps/histogram/histogram.gyp:histogram', 'deps/histogram/histogram.gyp:histogram',
'node_dtrace_header', 'node_dtrace_header',

View File

@ -311,11 +311,11 @@ set "msbplatform=Win32"
if "%target_arch%"=="x64" set "msbplatform=x64" if "%target_arch%"=="x64" set "msbplatform=x64"
if "%target_arch%"=="arm64" set "msbplatform=ARM64" if "%target_arch%"=="arm64" set "msbplatform=ARM64"
if "%target%"=="Build" ( if "%target%"=="Build" (
if defined no_cctest set target=rename_node_bin_win if defined no_cctest set target=node
if "%test_args%"=="" set target=rename_node_bin_win if "%test_args%"=="" set target=node
if defined cctest set target="Build" if defined cctest set target="Build"
) )
if "%target%"=="rename_node_bin_win" if exist "%config%\cctest.exe" del "%config%\cctest.exe" if "%target%"=="node" if exist "%config%\cctest.exe" del "%config%\cctest.exe"
if defined msbuild_args set "extra_msbuild_args=%extra_msbuild_args% %msbuild_args%" if defined msbuild_args set "extra_msbuild_args=%extra_msbuild_args% %msbuild_args%"
msbuild node.sln %msbcpu% /t:%target% /p:Configuration=%config% /p:Platform=%msbplatform% /clp:NoItemAndPropertyList;Verbosity=minimal /nologo %extra_msbuild_args% msbuild node.sln %msbcpu% /t:%target% /p:Configuration=%config% /p:Platform=%msbplatform% /clp:NoItemAndPropertyList;Verbosity=minimal /nologo %extra_msbuild_args%
if errorlevel 1 ( if errorlevel 1 (