summaryrefslogtreecommitdiff
path: root/vcbuild.bat
diff options
context:
space:
mode:
authorJoão Reis <reis@janeasystems.com>2017-06-25 18:42:05 +0100
committerJoão Reis <reis@janeasystems.com>2017-06-30 19:20:07 +0100
commite783475412a315d28dde17d23492c867bf546dc2 (patch)
treeb86bb9c2a2342b34de1e98883a97845881121cf8 /vcbuild.bat
parente6b69b9418be8e94d81c1f74055d1772507f27ab (diff)
downloadandroid-node-v8-e783475412a315d28dde17d23492c867bf546dc2.tar.gz
android-node-v8-e783475412a315d28dde17d23492c867bf546dc2.tar.bz2
android-node-v8-e783475412a315d28dde17d23492c867bf546dc2.zip
build,win: use latest installed VS by default
vcbuild.bat should detect what version of Visual Studio to use, it should simply work without any parameter if any supported version is installed. It should default to the latest version, to match the behavior of `node-gyp`. PR-URL: https://github.com/nodejs/node/pull/13911 Fixes: https://github.com/nodejs/node/issues/13641 Reviewed-By: Refael Ackermann <refack@gmail.com>
Diffstat (limited to 'vcbuild.bat')
-rw-r--r--vcbuild.bat13
1 files changed, 7 insertions, 6 deletions
diff --git a/vcbuild.bat b/vcbuild.bat
index 3ce00e86a0..feac258b6e 100644
--- a/vcbuild.bat
+++ b/vcbuild.bat
@@ -15,7 +15,7 @@ if /i "%1"=="/?" goto help
set config=Release
set target=Build
set target_arch=x64
-set target_env=vs2015
+set target_env=
set noprojgen=
set nobuild=
set sign=
@@ -164,18 +164,18 @@ if %target_arch%==x64 if %msvs_host_arch%==amd64 set vcvarsall_arg=amd64
@rem Look for Visual Studio 2017
:vs-set-2017
-if "%target_env%" NEQ "vs2017" goto vs-set-2015
+if defined target_env if "%target_env%" NEQ "vs2017" goto vs-set-2015
echo Looking for Visual Studio 2017
@rem check if VS2017 is already setup, and for the requested arch
if "_%VisualStudioVersion%_" == "_15.0_" if "_%VSCMD_ARG_TGT_ARCH%_"=="_%target_arch%_" goto found_vs2017
+@rem need to clear VSINSTALLDIR for vcvarsall to work as expected
set "VSINSTALLDIR="
call tools\msvs\vswhere_usability_wrapper.cmd
if "_%VCINSTALLDIR%_" == "__" goto vs-set-2015
-@rem need to clear VSINSTALLDIR for vcvarsall to work as expected
set vcvars_call="%VCINSTALLDIR%\Auxiliary\Build\vcvarsall.bat" %vcvarsall_arg%
echo calling: %vcvars_call%
call %vcvars_call%
-
+if errorlevel 1 goto vs-set-2015
:found_vs2017
echo Found MSVS version %VisualStudioVersion%
set GYP_MSVS_VERSION=2017
@@ -184,11 +184,10 @@ goto msbuild-found
@rem Look for Visual Studio 2015
:vs-set-2015
-if "%target_env%" NEQ "vs2015" goto msbuild-not-found
+if defined target_env if "%target_env%" NEQ "vs2015" goto msbuild-not-found
echo Looking for Visual Studio 2015
if not defined VS140COMNTOOLS goto msbuild-not-found
if not exist "%VS140COMNTOOLS%\..\..\vc\vcvarsall.bat" goto msbuild-not-found
-echo Found Visual Studio 2015
if defined msi (
echo Looking for WiX installation for Visual Studio 2015...
if not exist "%WIX%\SDK\VS2015" (
@@ -201,6 +200,8 @@ if defined msi (
call "%VS140COMNTOOLS%\..\..\vc\vcvarsall.bat"
SET VCVARS_VER=140
if not defined VCINSTALLDIR goto msbuild-not-found
+@rem Visual C++ Build Tools 2015 does not define VisualStudioVersion
+echo Found MSVS version 14.0
set GYP_MSVS_VERSION=2015
set PLATFORM_TOOLSET=v140
goto msbuild-found