Fix generation of Vim syntax file
[platform/upstream/SPIRV-Tools.git] / .appveyor.yml
1 # Windows Build Configuration for AppVeyor
2 # http://www.appveyor.com/docs/appveyor-yml
3
4 # version format
5 version: "{build}"
6
7 # The most recent compiler gives the most interesting new results.
8 # Put it first so we get its feedback first.
9 os:
10   - Visual Studio 2017
11   - Visual Studio 2015
12   - Visual Studio 2013
13
14 platform:
15   - x64
16
17 configuration:
18   - Debug
19   - Release
20
21 branches:
22   only:
23     - master
24
25 # Travis advances the master-tot tag to current top of the tree after
26 # each push into the master branch, because it relies on that tag to
27 # upload build artifacts to the master-tot release. This will cause
28 # double testing for each push on Appveyor: one for the push, one for
29 # the tag advance. Disable testing tags.
30 skip_tags: true
31
32 clone_depth: 1
33
34 matrix:
35   fast_finish: true # Show final status immediately if a test fails.
36   exclude:
37     - os: Visual Studio 2015
38       configuration: Debug
39     - os: Visual Studio 2013
40       configuration: Debug
41
42 # scripts that run after cloning repository
43 install:
44   # Install ninja
45   - set NINJA_URL="https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-win.zip"
46   - appveyor DownloadFile %NINJA_URL% -FileName ninja.zip
47   - 7z x ninja.zip -oC:\ninja > nul
48   - set PATH=C:\ninja;%PATH%
49
50 before_build:
51   - git clone --depth=1 https://github.com/KhronosGroup/SPIRV-Headers.git external/spirv-headers
52   - git clone --depth=1 https://github.com/google/googletest.git external/googletest
53   - git clone --depth=1 https://github.com/google/effcee.git external/effcee
54   - git clone --depth=1 https://github.com/google/re2.git external/re2
55   # Set path and environment variables for the current Visual Studio version
56   - if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2013" (call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86_amd64)
57   - if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2015" (call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64)
58   - if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2017" (call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" x86_amd64)
59
60 build:
61   parallel: true  # enable MSBuild parallel builds
62   verbosity: minimal
63
64 build_script:
65   - mkdir build && cd build
66   - cmake -GNinja -DSPIRV_BUILD_COMPRESSION=ON -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DCMAKE_INSTALL_PREFIX=install -DRE2_BUILD_TESTING=OFF ..
67   - ninja install
68
69 test_script:
70   - ctest -C %CONFIGURATION% --output-on-failure --timeout 300
71
72 after_test:
73   # Zip build artifacts for uploading and deploying
74   - cd install
75   - 7z a SPIRV-Tools-master-windows-"%PLATFORM%"-"%CONFIGURATION%".zip *\*
76
77 artifacts:
78   - path: build\install\*.zip
79     name: artifacts-zip
80
81 deploy:
82   - provider: GitHub
83     auth_token:
84       secure: TMfcScKzzFIm1YgeV/PwCRXFDCw8Xm0wY2Vb2FU6WKlbzb5eUITTpr6I5vHPnAxS
85     release: master-tot
86     description: "Continuous build of the latest master branch by Appveyor and Travis CI"
87     artifact: artifacts-zip
88     draft: false
89     prerelease: false
90     force_update: true
91     on:
92       branch: master
93       APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017