|
1 | 1 | :: Copyright 2017 - Refael Ackermann
|
2 | 2 | :: Distributed under MIT style license
|
3 | 3 | :: See accompanying file LICENSE at https://github.com/node4good/windows-autoconf
|
4 |
| -:: version: 1.14.0 |
| 4 | +:: version: 2.0.0 |
5 | 5 |
|
6 | 6 | @if not defined DEBUG_HELPER @ECHO OFF
|
7 | 7 | setlocal
|
| 8 | +if "%~1"=="prerelease" set VSWHERE_WITH_PRERELEASE=1 |
| 9 | +set "InstallerPath=%ProgramFiles(x86)%\Microsoft Visual Studio\Installer" |
| 10 | +if not exist "%InstallerPath%" set "InstallerPath=%ProgramFiles%\Microsoft Visual Studio\Installer" |
| 11 | +if not exist "%InstallerPath%" goto :no-vswhere |
| 12 | +:: Manipulate %Path% for easier " handeling |
| 13 | +set "Path=%Path%;%InstallerPath%" |
| 14 | +where vswhere 2> nul > nul |
| 15 | +if errorlevel 1 goto :no-vswhere |
8 | 16 | set VSWHERE_REQ=-requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64
|
9 | 17 | set VSWHERE_PRP=-property installationPath
|
10 | 18 | set VSWHERE_LMT=-version "[15.0,16.0)"
|
| 19 | +vswhere -prerelease > nul |
| 20 | +if not errorlevel 1 if "%VSWHERE_WITH_PRERELEASE%"=="1" set "VSWHERE_LMT=%VSWHERE_LMT% -prerelease" |
11 | 21 | SET VSWHERE_ARGS=-latest -products * %VSWHERE_REQ% %VSWHERE_PRP% %VSWHERE_LMT%
|
12 |
| -set "VSWHERE=%ProgramFiles(x86)%\Microsoft Visual Studio\Installer" |
13 |
| -if not exist "%VSWHERE%" set "VSWHERE=%ProgramFiles%\Microsoft Visual Studio\Installer" |
14 |
| -if not exist "%VSWHERE%" exit /B 1 |
15 |
| -set Path=%Path%;%VSWHERE% |
16 | 22 | for /f "usebackq tokens=*" %%i in (`vswhere %VSWHERE_ARGS%`) do (
|
17 | 23 | endlocal
|
18 | 24 | set "VCINSTALLDIR=%%i\VC\"
|
19 | 25 | set "VS150COMNTOOLS=%%i\Common7\Tools\"
|
20 |
| - exit /B 0) |
| 26 | + exit /B 0 |
| 27 | +) |
| 28 | + |
| 29 | +:no-vswhere |
| 30 | +endlocal |
| 31 | +echo could not find "vswhere" |
| 32 | +exit /B 1 |
0 commit comments