mirror of
https://github.com/boostorg/build.git
synced 2026-02-14 12:42:11 +00:00
Fixes vswhere lookup during bootstrap for 16.X and 17.X
This commit is contained in:
@@ -1,7 +1,8 @@
|
||||
:: Copyright 2017 - Refael Ackermann
|
||||
:: Copyright 2019 - Thomas Kent
|
||||
:: Distributed under MIT style license
|
||||
:: See accompanying file LICENSE at https://github.com/node4good/windows-autoconf
|
||||
:: version: 1.15.4
|
||||
:: Forked from version: 1.15.4
|
||||
|
||||
@if not defined DEBUG_HELPER @ECHO OFF
|
||||
setlocal
|
||||
@@ -14,19 +15,44 @@ 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
|
||||
|
||||
REM Visual Studio 2017 (15.X, toolset 14.1)
|
||||
set VSWHERE_LMT=-version "[15.0,16.0)"
|
||||
vswhere -prerelease > nul
|
||||
if "%~1"=="prerelase" set VSWHERE_WITH_PRERELASE=1
|
||||
if not errorlevel 1 if "%VSWHERE_WITH_PRERELASE%"=="1" set "VSWHERE_LMT=%VSWHERE_LMT% -prerelease"
|
||||
SET VSWHERE_ARGS=-latest -products * %VSWHERE_REQ% %VSWHERE_PRP% %VSWHERE_LMT%
|
||||
for /f "usebackq tokens=*" %%i in (`vswhere %VSWHERE_ARGS%`) do (
|
||||
endlocal
|
||||
echo Found with vswhere %%i
|
||||
@rem comment out setting VCINSTALLDIR for Boost.build
|
||||
@rem set "VCINSTALLDIR=%%i\VC\"
|
||||
set "VS150COMNTOOLS=%%i\Common7\Tools\"
|
||||
exit /B 0
|
||||
)
|
||||
|
||||
REM Visual Studio 2019 (16.X, toolset 14.2)
|
||||
set VSWHERE_LMT=-version "[16.0,17.0)"
|
||||
SET VSWHERE_ARGS=-latest -products * %VSWHERE_REQ% %VSWHERE_PRP% %VSWHERE_LMT%
|
||||
for /f "usebackq tokens=*" %%i in (`vswhere %VSWHERE_ARGS%`) do (
|
||||
endlocal
|
||||
echo Found with vswhere %%i
|
||||
@rem comment out setting VCINSTALLDIR for Boost.build
|
||||
@rem set "VCINSTALLDIR=%%i\VC\"
|
||||
set "VS160COMNTOOLS=%%i\Common7\Tools\"
|
||||
exit /B 0
|
||||
)
|
||||
|
||||
REM Visual Studio Next (17.X, toolset 14.3???)
|
||||
set VSWHERE_LMT=-version "[17.0,18.0)"
|
||||
set VSWHERE_PRERELEASE=-prerelease
|
||||
SET VSWHERE_ARGS=-latest -products * %VSWHERE_REQ% %VSWHERE_PRP% %VSWHERE_LMT% %VSWHERE_PRERELEASE%
|
||||
for /f "usebackq tokens=*" %%i in (`vswhere %VSWHERE_ARGS%`) do (
|
||||
endlocal
|
||||
echo Found with vswhere %%i
|
||||
@rem comment out setting VCINSTALLDIR for Boost.build
|
||||
@rem set "VCINSTALLDIR=%%i\VC\"
|
||||
set "VS170COMNTOOLS=%%i\Common7\Tools\"
|
||||
exit /B 0
|
||||
)
|
||||
|
||||
:no-vswhere
|
||||
endlocal
|
||||
echo could not find "vswhere"
|
||||
|
||||
Reference in New Issue
Block a user