mirror of
https://github.com/vcmi/vcmi.git
synced 2024-12-22 22:13:35 +02:00
104 lines
2.1 KiB
Batchfile
104 lines
2.1 KiB
Batchfile
|
@echo off
|
||
|
setlocal EnableDelayedExpansion
|
||
|
set argc=0
|
||
|
set valid="no"
|
||
|
|
||
|
for %%a in (%*) do (
|
||
|
set /A argc+=1
|
||
|
if /I "%%a"=="help" (
|
||
|
call:usage
|
||
|
goto:eof
|
||
|
)
|
||
|
if /I "%%a"=="all" set valid="yes"
|
||
|
if /I "%%a"=="release" set valid="yes"
|
||
|
if /I "%%a"=="debug" set valid="yes"
|
||
|
if /I "%%a"=="clean" set valid="yes"
|
||
|
|
||
|
if !valid!=="no" (
|
||
|
echo Invalid option: %%a
|
||
|
call:usage
|
||
|
goto:eof
|
||
|
)
|
||
|
)
|
||
|
|
||
|
if %argc%==0 echo Building schedule: all
|
||
|
if not %argc%==0 echo Building schedule: %*
|
||
|
echo Starting in 3 seconds...
|
||
|
ping 1.1.1.1 -n 1 -w 3000 > nul
|
||
|
rem sleep 3 ::This function makes command line DOS-esque C:\Archiv~1
|
||
|
|
||
|
if %argc%==0 (call:all)
|
||
|
|
||
|
for %%a in (%*) do (call:%%a)
|
||
|
|
||
|
goto:eof
|
||
|
|
||
|
:debug
|
||
|
echo.
|
||
|
echo.
|
||
|
echo ****************************************
|
||
|
echo STARTING: debug
|
||
|
|
||
|
if not exist debug mkdir debug
|
||
|
cd debug
|
||
|
cmake .. -G"NMake Makefiles" -DCMAKE_BUILD_TYPE=Debug -DFL_BACKTRACE=ON -DFL_USE_FLOAT=OFF -DFL_CPP11=OFF
|
||
|
nmake
|
||
|
cd ..
|
||
|
|
||
|
echo.
|
||
|
echo FINISHED: debug
|
||
|
echo ****************************************
|
||
|
goto:eof
|
||
|
|
||
|
:release
|
||
|
echo.
|
||
|
echo.
|
||
|
echo ****************************************
|
||
|
echo STARTING: release
|
||
|
|
||
|
if not exist release mkdir release
|
||
|
cd release
|
||
|
cmake .. -G"NMake Makefiles" -DCMAKE_BUILD_TYPE=Release -DFL_BACKTRACE=OFF -DFL_USE_FLOAT=OFF -DFL_CPP11=OFF
|
||
|
nmake
|
||
|
cd ..
|
||
|
|
||
|
echo.
|
||
|
echo FINISHED: release
|
||
|
echo ****************************************
|
||
|
goto:eof
|
||
|
|
||
|
:all
|
||
|
echo.
|
||
|
echo.
|
||
|
echo ****************************************
|
||
|
echo STARTING: all
|
||
|
call:debug
|
||
|
call:release
|
||
|
echo.
|
||
|
echo FINISHED: all
|
||
|
echo ****************************************
|
||
|
goto:eof
|
||
|
|
||
|
:clean
|
||
|
echo.
|
||
|
echo.
|
||
|
echo ****************************************
|
||
|
echo STARTING: clean
|
||
|
if exist debug rmdir /S /Q debug
|
||
|
if exist release rmdir /S /Q release
|
||
|
echo.
|
||
|
echo FINISHED: clean
|
||
|
echo ****************************************
|
||
|
goto:eof
|
||
|
|
||
|
:usage
|
||
|
echo Usage: build.bat [options]
|
||
|
echo where [options] can be any of the following:
|
||
|
echo ^ all builds fuzzylite in debug and release mode (default)
|
||
|
echo ^ debug builds fuzzylite in debug mode
|
||
|
echo ^ release builds fuzzylite in release mode
|
||
|
echo ^ clean erases previous builds
|
||
|
echo ^ help shows this information
|
||
|
echo.
|
||
|
|
||
|
ENDLOCAL
|