build: add option to select VS version
authorjulien.waechter <julien.waechter@gmail.com>
Tue, 12 Jan 2016 08:21:46 +0000 (09:21 +0100)
committerMyles Borins <mborins@us.ibm.com>
Mon, 21 Mar 2016 19:57:52 +0000 (12:57 -0700)
This changes vcbuild.bat to accept a new parameter (vc2015 or vc2013)
to select the version of Visual Studio to use.

PR-URL: https://github.com/nodejs/node/pull/4645
Reviewed-By: João Reis <reis@janeasystems.com>
vcbuild.bat

index ad246c6..4411234 100644 (file)
@@ -15,6 +15,7 @@ if /i "%1"=="/?" goto help
 set config=Release
 set target=Build
 set target_arch=x86
+set target_env=
 set noprojgen=
 set nobuild=
 set nosign=
@@ -43,6 +44,8 @@ if /i "%1"=="clean"         set target=Clean&goto arg-ok
 if /i "%1"=="ia32"          set target_arch=x86&goto arg-ok
 if /i "%1"=="x86"           set target_arch=x86&goto arg-ok
 if /i "%1"=="x64"           set target_arch=x64&goto arg-ok
+if /i "%1"=="vc2013"        set target_env=vc2013&goto arg-ok
+if /i "%1"=="vc2015"        set target_env=vc2015&goto arg-ok
 if /i "%1"=="noprojgen"     set noprojgen=1&goto arg-ok
 if /i "%1"=="nobuild"       set nobuild=1&goto arg-ok
 if /i "%1"=="nosign"        set nosign=1&goto arg-ok
@@ -107,6 +110,7 @@ call :getnodeversion || exit /b 1
 
 @rem Set environment for msbuild
 
+if defined target_env if "%target_env%" NEQ "vc2015" goto vc-set-2013
 @rem Look for Visual Studio 2015
 echo Looking for Visual Studio 2015
 if not defined VS140COMNTOOLS goto vc-set-2013
@@ -130,6 +134,7 @@ set PLATFORM_TOOLSET=v140
 goto msbuild-found
 
 :vc-set-2013
+if defined target_env if "%target_env%" NEQ "vc2013" goto msbuild-not-found
 @rem Look for Visual Studio 2013
 echo Looking for Visual Studio 2013
 if not defined VS120COMNTOOLS goto msbuild-not-found
@@ -261,7 +266,9 @@ echo Failed to create vc project files.
 goto exit
 
 :help
-echo vcbuild.bat [debug/release] [msi] [test-all/test-uv/test-internet/test-pummel/test-simple/test-message] [clean] [noprojgen] [small-icu/full-icu/intl-none] [nobuild] [nosign] [x86/x64] [download-all]
+
+echo vcbuild.bat [debug/release] [msi] [test-all/test-uv/test-internet/test-pummel/test-simple/test-message] [clean] [noprojgen] [small-icu/full-icu/intl-none] [nobuild] [nosign] [x86/x64] [vc2013/vc2015] [download-all]
+
 echo Examples:
 echo   vcbuild.bat                : builds release build
 echo   vcbuild.bat debug          : builds debug build