summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorRefael Ackermann <refack@gmail.com>2017-07-31 14:17:23 -0400
committerRefael Ackermann <refack@gmail.com>2017-09-03 17:15:27 -0400
commit98d8db32997b411a510f3ade8c264bc86fd5783b (patch)
tree727b8a4efd3ee6fcec344f6350b1b2e1fc147247 /tools
parent180f86507d496b11aa35b2df4594629a92cce329 (diff)
downloadandroid-node-v8-98d8db32997b411a510f3ade8c264bc86fd5783b.tar.gz
android-node-v8-98d8db32997b411a510f3ade8c264bc86fd5783b.tar.bz2
android-node-v8-98d8db32997b411a510f3ade8c264bc86fd5783b.zip
tools: bump vswhere helper to 2.0.0
* enable explicit detection of prerelease VS versions with `set VSWHERE_WITH_PRERELEASE=1` PR-URL: https://github.com/nodejs/node/pull/14557 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/msvs/vswhere_usability_wrapper.cmd24
1 files changed, 18 insertions, 6 deletions
diff --git a/tools/msvs/vswhere_usability_wrapper.cmd b/tools/msvs/vswhere_usability_wrapper.cmd
index b5e5653ad6..a260a50a2c 100644
--- a/tools/msvs/vswhere_usability_wrapper.cmd
+++ b/tools/msvs/vswhere_usability_wrapper.cmd
@@ -1,20 +1,32 @@
:: Copyright 2017 - Refael Ackermann
:: Distributed under MIT style license
:: See accompanying file LICENSE at https://github.com/node4good/windows-autoconf
-:: version: 1.14.0
+:: version: 2.0.0
@if not defined DEBUG_HELPER @ECHO OFF
setlocal
+if "%~1"=="prerelease" set VSWHERE_WITH_PRERELEASE=1
+set "InstallerPath=%ProgramFiles(x86)%\Microsoft Visual Studio\Installer"
+if not exist "%InstallerPath%" set "InstallerPath=%ProgramFiles%\Microsoft Visual Studio\Installer"
+if not exist "%InstallerPath%" goto :no-vswhere
+:: Manipulate %Path% for easier " handeling
+set "Path=%Path%;%InstallerPath%"
+where vswhere 2> nul > nul
+if errorlevel 1 goto :no-vswhere
set VSWHERE_REQ=-requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64
set VSWHERE_PRP=-property installationPath
set VSWHERE_LMT=-version "[15.0,16.0)"
+vswhere -prerelease > nul
+if not errorlevel 1 if "%VSWHERE_WITH_PRERELEASE%"=="1" set "VSWHERE_LMT=%VSWHERE_LMT% -prerelease"
SET VSWHERE_ARGS=-latest -products * %VSWHERE_REQ% %VSWHERE_PRP% %VSWHERE_LMT%
-set "VSWHERE=%ProgramFiles(x86)%\Microsoft Visual Studio\Installer"
-if not exist "%VSWHERE%" set "VSWHERE=%ProgramFiles%\Microsoft Visual Studio\Installer"
-if not exist "%VSWHERE%" exit /B 1
-set Path=%Path%;%VSWHERE%
for /f "usebackq tokens=*" %%i in (`vswhere %VSWHERE_ARGS%`) do (
endlocal
set "VCINSTALLDIR=%%i\VC\"
set "VS150COMNTOOLS=%%i\Common7\Tools\"
- exit /B 0)
+ exit /B 0
+)
+
+:no-vswhere
+endlocal
+echo could not find "vswhere"
+exit /B 1