Skip to content

Commit d75cb91

Browse files
jkunkeeBridgeAR
authored andcommitted
win,build: add arbitrary and binlog options
This change adds a 'msbuild_arg' option to vcbuild.bat that can be used to pass arbitrary flags to MSBuild. It also adds a 'binlog' flag as a shortcut 'msbuild_arg' option to enable binary logging to `%config%\node.binlog`. This is especially convenient when debugging changes to the build system. In the process of developing this change, the idea of adding 'setlocal' to the beginning of the script was rejected since other scripts in this repo rely on the exported environment variables. This change adds a note describing this. PR-URL: #25994 Reviewed-By: João Reis <reis@janeasystems.com>
1 parent c57510e commit d75cb91

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

‎vcbuild.bat‎

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
@if not defined DEBUG_HELPER @ECHOOFF
22

3+
:: Other scripts rely on the environment variables set in this script, so we
4+
:: explicitly allow them to persist in the calling shell.
5+
endlocal
6+
37
if /i "%1"=="help"goto help
48
if /i "%1"=="--help"goto help
59
if /i "%1"=="-help"goto help
@@ -59,6 +63,7 @@ set no_cctest=
5963
setcctest=
6064
setopenssl_no_asm=
6165
setdoc=
66+
setextra_msbuild_args=^
6267

6368
:next-arg
6469
if"%1"==""goto args-done
@@ -132,6 +137,8 @@ if /i "%1"=="no-cctest" set no_cctest=1&goto arg-ok
132137
if /i "%1"=="cctest"setcctest=1&goto arg-ok
133138
if /i "%1"=="openssl-no-asm"setopenssl_no_asm=1&goto arg-ok
134139
if /i "%1"=="doc"setdoc=1&goto arg-ok
140+
if /i "%1"=="binlog"setextra_msbuild_args=%extra_msbuild_args% /binaryLogger:%config%\node.binlog&goto arg-ok
141+
if /i "%1"=="msbuild_arg"setextra_msbuild_args=%extra_msbuild_args%%2&goto arg-ok-2
135142

136143
echo Error: invalid command line option `%1`.
137144
exit /b 1
@@ -313,7 +320,7 @@ if "%target%"=="Build" (
313320
ifdefined cctest settarget="Build"
314321
)
315322
if"%target%"=="rename_node_bin_win"ifexist"%config%\cctest.exe"del"%config%\cctest.exe"
316-
msbuild node.sln %msbcpu% /t:%target% /p:Configuration=%config% /p:Platform=%msbplatform% /clp:NoSummary;NoItemAndPropertyList;Verbosity=minimal /nologo
323+
msbuild node.sln %msbcpu% /t:%target% /p:Configuration=%config% /p:Platform=%msbplatform% /clp:NoSummary;NoItemAndPropertyList;Verbosity=minimal /nologo%extra_msbuild_args%
317324
iferrorlevel1 (
318325
ifnotdefined project_generated echo Building Node with reused solution failed. To regenerate project files use "vcbuild projgen"
319326
gotoexit

0 commit comments

Comments
 (0)