1 # http://www.appveyor.com/docs/appveyor-yml
3 # To setup AppVeyor for your own personal repositories do the following:
6 # - Select Git and fill in the Git clone URL
7 # - Setup a Git hook as explained in
8 # https://github.com/appveyor/webhooks#installing-git-hook
9 # - Check 'Settings > General > Skip branches without appveyor.yml'
10 # - Check 'Settings > General > Rolling builds'
11 # - Setup the global or project notifications to your liking
13 # Note that kicking (or restarting) a build via the web UI will not work, as it
14 # will fail to find appveyor.yml . The Git hook is the most practical way to
18 # - http://help.appveyor.com/discussions/problems/2209-node-grunt-build-specify-a-project-or-solution-file-the-directory-does-not-contain-a-project-or-solution-file
19 # - http://help.appveyor.com/discussions/questions/1184-build-config-vs-appveyoryaml
27 # Don't download the full Mesa history to speed up cloning. However the clone
28 # depth must not be too small, otherwise builds might fail when lots of patches
29 # are committed in succession, because the desired commit is not found on the
33 # - https://www.appveyor.com/blog/2014/06/04/shallow-clone-for-git-repositories
37 - win_flex_bison-2.5.9.zip
38 - llvm-3.3.1-msvc2015-mtd.7z
40 os: Visual Studio 2015
43 WINFLEXBISON_ARCHIVE: win_flex_bison-2.5.9.zip
44 LLVM_ARCHIVE: llvm-3.3.1-msvc2015-mtd.7z
49 - python -m pip --version
51 - python -m pip install Mako==1.0.6
52 # Install pywin32 extensions, needed by SCons
53 - python -m pip install pypiwin32
54 # Install python wheels, necessary to install SCons via pip
55 - python -m pip install wheel
57 - python -m pip install scons==2.5.1
60 - if not exist "%WINFLEXBISON_ARCHIVE%" appveyor DownloadFile "https://downloads.sourceforge.net/project/winflexbison/old_versions/%WINFLEXBISON_ARCHIVE%"
61 - 7z x -y -owinflexbison\ "%WINFLEXBISON_ARCHIVE%" > nul
62 - set Path=%CD%\winflexbison;%Path%
65 # Download and extract LLVM
66 - if not exist "%LLVM_ARCHIVE%" appveyor DownloadFile "https://people.freedesktop.org/~jrfonseca/llvm/%LLVM_ARCHIVE%"
67 - 7z x -y "%LLVM_ARCHIVE%" > nul
72 - scons -j%NUMBER_OF_PROCESSORS% MSVC_VERSION=14.0 llvm=1
75 - scons -j%NUMBER_OF_PROCESSORS% MSVC_VERSION=14.0 llvm=1 check
78 # It's possible to setup notification here, as described in
79 # http://www.appveyor.com/docs/notifications#appveyor-yml-configuration , but
80 # doing so would cause the notification settings to be replicated across all
81 # repos, which is most likely undesired. So it's better to rely on the
82 # Appveyor global/project notification settings.