1if "%APPVEYOR_BUILD_WORKER_IMAGE%" == "Visual Studio 2019" call "C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Auxiliary/Build/vcvarsall.bat" x64 || exit /b
2if "%APPVEYOR_BUILD_WORKER_IMAGE%" == "Visual Studio 2017" call "C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Auxiliary/Build/vcvarsall.bat" x64 || exit /b
3if "%APPVEYOR_BUILD_WORKER_IMAGE%" == "Visual Studio 2015" call "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/vcvarsall.bat" x64 || exit /b
4set PATH=%APPVEYOR_BUILD_FOLDER%\deps\bin;%PATH%
5
6rem Build Bullet
7IF NOT EXIST %APPVEYOR_BUILD_FOLDER%\2.86.1.zip appveyor DownloadFile https://github.com/bulletphysics/bullet3/archive/2.86.1.zip || exit /b
87z x 2.86.1.zip || exit /b
9cd bullet3-2.86.1 || exit /b
10mkdir build && cd build || exit /b
11cmake .. ^
12    -DCMAKE_INSTALL_PREFIX=%APPVEYOR_BUILD_FOLDER%/bullet ^
13    -DCMAKE_BUILD_TYPE=Release ^
14    -DUSE_GRAPHICAL_BENCHMARK=OFF ^
15    -DBUILD_CPU_DEMOS=OFF ^
16    -DBUILD_BULLET2_DEMOS=OFF ^
17    -DBUILD_BULLET3=OFF ^
18    -DBUILD_EXTRAS=OFF ^
19    -DBUILD_OPENGL3_DEMOS=OFF ^
20    -DINSTALL_LIBS=ON ^
21    -DBUILD_UNIT_TESTS=OFF ^
22    -DUSE_MSVC_RUNTIME_LIBRARY_DLL=ON ^
23    -G Ninja || exit /b
24cmake --build . --target install || exit /b
25cd .. && cd ..
26
27rem Build Corrade
28git clone --depth 1 git://github.com/mosra/corrade.git || exit /b
29cd corrade || exit /b
30mkdir build && cd build || exit /b
31cmake .. ^
32    -DCMAKE_BUILD_TYPE=Release ^
33    -DCMAKE_INSTALL_PREFIX=%APPVEYOR_BUILD_FOLDER%/deps ^
34    -DWITH_INTERCONNECT=ON ^
35    -DWITH_TESTSUITE=OFF ^
36    -G Ninja || exit /b
37cmake --build . || exit /b
38cmake --build . --target install || exit /b
39cd .. && cd ..
40
41rem Build Magnum
42git clone --depth 1 git://github.com/mosra/magnum.git || exit /b
43cd magnum || exit /b
44mkdir build && cd build || exit /b
45cmake .. ^
46    -DCMAKE_BUILD_TYPE=Release ^
47    -DCMAKE_INSTALL_PREFIX=%APPVEYOR_BUILD_FOLDER%/deps ^
48    -DCMAKE_PREFIX_PATH="%APPVEYOR_BUILD_FOLDER%/SDL;%APPVEYOR_BUILD_FOLDER%/openal" ^
49    -DWITH_AUDIO=ON ^
50    -DWITH_DEBUGTOOLS=ON ^
51    -DWITH_MESHTOOLS=ON ^
52    -DWITH_PRIMITIVES=ON ^
53    -DWITH_SCENEGRAPH=ON ^
54    -DWITH_SHADERS=ON ^
55    -DWITH_TEXT=ON ^
56    -DWITH_TEXTURETOOLS=ON ^
57    -DWITH_TRADE=ON ^
58    -DWITH_SDL2APPLICATION=ON ^
59    -DWITH_WGLCONTEXT=ON ^
60    -G Ninja || exit /b
61cmake --build . || exit /b
62cmake --build . --target install || exit /b
63cd .. && cd ..
64
65rem Build Magnum Integration
66git clone --depth 1 git://github.com/mosra/magnum-integration.git || exit /b
67cd magnum-integration || exit /b
68mkdir build && cd build || exit /b
69cmake .. ^
70    -DCMAKE_BUILD_TYPE=Release ^
71    -DCMAKE_INSTALL_PREFIX=%APPVEYOR_BUILD_FOLDER%/deps ^
72    -DCMAKE_PREFIX_PATH=%APPVEYOR_BUILD_FOLDER%/bullet ^
73    -DIMGUI_DIR=%APPVEYOR_BUILD_FOLDER%/deps/imgui ^
74    -DWITH_BULLET=ON ^
75    -DWITH_DART=OFF ^
76    -DWITH_IMGUI=ON ^
77    -DWITH_OVR=ON ^
78    -G Ninja || exit /b
79cmake --build . || exit /b
80cmake --build . --target install || exit /b
81cd .. && cd ..
82
83rem Build Magnum Extras
84git clone --depth 1 git://github.com/mosra/magnum-extras.git || exit /b
85cd magnum-extras || exit /b
86mkdir build && cd build || exit /b
87cmake .. ^
88    -DCMAKE_BUILD_TYPE=Release ^
89    -DCMAKE_INSTALL_PREFIX=%APPVEYOR_BUILD_FOLDER%/deps ^
90    -DWITH_UI=ON ^
91    -G Ninja || exit /b
92cmake --build . || exit /b
93cmake --build . --target install || exit /b
94cd .. && cd ..
95
96rem Build
97mkdir build && cd build || exit /b
98cmake .. ^
99    -DCMAKE_BUILD_TYPE=Release ^
100    -DCMAKE_PREFIX_PATH="%APPVEYOR_BUILD_FOLDER%/deps;%APPVEYOR_BUILD_FOLDER%/SDL;%APPVEYOR_BUILD_FOLDER%/openal;%APPVEYOR_BUILD_FOLDER%/bullet" ^
101    -DIMGUI_DIR=%APPVEYOR_BUILD_FOLDER%/deps/imgui ^
102    -DWITH_AREALIGHTS_EXAMPLE=ON ^
103    -DWITH_AUDIO_EXAMPLE=ON ^
104    -DWITH_BOX2D_EXAMPLE=OFF ^
105    -DWITH_BULLET_EXAMPLE=ON ^
106    -DWITH_CUBEMAP_EXAMPLE=ON ^
107    -DWITH_DART_EXAMPLE=OFF ^
108    -DWITH_IMGUI_EXAMPLE=ON ^
109    -DWITH_MOTIONBLUR_EXAMPLE=ON ^
110    -DWITH_MOUSEINTERACTION_EXAMPLE=ON ^
111    -DWITH_OVR_EXAMPLE=ON ^
112    -DWITH_PICKING_EXAMPLE=ON ^
113    -DWITH_PRIMITIVES_EXAMPLE=ON ^
114    -DWITH_SHADOWS_EXAMPLE=ON ^
115    -DWITH_TEXT_EXAMPLE=ON ^
116    -DWITH_TEXTUREDTRIANGLE_EXAMPLE=ON ^
117    -DWITH_TRIANGLE_EXAMPLE=ON ^
118    -DWITH_TRIANGLE_PLAIN_GLFW_EXAMPLE=ON ^
119    -DWITH_TRIANGLE_SOKOL_EXAMPLE=OFF ^
120    -DWITH_VIEWER_EXAMPLE=ON ^
121    -G Ninja || exit /b
122cmake --build . || exit /b
123