MakeWindows.bat 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. @echo off
  2. :: usage: "MakeWindows.bat x64|x86 Release|Debug 2015|2017 OpenGL|DirectX"
  3. :: x64 or x86
  4. set "PLATFORM=%~1"
  5. :: Release or Debug
  6. set "CONFIG=%~2"
  7. :: 2015 or 2017
  8. set "VSVER=%~3%"
  9. :: OpenGL or DirectX
  10. set "RENDERER=%~4%"
  11. if "%PLATFORM%" == "" echo ERROR: PLATFORM is not set, example of usage: "MakeWindows.bat x64 Release 2017 OpenGL" && pause && exit /b
  12. if "%CONFIG%" == "" echo ERROR: CONFIG is not set, example of usage: "MakeWindows.bat x64 Release 2017 OpenGL" && pause && exit /b
  13. if "%VSVER%" == "" echo ERROR: VS_VER is not set, example of usage: "MakeWindows.bat x64 Release 2017 OpenGL" && pause && exit /b
  14. if "%VSVER%" == "2015" set "VS_VER=14"
  15. if "%VSVER%" == "2017" set "VS_VER=15"
  16. if "%PLATFORM%" == "x64" (set "TARGET=Visual Studio %VS_VER% Win64") else (set "TARGET=Visual Studio %VS_VER%")
  17. if "%PLATFORM%" == "x64" (set "PLATFORM_SUFFIX=Win64") else (set "PLATFORM_SUFFIX=Win32")
  18. if "%PLATFORM%" == "x64" (set "MONOURHO_PLATFORM=x64") else (set "MONOURHO_PLATFORM=Win32")
  19. if "%CONFIG%" == "Release" (set "CONFIG_SUFFIX=") else (set "CONFIG_SUFFIX=_d")
  20. if "%RENDERER%" == "OpenGL" (set "RENDERER_FLAGS=-DURHO3D_OPENGL=1") else (set "RENDERER_FLAGS=-DURHO3D_OPENGL=0 -DURHO3D_D3D11=1")
  21. if "%RENDERER%" == "OpenGL" (set "RENDERER_SUFFIX=OPENGL") else (set "RENDERER_SUFFIX=D3D11")
  22. if "%RENDERER%" == "OpenGL" (set "MONOURHO_SUFFIX=") else (set "MONOURHO_SUFFIX=D3D")
  23. set "URHO3D_SRC_DIR=Urho3D/Source"
  24. del Urho3D\Urho3D_Windows\CMakeCache.txt 2>NUL
  25. cd %URHO3D_SRC_DIR%
  26. @echo on
  27. cmake -E make_directory ../Urho3D_Windows
  28. cmake -E chdir ../Urho3D_Windows cmake -G "%TARGET%" ../Urho3D_Windows %RENDERER_FLAGS% -DURHO3D_WEBP=0 -DURHO3D_PCH=0 -DURHO3D_LUA=0 -DURHO3D_ANGELSCRIPT=0 -VS=%VS_VER% ../../%URHO3D_SRC_DIR%/
  29. cd ../Urho3D_Windows
  30. cmake --build . --target Urho3D --config %CONFIG%
  31. cmake --build . --target PackageTool --config %CONFIG%
  32. cmake --build . --target AssetImporter --config %CONFIG%
  33. copy lib\Urho3D%CONFIG_SUFFIX%.lib lib\Urho3D%CONFIG_SUFFIX%_%PLATFORM_SUFFIX%_%RENDERER_SUFFIX%.lib /Y
  34. cd ../..
  35. msbuild Urho3D\Urho3D_Windows\MonoUrho.Windows\MonoUrho.Windows%MONOURHO_SUFFIX%.vcxproj /p:Configuration=%CONFIG% /p:Platform=%MONOURHO_PLATFORM%