|
|
@ -22,15 +22,38 @@ REM verbose, sorry. |
|
|
|
|
|
|
|
REM To skip to the actual building part of the script, search for ":BUILD" |
|
|
|
|
|
|
|
REM Checks if cl is available and skips to the argument loop if it is |
|
|
|
REM (Prevents calling vcvarsall every time you run this script) |
|
|
|
WHERE cl >nul 2>nul |
|
|
|
IF %ERRORLEVEL% == 0 goto READ_ARGS |
|
|
|
REM Activate the msvc build environment if cl isn't available yet |
|
|
|
IF EXIST "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" ( |
|
|
|
set VC_INIT="C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" |
|
|
|
) ELSE IF EXIST "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" ( |
|
|
|
set VC_INIT="C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" |
|
|
|
) ELSE IF EXIST "C:\Program Files (x86)\Microsoft Visual C++ Build Tools\vcbuildtools.bat" ( |
|
|
|
set VC_INIT="C:\Program Files (x86)\Microsoft Visual C++ Build Tools\vcbuildtools.bat" |
|
|
|
) ELSE ( |
|
|
|
REM Initialize your vc environment here if the defaults don't work |
|
|
|
REM set VC_INIT="C:\your\path\here\vcvarsall.bat" |
|
|
|
REM And then remove/comment out the following two lines |
|
|
|
echo "Couldn't find vcvarsall.bat or vcbuildtools.bat, please set it manually." |
|
|
|
exit /B |
|
|
|
) |
|
|
|
echo Setting up the msvc build environment, this could take some time but the next builds should be faster |
|
|
|
REM Remove everything after %TARGET_PLATFORM% if you want to see |
|
|
|
REM the vcvarsall.bat or vcbuildtools.bat output |
|
|
|
call %VC_INIT% %TARGET_PLATFORM% > NUL 2>&1 |
|
|
|
|
|
|
|
:READ_ARGS |
|
|
|
REM For the ! variable notation |
|
|
|
setlocal EnableDelayedExpansion |
|
|
|
REM For shifting, which the command line argument parsing needs |
|
|
|
setlocal EnableExtensions |
|
|
|
|
|
|
|
|
|
|
|
:ARG_LOOP |
|
|
|
set ARG=%1 |
|
|
|
if "!ARG!" == "" ( goto PREPARE ) |
|
|
|
if "!ARG!" == "" ( goto BUILD ) |
|
|
|
IF NOT "x!ARG!" == "x!ARG:h=!" ( |
|
|
|
goto HELP |
|
|
|
) |
|
|
@ -91,28 +114,6 @@ echo Build in debug, run, don't print at all: build-windows.bat -drqq |
|
|
|
exit /B |
|
|
|
|
|
|
|
|
|
|
|
:PREPARE |
|
|
|
REM Activate the msvc build environment |
|
|
|
IF EXIST "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" ( |
|
|
|
set VC_INIT="C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" |
|
|
|
) ELSE IF EXIST "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" ( |
|
|
|
set VC_INIT="C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" |
|
|
|
) ELSE IF EXIST "C:\Program Files (x86)\Microsoft Visual C++ Build Tools\vcbuildtools.bat" ( |
|
|
|
set VC_INIT="C:\Program Files (x86)\Microsoft Visual C++ Build Tools\vcbuildtools.bat" |
|
|
|
) ELSE ( |
|
|
|
REM Initialize your vc environment here if the defaults don't work |
|
|
|
REM set VC_INIT="C:\your\path\here\vcvarsall.bat" |
|
|
|
REM And then remove/comment out the following two lines |
|
|
|
echo "Couldn't find vcvarsall.bat or vcbuildtools.bat, please set it manually." |
|
|
|
exit /B |
|
|
|
) |
|
|
|
IF DEFINED VERBOSE ( |
|
|
|
call !VC_INIT! !TARGET_PLATFORM! |
|
|
|
) ELSE ( |
|
|
|
call !VC_INIT! !TARGET_PLATFORM! > NUL 2>&1 |
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
:BUILD |
|
|
|
REM Directories |
|
|
|
set "ROOT_DIR=%CD%" |
|
|
|