build: add the option to generate compile_commands.json in vcbuild.bat
Refs: https://github.com/nodejs/gyp-next/pull/238 PR-URL: https://github.com/nodejs/node/pull/52279 Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Stefan Stojanovic <stefan.stojanovic@janeasystems.com> Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
parent
6a52e81260
commit
beb1892036
@ -2310,8 +2310,9 @@ else:
|
|||||||
|
|
||||||
if options.compile_commands_json:
|
if options.compile_commands_json:
|
||||||
gyp_args += ['-f', 'compile_commands_json']
|
gyp_args += ['-f', 'compile_commands_json']
|
||||||
os.path.islink('./compile_commands.json') and os.unlink('./compile_commands.json')
|
if sys.platform != 'win32':
|
||||||
os.symlink('./out/' + config['BUILDTYPE'] + '/compile_commands.json', './compile_commands.json')
|
os.path.lexists('./compile_commands.json') and os.unlink('./compile_commands.json')
|
||||||
|
os.symlink('./out/' + config['BUILDTYPE'] + '/compile_commands.json', './compile_commands.json')
|
||||||
|
|
||||||
# pass the leftover non-whitespace positional arguments to GYP
|
# pass the leftover non-whitespace positional arguments to GYP
|
||||||
gyp_args += [arg for arg in args if not str.isspace(arg)]
|
gyp_args += [arg for arg in args if not str.isspace(arg)]
|
||||||
@ -2321,4 +2322,7 @@ if warn.warned and not options.verbose:
|
|||||||
|
|
||||||
print_verbose("running: \n " + " ".join(['python', 'tools/gyp_node.py'] + gyp_args))
|
print_verbose("running: \n " + " ".join(['python', 'tools/gyp_node.py'] + gyp_args))
|
||||||
run_gyp(gyp_args)
|
run_gyp(gyp_args)
|
||||||
|
if options.compile_commands_json and sys.platform == 'win32':
|
||||||
|
os.path.isfile('./compile_commands.json') and os.unlink('./compile_commands.json')
|
||||||
|
shutil.copy2('./out/' + config['BUILDTYPE'] + '/compile_commands.json', './compile_commands.json')
|
||||||
info('configure completed successfully')
|
info('configure completed successfully')
|
||||||
|
@ -70,6 +70,7 @@ set openssl_no_asm=
|
|||||||
set no_shared_roheap=
|
set no_shared_roheap=
|
||||||
set doc=
|
set doc=
|
||||||
set extra_msbuild_args=
|
set extra_msbuild_args=
|
||||||
|
set compile_commands=
|
||||||
set exit_code=0
|
set exit_code=0
|
||||||
|
|
||||||
:next-arg
|
:next-arg
|
||||||
@ -147,6 +148,7 @@ if /i "%1"=="openssl-no-asm" set openssl_no_asm=1&goto arg-ok
|
|||||||
if /i "%1"=="no-shared-roheap" set no_shared_roheap=1&goto arg-ok
|
if /i "%1"=="no-shared-roheap" set no_shared_roheap=1&goto arg-ok
|
||||||
if /i "%1"=="doc" set doc=1&goto arg-ok
|
if /i "%1"=="doc" set doc=1&goto arg-ok
|
||||||
if /i "%1"=="binlog" set extra_msbuild_args=/binaryLogger:out\%config%\node.binlog&goto arg-ok
|
if /i "%1"=="binlog" set extra_msbuild_args=/binaryLogger:out\%config%\node.binlog&goto arg-ok
|
||||||
|
if /i "%1"=="compile-commands" set compile_commands=1&goto arg-ok
|
||||||
|
|
||||||
echo Error: invalid command line option `%1`.
|
echo Error: invalid command line option `%1`.
|
||||||
exit /b 1
|
exit /b 1
|
||||||
@ -205,6 +207,7 @@ if defined debug_nghttp2 set configure_flags=%configure_flags% --debug-nghttp
|
|||||||
if defined openssl_no_asm set configure_flags=%configure_flags% --openssl-no-asm
|
if defined openssl_no_asm set configure_flags=%configure_flags% --openssl-no-asm
|
||||||
if defined no_shared_roheap set configure_flags=%configure_flags% --disable-shared-readonly-heap
|
if defined no_shared_roheap set configure_flags=%configure_flags% --disable-shared-readonly-heap
|
||||||
if defined DEBUG_HELPER set configure_flags=%configure_flags% --verbose
|
if defined DEBUG_HELPER set configure_flags=%configure_flags% --verbose
|
||||||
|
if defined compile_commands set configure_flags=%configure_flags% -C
|
||||||
|
|
||||||
if "%target_arch%"=="x86" (
|
if "%target_arch%"=="x86" (
|
||||||
echo "32-bit Windows builds are not supported anymore."
|
echo "32-bit Windows builds are not supported anymore."
|
||||||
|
Loading…
x
Reference in New Issue
Block a user