2016-05-17 13:02:45 +00:00
|
|
|
# Windows Build Configuration for AppVeyor
|
|
|
|
# http://www.appveyor.com/docs/appveyor-yml
|
|
|
|
|
|
|
|
# version format
|
|
|
|
version: "{build}"
|
|
|
|
|
2017-12-11 20:50:51 +00:00
|
|
|
# The most recent compiler gives the most interesting new results.
|
|
|
|
# Put it first so we get its feedback first.
|
2016-08-10 14:12:14 +00:00
|
|
|
os:
|
2017-08-01 15:42:28 +00:00
|
|
|
- Visual Studio 2017
|
2018-07-10 16:48:23 +00:00
|
|
|
#- Visual Studio 2013
|
2016-05-17 13:02:45 +00:00
|
|
|
|
|
|
|
platform:
|
2017-11-08 21:44:53 +00:00
|
|
|
- x64
|
2016-05-17 13:02:45 +00:00
|
|
|
|
|
|
|
configuration:
|
|
|
|
- Debug
|
2018-07-10 16:48:23 +00:00
|
|
|
#- Release
|
2016-05-17 13:02:45 +00:00
|
|
|
|
|
|
|
branches:
|
|
|
|
only:
|
|
|
|
- master
|
|
|
|
|
2017-11-14 14:18:42 +00:00
|
|
|
# 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
|
|
|
|
|
2017-12-01 02:12:23 +00:00
|
|
|
clone_depth: 1
|
2016-05-17 13:02:45 +00:00
|
|
|
|
|
|
|
matrix:
|
|
|
|
fast_finish: true # Show final status immediately if a test fails.
|
2018-07-10 16:48:23 +00:00
|
|
|
#exclude:
|
|
|
|
# - os: Visual Studio 2013
|
|
|
|
# configuration: Debug
|
2016-05-17 13:02:45 +00:00
|
|
|
|
|
|
|
# scripts that run after cloning repository
|
|
|
|
install:
|
2017-12-01 02:12:23 +00:00
|
|
|
# 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
|
2019-03-06 19:11:01 +00:00
|
|
|
- set PATH=C:\ninja;C:\Python36;%PATH%
|
2017-12-01 02:12:23 +00:00
|
|
|
|
|
|
|
before_build:
|
|
|
|
- git clone --depth=1 https://github.com/KhronosGroup/SPIRV-Headers.git external/spirv-headers
|
2018-09-27 13:44:01 +00:00
|
|
|
- git clone --depth=1 https://github.com/google/googletest.git external/googletest
|
2017-12-01 02:12:23 +00:00
|
|
|
- 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
|
2018-02-06 16:13:39 +00:00
|
|
|
- if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2013" (call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86_amd64)
|
2017-12-01 02:12:23 +00:00
|
|
|
- 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)
|
2016-05-17 13:02:45 +00:00
|
|
|
|
|
|
|
build:
|
|
|
|
parallel: true # enable MSBuild parallel builds
|
|
|
|
verbosity: minimal
|
|
|
|
|
|
|
|
build_script:
|
|
|
|
- mkdir build && cd build
|
2019-05-24 19:43:59 +00:00
|
|
|
- cmake -GNinja -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DCMAKE_INSTALL_PREFIX=install -DRE2_BUILD_TESTING=OFF ..
|
2017-12-01 02:12:23 +00:00
|
|
|
- ninja install
|
2016-05-17 13:02:45 +00:00
|
|
|
|
|
|
|
test_script:
|
Add builtin validation for SPV_NV_shader_sm_builtins (#2656)
Also add a Builtin test generator variant that takes
capabilities and extensions.
Tests
- verify that the SMCountNV, SMIDNV, WarpsPerSMNV, and WarpIDNV Builtins are
accepted as Inputs in Vertex, Fragment, TessControl, TessEval, Geometry,
and Compute.
- verify that the SMCountNV, SMIDNV, WarpsPerSMNV, and WarpIDNV Builtins are
accepted as Inputs in MeshNV and TaskNV shaders.
- verify that the SMCountNV, SMIDNV, WarpsPerSMNV, and WarpIDNV Builtins are
accepted as Inputs in the 6 ray tracing stages
- verify that the SMCountNV, SMIDNV, WarpsPerSMNV, and WarpIDNV Builtins are
NOT accepted as Outputs.
- verify that the SMCountNV, SMIDNV, WarpsPerSMNV, and WarpIDNV Builtins are
NOT accepted as non-scalar integers (f32, uvec3)
- verify that the SMCountNV, SMIDNV, WarpsPerSMNV, and WarpIDNV Builtins are
NOT accepted as non-32-bit integers (u64)
2019-06-06 18:53:48 +00:00
|
|
|
- ctest -C %CONFIGURATION% --output-on-failure --timeout 310
|
2017-11-08 21:44:53 +00:00
|
|
|
|
|
|
|
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
|