mirror of
https://github.com/KhronosGroup/SPIRV-Tools
synced 2024-11-27 05:40:06 +00:00
059fe0822a
VS 2017 is the newest compiler, with the most interesting feedback. Place it first so we get its feedback first.
94 lines
3.0 KiB
YAML
94 lines
3.0 KiB
YAML
# Windows Build Configuration for AppVeyor
|
|
# http://www.appveyor.com/docs/appveyor-yml
|
|
|
|
# version format
|
|
version: "{build}"
|
|
|
|
# The most recent compiler gives the most interesting new results.
|
|
# Put it first so we get its feedback first.
|
|
os:
|
|
- Visual Studio 2017
|
|
- Visual Studio 2015
|
|
- Visual Studio 2013
|
|
|
|
platform:
|
|
- x64
|
|
|
|
configuration:
|
|
- Debug
|
|
- Release
|
|
|
|
branches:
|
|
only:
|
|
- master
|
|
|
|
# Travis advances the master-tot tag to current top of the tree after
|
|
# each push into the master branch, because it relies on that tag to
|
|
# upload build artifacts to the master-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: 1
|
|
|
|
matrix:
|
|
fast_finish: true # Show final status immediately if a test fails.
|
|
exclude:
|
|
- os: Visual Studio 2013
|
|
configuration: Debug
|
|
- os: Visual Studio 2015
|
|
configuration: Debug
|
|
|
|
# scripts that run after cloning repository
|
|
install:
|
|
# Install ninja
|
|
- set NINJA_URL="https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-win.zip"
|
|
- appveyor DownloadFile %NINJA_URL% -FileName ninja.zip
|
|
- 7z x ninja.zip -oC:\ninja > nul
|
|
- set PATH=C:\ninja;%PATH%
|
|
|
|
before_build:
|
|
- git clone --depth=1 https://github.com/KhronosGroup/SPIRV-Headers.git external/spirv-headers
|
|
- git clone --depth=1 https://github.com/google/googletest.git external/googletest
|
|
- git clone --depth=1 https://github.com/google/effcee.git external/effcee
|
|
- git clone --depth=1 https://github.com/google/re2.git external/re2
|
|
# Set path and environment variables for the current Visual Studio version
|
|
- if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2013" (call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86_amd64)
|
|
- if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2015" (call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64)
|
|
- 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)
|
|
|
|
build:
|
|
parallel: true # enable MSBuild parallel builds
|
|
verbosity: minimal
|
|
|
|
build_script:
|
|
- mkdir build && cd build
|
|
- cmake -GNinja -DSPIRV_BUILD_COMPRESSION=ON -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DCMAKE_INSTALL_PREFIX=install ..
|
|
- ninja install
|
|
|
|
test_script:
|
|
- ctest -C %CONFIGURATION% --output-on-failure --timeout 300
|
|
|
|
after_test:
|
|
# Zip build artifacts for uploading and deploying
|
|
- cd install
|
|
- 7z a SPIRV-Tools-master-windows-"%PLATFORM%"-"%CONFIGURATION%".zip *\*
|
|
|
|
artifacts:
|
|
- path: build\install\*.zip
|
|
name: artifacts-zip
|
|
|
|
deploy:
|
|
- provider: GitHub
|
|
auth_token:
|
|
secure: TMfcScKzzFIm1YgeV/PwCRXFDCw8Xm0wY2Vb2FU6WKlbzb5eUITTpr6I5vHPnAxS
|
|
release: master-tot
|
|
description: "Continuous build of the latest master branch by Appveyor and Travis CI"
|
|
artifact: artifacts-zip
|
|
draft: false
|
|
prerelease: false
|
|
force_update: true
|
|
on:
|
|
branch: master
|
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|