From fed29b23d2a3cfae7c501e0bc0a3388e013601e2 Mon Sep 17 00:00:00 2001 From: Rod Vagg Date: Fri, 16 Oct 2015 22:32:06 +1100 Subject: [PATCH] src: refactor vcbuild configure args creation remove a bunch of variables and rely on %config_flags% alone where possible, also allow for an external %CONFIG_FLAGS% variable to supply additional arguments to configure to match the behaviour of the Makefile --- vcbuild.bat | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/vcbuild.bat b/vcbuild.bat index 08b1462e172192..866451e2459045 100644 --- a/vcbuild.bat +++ b/vcbuild.bat @@ -15,8 +15,6 @@ if /i "%1"=="/?" goto help set config=Release set target=Build set target_arch=x86 -set debug_arg= -set snapshot_arg= set noprojgen= set nobuild= set nosign= @@ -28,15 +26,13 @@ set licensertf= set jslint= set buildnodeweak= set noetw= -set noetw_arg= set noetw_msi_arg= set noperfctr= -set noperfctr_arg= set noperfctr_msi_arg= set i18n_arg= -set download_arg= set release_urls_arg= set build_release= +set config_flags= :next-arg if "%1"=="" goto args-done @@ -62,14 +58,13 @@ if /i "%1"=="test-internet" set test_args=%test_args% internet&goto arg-ok if /i "%1"=="test-pummel" set test_args=%test_args% pummel&goto arg-ok if /i "%1"=="test-all" set test_args=%test_args% sequential parallel message gc internet pummel&set buildnodeweak=1&set jslint=1&goto arg-ok if /i "%1"=="jslint" set jslint=1&goto arg-ok -@rem Include small-icu support with MSI installer -if /i "%1"=="msi" set msi=1&set licensertf=1&set download_arg="--download=all"&set i18n_arg=small-icu&goto arg-ok +if /i "%1"=="msi" set msi=1&set licensertf=1&set config_flags=%config_flags% --download=all&set i18n_arg=small-icu&goto arg-ok if /i "%1"=="build-release" set build_release=1&goto arg-ok if /i "%1"=="upload" set upload=1&goto arg-ok if /i "%1"=="small-icu" set i18n_arg=%1&goto arg-ok if /i "%1"=="full-icu" set i18n_arg=%1&goto arg-ok if /i "%1"=="intl-none" set i18n_arg=%1&goto arg-ok -if /i "%1"=="download-all" set download_arg="--download=all"&goto arg-ok +if /i "%1"=="download-all" set config_flags=%config_flags% --download=all&goto arg-ok if /i "%1"=="ignore-flaky" set test_args=%test_args% --flaky-tests=dontcare&goto arg-ok echo Warning: ignoring invalid command line option `%1`. @@ -85,19 +80,21 @@ if defined build_release ( set config=Release set msi=1 set licensertf=1 - set download_arg="--download=all" + set config_flags=%config_flags% --download=all set i18n_arg=small-icu ) -if "%config%"=="Debug" set debug_arg=--debug -if defined nosnapshot set snapshot_arg=--without-snapshot -if defined noetw set noetw_arg=--without-etw& set noetw_msi_arg=/p:NoETW=1 -if defined noperfctr set noperfctr_arg=--without-perfctr& set noperfctr_msi_arg=/p:NoPerfCtr=1 +if "%config%"=="Debug" set config_flags=%config_flags% --debug +if defined nosnapshot set config_flags=%config_flags% --without-snapshot +if defined noetw set config_flags=%config_flags% --without-etw& set noetw_msi_arg=/p:NoETW=1 +if defined noperfctr set config_flags=%config_flags% --without-perfctr& set noperfctr_msi_arg=/p:NoPerfCtr=1 if defined RELEASE_URLBASE set release_urlbase_arg=--release-urlbase=%RELEASE_URLBASE% -if "%i18n_arg%"=="full-icu" set i18n_arg=--with-intl=full-icu -if "%i18n_arg%"=="small-icu" set i18n_arg=--with-intl=small-icu -if "%i18n_arg%"=="intl-none" set i18n_arg=--with-intl=none +if "%i18n_arg%"=="full-icu" set config_flags=%config_flags% --with-intl=full-icu +if "%i18n_arg%"=="small-icu" set config_flags=%config_flags% --with-intl=small-icu +if "%i18n_arg%"=="intl-none" set config_flags=%config_flags% --with-intl=none + +if defined CONFIG_FLAGS set config_flags=%config_flags% %CONFIG_FLAGS% if not exist "%~dp0deps\icu" goto no-depsicu if "%target%"=="Clean" echo deleting %~dp0deps\icu @@ -168,7 +165,8 @@ goto run if defined noprojgen goto msbuild @rem Generate the VS project. -python configure %download_arg% %i18n_arg% %debug_arg% %snapshot_arg% %noetw_arg% %noperfctr_arg% --dest-cpu=%target_arch% --tag=%TAG% +echo configure %config_flags% --dest-cpu=%target_arch% --tag=%TAG% +python configure %config_flags% --dest-cpu=%target_arch% --tag=%TAG% if errorlevel 1 goto create-msvs-files-failed if not exist node.sln goto create-msvs-files-failed echo Project files generated.