comparison src/msvc-latest.bat @ 30385:54dda39c5bb3 v9.0.0528

patch 9.0.0528: MS-Windows: no batch files for more recent MSVC versions Commit: https://github.com/vim/vim/commit/c3430cb583ff05722e33195e4818c88a59bb2fee Author: K.Takata <kentkt@csc.jp> Date: Wed Sep 21 11:56:41 2022 +0100 patch 9.0.0528: MS-Windows: no batch files for more recent MSVC versions Problem: MS-Windows: no batch files for more recent MSVC versions. Solution: Add batch files for 2017, 2019 and 2022. (Ken Takata, closes #11184)
author Bram Moolenaar <Bram@vim.org>
date Wed, 21 Sep 2022 13:00:03 +0200
parents
children
comparison
equal deleted inserted replaced
30384:841afbdd1981 30385:54dda39c5bb3
1 @echo off
2 rem To be used on MS-Windows for Visual C++ 2017 or later.
3 rem See INSTALLpc.txt for information.
4 rem
5 rem Usage:
6 rem For x86 builds run this with "x86" option:
7 rem msvc-latest x86
8 rem For x64 builds run this with "x86_amd64" option or "x64" option:
9 rem msvc-latest x86_amd64
10 rem msvc-latest x64
11 rem
12 rem Optional environment variables:
13 rem VSWHERE:
14 rem Full path to vswhere.exe.
15 rem VSVEROPT:
16 rem Option to search specific version of Visual Studio.
17 rem Default: -latest
18 rem To search VS2017:
19 rem set "VSVEROPT=-version [15.0^,16.0^)"
20 rem To search VS2019:
21 rem set "VSVEROPT=-version [16.0^,17.0^)"
22 rem To search VS2022:
23 rem set "VSVEROPT=-version [17.0^,18.0^)"
24
25 if "%VSWHERE%"=="" (
26 set "VSWHERE=%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe"
27 set VSWHERE_SET=yes
28 )
29 if not exist "%VSWHERE%" (
30 echo Error: vswhere not found.
31 set VSWHERE=
32 set VSWHERE_SET=
33 exit /b 1
34 )
35
36 if "%VSVEROPT%"=="" (
37 set VSVEROPT=-latest
38 set VSVEROPT_SET=yes
39 )
40
41 rem Search Visual Studio Community, Professional or above.
42 for /f "usebackq tokens=*" %%i in (`"%VSWHERE%" %VSVEROPT% -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath`) do (
43 set InstallDir=%%i
44 )
45 if exist "%InstallDir%\VC\Auxiliary\Build\vcvarsall.bat" (
46 call "%InstallDir%\VC\Auxiliary\Build\vcvarsall.bat" %*
47 goto done
48 )
49
50 rem Search Visual Studio 2017 Express.
51 rem (Visual Studio 2017 Express uses different component IDs.)
52 for /f "usebackq tokens=*" %%i in (`"%VSWHERE%" %VSVEROPT% -products Microsoft.VisualStudio.Product.WDExpress -property installationPath`) do (
53 set InstallDir=%%i
54 )
55 if exist "%InstallDir%\VC\Auxiliary\Build\vcvarsall.bat" (
56 call "%InstallDir%\VC\Auxiliary\Build\vcvarsall.bat" %*
57 ) else (
58 echo Error: vcvarsall.bat not found.
59 rem Set ERRORLEVEL to 1.
60 call
61 )
62
63 :done
64 if "%VSWHERE_SET%"=="yes" (
65 set VSWHERE=
66 set VSWHERE_SET=
67 )
68 if "%VSVEROPT_SET%"=="yes" (
69 set VSVEROPT=
70 set VSVEROPT_SET=
71 )
72 set InstallDir=