# Windows Build Configuration for AppVeyor # http://www.appveyor.com/docs/appveyor-yml # build version format version: "{build}" os: Visual Studio 2019 platform: - x64 configuration: - Debug - Release branches: only: - main # changes to these files don't need to trigger testing skip_commits: files: - README.md - README-spirv-remap.txt - LICENSE.txt - CODE_OF_CONDUCT.md - BUILD.* - WORKSPACE - kokoro/* - make-revision - Android.mk - _config.yml # Travis advances the main-tot tag to current top of the tree after # each push into the main branch, because it relies on that tag to # upload build artifacts to the main-tot release. This will cause # double testing for each push on Appveyor: one for the push, one for # the tag advance. Disable testing tags. skip_tags: true clone_depth: 5 matrix: fast_finish: true # Show final status immediately if a test fails. # scripts that run after cloning repository install: - C:/Python27/python.exe update_glslang_sources.py - set PATH=C:\ninja;C:\Python36;%PATH% - git clone https://github.com/google/googletest.git External/googletest build: parallel: true # enable MSBuild parallel builds verbosity: minimal build_script: - mkdir build && cd build - cmake -G "Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX=install .. - cmake --build . --config %CONFIGURATION% --target install test_script: - ctest -C %CONFIGURATION% --output-on-failure - cd ../Test && bash runtests - cd ../build after_test: # For debug build, the generated dll has a postfix "d" in its name. - ps: >- If ($env:configuration -Match "Debug") { $env:SUFFIX="d" } Else { $env:SUFFIX="" } - cd install # Zip all glslang artifacts for uploading and deploying - 7z a glslang-main-windows-"%PLATFORM%"-"%CONFIGURATION%".zip bin\glslangValidator.exe bin\spirv-remap.exe include\glslang\* lib\GenericCodeGen%SUFFIX%.lib lib\glslang%SUFFIX%.lib lib\glslang-default-resource-limits%SUFFIX%.lib lib\HLSL%SUFFIX%.lib lib\MachineIndependent%SUFFIX%.lib lib\OGLCompiler%SUFFIX%.lib lib\OSDependent%SUFFIX%.lib lib\SPIRV%SUFFIX%.lib lib\SPVRemapper%SUFFIX%.lib lib\SPIRV-Tools%SUFFIX%.lib lib\SPIRV-Tools-opt%SUFFIX%.lib artifacts: - path: build\install\*.zip name: artifacts-zip deploy: - provider: GitHub auth_token: secure: YglcSYdl0TylEa59H4K6lylBEDr586NAt2EMgZquSo+iuPrwgZQuJLPCoihSm9y6 release: main-tot description: "Continuous build of the latest main branch by Appveyor and Github" artifact: artifacts-zip draft: false prerelease: false force_update: true on: branch: main APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015