mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Rework mach.bat to support VS2019 and user-supplied environments.
As a bonus, use setlocal to avoid environment pollution.
This commit is contained in:
parent
e1eb36050e
commit
903729159e
1 changed files with 31 additions and 10 deletions
41
mach.bat
41
mach.bat
|
@ -1,5 +1,11 @@
|
||||||
@echo off
|
@echo off
|
||||||
|
|
||||||
|
setlocal
|
||||||
|
|
||||||
|
if EXIST "%VCINSTALLDIR%" (
|
||||||
|
GOTO mach
|
||||||
|
)
|
||||||
|
|
||||||
pushd .
|
pushd .
|
||||||
|
|
||||||
IF EXIST "%ProgramFiles(x86)%" (
|
IF EXIST "%ProgramFiles(x86)%" (
|
||||||
|
@ -8,37 +14,52 @@ IF EXIST "%ProgramFiles(x86)%" (
|
||||||
set "ProgramFiles32=%ProgramFiles%"
|
set "ProgramFiles32=%ProgramFiles%"
|
||||||
)
|
)
|
||||||
|
|
||||||
set VC14VARS=%VS140COMNTOOLS%..\..\VC\vcvarsall.bat
|
for %%v in (2019 2017) do (
|
||||||
IF EXIST "%VC14VARS%" (
|
|
||||||
set "VS_VCVARS=%VC14VARS%"
|
|
||||||
) ELSE (
|
|
||||||
for %%e in (Enterprise Professional Community BuildTools) do (
|
for %%e in (Enterprise Professional Community BuildTools) do (
|
||||||
IF EXIST "%ProgramFiles32%\Microsoft Visual Studio\2017\%%e\VC\Auxiliary\Build\vcvarsall.bat" (
|
IF EXIST "%ProgramFiles32%\Microsoft Visual Studio\%%v\%%e\VC\Auxiliary\Build\vcvarsall.bat" (
|
||||||
set "VS_VCVARS=%ProgramFiles32%\Microsoft Visual Studio\2017\%%e\VC\Auxiliary\Build\vcvarsall.bat"
|
set "VS_VCVARS=%ProgramFiles32%\Microsoft Visual Studio\%%v\%%e\VC\Auxiliary\Build\vcvarsall.bat"
|
||||||
|
GOTO vcvars
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
set VC14VARS=%VS140COMNTOOLS%..\..\VC\vcvarsall.bat
|
||||||
|
IF EXIST "%VC14VARS%" (
|
||||||
|
set "VS_VCVARS=%VC14VARS%"
|
||||||
|
)
|
||||||
|
|
||||||
|
:vcvars
|
||||||
IF EXIST "%VS_VCVARS%" (
|
IF EXIST "%VS_VCVARS%" (
|
||||||
IF NOT DEFINED Platform (
|
IF NOT DEFINED Platform (
|
||||||
IF EXIST "%ProgramFiles(x86)%" (
|
IF EXIST "%ProgramFiles(x86)%" (
|
||||||
call "%VS_VCVARS%" x64
|
call "%VS_VCVARS%" x64
|
||||||
) ELSE (
|
) ELSE (
|
||||||
ECHO 32-bit Windows is currently unsupported.
|
ECHO 32-bit Windows is currently unsupported.
|
||||||
EXIT /B 1
|
GOTO bad_exit
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
) ELSE (
|
) ELSE (
|
||||||
ECHO Visual Studio 2015 or 2017 is not installed.
|
ECHO Visual Studio 2015, 2017, or 2019 is not installed.
|
||||||
ECHO Download and install Visual Studio 2015 or 2017 from https://www.visualstudio.com/
|
ECHO Download and install Visual Studio from https://www.visualstudio.com/
|
||||||
EXIT /B 1
|
GOTO bad_exit
|
||||||
)
|
)
|
||||||
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
|
:mach
|
||||||
where /Q py.exe
|
where /Q py.exe
|
||||||
IF %ERRORLEVEL% NEQ 0 (
|
IF %ERRORLEVEL% NEQ 0 (
|
||||||
python mach %*
|
python mach %*
|
||||||
) ELSE (
|
) ELSE (
|
||||||
py -2 mach %*
|
py -2 mach %*
|
||||||
)
|
)
|
||||||
|
|
||||||
|
GOTO exit
|
||||||
|
|
||||||
|
:bad_exit
|
||||||
|
endlocal
|
||||||
|
EXIT /B 1
|
||||||
|
|
||||||
|
:exit
|
||||||
|
endlocal
|
||||||
|
exit /B
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue