mirror of
https://github.com/catchorg/Catch2.git
synced 2024-11-09 23:59:54 +01:00
6c99b04c87
VS 2017 has an annoying bug, where the result of `__FILE__` substitution is always lower-cased. This breaks approval tests and I am not quite convinced that we should fully normalized paths to accomodate this bug. We need to remember to undo this in the future though.
99 lines
2.6 KiB
YAML
99 lines
2.6 KiB
YAML
# version string format -- This will be overwritten later anyway
|
|
version: "{build}"
|
|
|
|
branches:
|
|
except:
|
|
- /dev-travis.+/
|
|
|
|
os:
|
|
- Visual Studio 2017
|
|
- Visual Studio 2015
|
|
|
|
environment:
|
|
matrix:
|
|
- additional_flags: "/permissive- /std:c++latest"
|
|
wmain: 0
|
|
|
|
- additional_flags: ""
|
|
wmain: 0
|
|
|
|
- additional_flags: "/D_UNICODE /DUNICODE"
|
|
wmain: 1
|
|
coverage: 0
|
|
|
|
# Have a coverage dimension
|
|
- additional_flags: ""
|
|
wmain: 0
|
|
coverage: 1
|
|
|
|
# Have an examples dimension
|
|
- additional_flags: ""
|
|
wmain: 0
|
|
examples: 1
|
|
|
|
|
|
matrix:
|
|
allow_failures:
|
|
- os: Visual Studio 2017
|
|
exclude:
|
|
- os: Visual Studio 2015
|
|
additional_flags: "/permissive- /std:c++latest"
|
|
|
|
- os: Visual Studio 2015
|
|
additional_flags: "/D_UNICODE /DUNICODE"
|
|
|
|
# Exclude unwanted coverage configurations
|
|
- coverage: 1
|
|
platform: Win32
|
|
|
|
- coverage: 1
|
|
os: Visual Studio 2015
|
|
|
|
- coverage: 1
|
|
configuration: Release
|
|
|
|
# Exclude unwanted examples configurations
|
|
- examples: 1
|
|
platform: Win32
|
|
|
|
- examples: 1
|
|
os: Visual Studio 2015
|
|
|
|
- examples: 1
|
|
configuration: Release
|
|
|
|
|
|
install:
|
|
- ps: if (($env:CONFIGURATION) -eq "Debug" -And ($env:coverage) -eq "1" ) { python -m pip install codecov }
|
|
- ps: if (($env:CONFIGURATION) -eq "Debug" -And ($env:coverage) -eq "1" ) { .\misc\installOpenCppCoverage.ps1 }
|
|
|
|
# Win32 and x64 are CMake-compatible solution platform names.
|
|
# This allows us to pass %PLATFORM% to CMake -A.
|
|
platform:
|
|
- Win32
|
|
- x64
|
|
|
|
# build Configurations, i.e. Debug, Release, etc.
|
|
configuration:
|
|
- Debug
|
|
- Release
|
|
|
|
#Cmake will autodetect the compiler, but we set the arch
|
|
before_build:
|
|
- set CXXFLAGS=%additional_flags%
|
|
# Indirection because appveyor doesn't handle multiline batch scripts properly
|
|
# https://stackoverflow.com/questions/37627248/how-to-split-a-command-over-multiple-lines-in-appveyor-yml/37647169#37647169
|
|
# https://help.appveyor.com/discussions/questions/3888-multi-line-cmd-or-powershell-warning-ignore
|
|
- cmd: .\misc\appveyorBuildConfigurationScript.bat
|
|
|
|
|
|
# build with MSBuild
|
|
build:
|
|
project: Build\Catch2.sln # path to Visual Studio solution or project
|
|
parallel: true # enable MSBuild parallel builds
|
|
verbosity: normal # MSBuild verbosity level {quiet|minimal|normal|detailed}
|
|
|
|
test_script:
|
|
- set CTEST_OUTPUT_ON_FAILURE=1
|
|
- cmd: .\misc\appveyorTestRunScript.bat
|