Browse Source

Use Microsoft "best practices" for using `vswhere`

See https://github.com/microsoft/vswhere/wiki/Find-VC for more details.
G'lek Tarssza 4 months ago
parent
commit
b9aa51849b
1 changed files with 4 additions and 4 deletions
  1. 4 4
      build.bat

+ 4 - 4
build.bat

@@ -4,12 +4,12 @@ setlocal EnableDelayedExpansion
 
 
 where /Q cl.exe || (
 where /Q cl.exe || (
 	set __VSCMD_ARG_NO_LOGO=1
 	set __VSCMD_ARG_NO_LOGO=1
-	for /f "tokens=*" %%i in ('"C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe" -latest -requires Microsoft.VisualStudio.Workload.NativeDesktop -property installationPath') do set VS=%%i
+	for /f "tokens=*" %%i in ('"C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe" -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath') do set VS=%%i
 	if "!VS!" equ "" (
 	if "!VS!" equ "" (
-		echo ERROR: Visual Studio installation not found
+		echo ERROR: MSVC installation not found
 		exit /b 1
 		exit /b 1
 	)
 	)
-	call "!VS!\VC\Auxiliary\Build\vcvarsall.bat" amd64 || exit /b 1
+	call "!VS!\Common7\Tools\vsdevcmd.bat" -arch=x64 -host_arch=x64 || exit /b 1
 )
 )
 
 
 if "%VSCMD_ARG_TGT_ARCH%" neq "x64" (
 if "%VSCMD_ARG_TGT_ARCH%" neq "x64" (
@@ -152,4 +152,4 @@ if %release_mode% EQU 0 echo: & echo Debug compiler built. Note: run "build.bat
 
 
 del *.obj > NUL 2> NUL
 del *.obj > NUL 2> NUL
 
 
-:end_of_build
+:end_of_build