1 # https://www.appveyor.com/docs/appveyor-yml
3 # To setup AppVeyor for your own personal repositories do the following:
4 # - Go to https://gitlab.freedesktop.org/profile/personal_access_tokens and
5 # create a new token with 'api' and 'read_repository' access.
6 # - Sign up to AppVeyor
9 # - Fill GitLab URL as https://gitlab.freedesktop.org/ and paste the token above.
10 # - Enable for your personal repository.
13 # - https://help.appveyor.com/discussions/questions/1184-build-config-vs-appveyoryaml
21 # Don't download the full Mesa history to speed up cloning. However the clone
22 # depth must not be too small, otherwise builds might fail when lots of patches
23 # are committed in succession, because the desired commit is not found on the
27 # - https://www.appveyor.com/blog/2014/06/04/shallow-clone-for-git-repositories
31 - freeglut-MinGW-3.0.0-1.mp.zip
32 - freeglut-MinGW-3.0.0-2.mp.zip
34 # https://www.appveyor.com/docs/build-environment/#build-worker-images
35 os: Visual Studio 2015
38 PYTHON_HOME: C:\Python36
40 - MINGW_HOME: C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32
41 FREEGLUT_ARCHIVE: freeglut-MinGW-3.0.0-1.mp.zip
42 FREEGLUT_LIB: lib\libfreeglut.a
43 - MINGW_HOME: C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64
44 FREEGLUT_ARCHIVE: freeglut-MinGW-3.0.0-1.mp.zip
45 FREEGLUT_LIB: lib\x64\libfreeglut.a
52 - set Path=%PYTHON_HOME%;%PYTHON_HOME%\Scripts;%Path%
57 - pip install Mako==1.0.6
59 - pip install numpy==1.12.1
66 - if not "%MINGW_HOME%"=="" set Path=%MINGW_HOME%\bin;%Path%
68 - if not exist "%FREEGLUT_ARCHIVE%" appveyor DownloadFile "http://files.transmissionzero.co.uk/software/development/GLUT/%FREEGLUT_ARCHIVE%"
69 - 7z x -y "%FREEGLUT_ARCHIVE%" > nul
72 - appveyor DownloadFile https://www.khronos.org/registry/OpenGL/api/GL/glext.h -FileName glext\GL\glext.h
75 - cmake -H. -Bbuild -G "Ninja" -DGLUT_INCLUDE_DIR=%CD%\freeglut\include -DGLUT_glut_LIBRARY_RELEASE=%CD%\freeglut\%FREEGLUT_LIB% -DGLEXT_INCLUDE_DIR=%CD%\glext
79 # It's possible to setup notification here, as described in
80 # http://www.appveyor.com/docs/notifications#appveyor-yml-configuration , but
81 # doing so would cause the notification settings to be replicated across all
82 # repos, which is most likely undesired. So it's better to rely on the
83 # Appveyor global/project notification settings.