blob: bf8c572603506b9dd45ab42a59a0f4381cede0a0 [file] [log] [blame]
Lei Zhangf36d6e32016-05-10 09:55:05 -04001# Windows Build Configuration for AppVeyor
2# http://www.appveyor.com/docs/appveyor-yml
3
4# build version format
5version: "{build}"
6
Ben Claytonc487d0f2020-07-20 16:32:30 +01007os: Visual Studio 2015
Lei Zhangf36d6e32016-05-10 09:55:05 -04008
9platform:
Lei Zhanga7eab9b2017-11-08 17:26:51 -050010 - x64
Lei Zhangf36d6e32016-05-10 09:55:05 -040011
12configuration:
13 - Debug
14 - Release
15
16branches:
17 only:
18 - master
19
John Kessenich3ed344d2020-01-16 00:52:28 -070020# changes to these files don't need to trigger testing
21skip_commits:
22 files:
23 - README.md
24 - README-spirv-remap.txt
25 - LICENSE.txt
26 - CODE_OF_CONDUCT.md
27 - BUILD.*
28 - WORKSPACE
29 - kokoro/*
30 - make-revision
31 - Android.mk
32 - _config.yml
33
Lei Zhang9a65c6a2017-11-14 14:36:22 -050034# Travis advances the master-tot tag to current top of the tree after
35# each push into the master branch, because it relies on that tag to
36# upload build artifacts to the master-tot release. This will cause
37# double testing for each push on Appveyor: one for the push, one for
38# the tag advance. Disable testing tags.
39skip_tags: true
40
Lei Zhangf36d6e32016-05-10 09:55:05 -040041clone_depth: 5
42
43matrix:
44 fast_finish: true # Show final status immediately if a test fails.
45
46# scripts that run after cloning repository
47install:
GregF87fd7422017-09-22 17:21:37 -060048 - C:/Python27/python.exe update_glslang_sources.py
John Kessenich6fef1ca2019-05-09 03:43:26 -060049 - set PATH=C:\ninja;C:\Python36;%PATH%
John Kessenichf0928b32018-10-26 11:28:37 -060050 - git clone https://github.com/google/googletest.git External/googletest
Lei Zhangf36d6e32016-05-10 09:55:05 -040051
52build:
53 parallel: true # enable MSBuild parallel builds
54 verbosity: minimal
55
56build_script:
57 - mkdir build && cd build
Ben Claytonc487d0f2020-07-20 16:32:30 +010058 - cmake -G "Visual Studio 14 2015 Win64" -DCMAKE_INSTALL_PREFIX=install ..
Lei Zhangf36d6e32016-05-10 09:55:05 -040059 - cmake --build . --config %CONFIGURATION% --target install
60
61test_script:
62 - ctest -C %CONFIGURATION% --output-on-failure
63 - cd ../Test && bash runtests
Lei Zhanga7eab9b2017-11-08 17:26:51 -050064 - cd ../build
65
66after_test:
67 # For debug build, the generated dll has a postfix "d" in its name.
68 - ps: >-
69 If ($env:configuration -Match "Debug") {
70 $env:SUFFIX="d"
71 } Else {
72 $env:SUFFIX=""
73 }
74 - cd install
75 # Zip all glslang artifacts for uploading and deploying
76 - 7z a glslang-master-windows-"%PLATFORM%"-"%CONFIGURATION%".zip
77 bin\glslangValidator.exe
Tim Jones9177e052018-06-27 17:31:19 +080078 bin\spirv-remap.exe
Lei Zhanga7eab9b2017-11-08 17:26:51 -050079 include\glslang\*
Greg Fischer34068572021-05-26 16:14:23 -060080 lib\GenericCodeGen%SUFFIX%.lib
Lei Zhanga7eab9b2017-11-08 17:26:51 -050081 lib\glslang%SUFFIX%.lib
Greg Fischer34068572021-05-26 16:14:23 -060082 lib\glslang-default-resource-limits%SUFFIX%.lib
Lei Zhanga7eab9b2017-11-08 17:26:51 -050083 lib\HLSL%SUFFIX%.lib
Greg Fischer34068572021-05-26 16:14:23 -060084 lib\MachineIndependent%SUFFIX%.lib
Lei Zhanga7eab9b2017-11-08 17:26:51 -050085 lib\OGLCompiler%SUFFIX%.lib
86 lib\OSDependent%SUFFIX%.lib
87 lib\SPIRV%SUFFIX%.lib
88 lib\SPVRemapper%SUFFIX%.lib
89 lib\SPIRV-Tools%SUFFIX%.lib
90 lib\SPIRV-Tools-opt%SUFFIX%.lib
91
92artifacts:
93 - path: build\install\*.zip
94 name: artifacts-zip
95
96deploy:
97 - provider: GitHub
98 auth_token:
99 secure: YglcSYdl0TylEa59H4K6lylBEDr586NAt2EMgZquSo+iuPrwgZQuJLPCoihSm9y6
100 release: master-tot
101 description: "Continuous build of the latest master branch by Appveyor and Travis CI"
102 artifact: artifacts-zip
103 draft: false
104 prerelease: false
105 force_update: true
106 on:
107 branch: master
Ben Claytonc487d0f2020-07-20 16:32:30 +0100108 APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015