mirror of
https://github.com/catchorg/Catch2.git
synced 2024-11-22 13:26:10 +01:00
Redo AppVeyor build matrix
Added VS 2019 builds, C++17/C++20 builds and performed some general cleanup.
This commit is contained in:
parent
eabb8a6af7
commit
478c324534
129
appveyor.yml
129
appveyor.yml
@ -1,67 +1,112 @@
|
|||||||
# version string format -- This will be overwritten later anyway
|
version: "{build}-{branch}"
|
||||||
version: "{build}"
|
|
||||||
|
|
||||||
|
# If we ever get a backlog larger than clone_depth, builds will fail
|
||||||
|
# spuriously. I do not think we will ever get 20 deep commits deep though.
|
||||||
|
clone_depth: 20
|
||||||
|
|
||||||
|
# We want to build everything, except for branches that are explicitly
|
||||||
|
# for messing around with travis.
|
||||||
branches:
|
branches:
|
||||||
except:
|
except:
|
||||||
- /dev-travis.+/
|
- /dev-travis.+/
|
||||||
|
|
||||||
os:
|
|
||||||
- Visual Studio 2017
|
# Sadly we cannot use the standard "dimensions" based approach towards
|
||||||
|
# specifying the different builds, as there is no way to add one-offs
|
||||||
|
# builds afterwards. This means that we will painfully specify each
|
||||||
|
# build explicitly.
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
matrix:
|
matrix:
|
||||||
- additional_flags: "/permissive- /std:c++latest"
|
- FLAVOR: VS 2019 x64 Debug
|
||||||
wmain: 0
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||||
|
platform: x64
|
||||||
|
configuration: Debug
|
||||||
|
|
||||||
|
- FLAVOR: VS 2019 x64 Release
|
||||||
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||||
|
platform: x64
|
||||||
|
configuration: Release
|
||||||
|
|
||||||
- additional_flags: ""
|
- FLAVOR: VS 2019 x64 Debug Coverage
|
||||||
wmain: 0
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||||
|
coverage: 1
|
||||||
|
platform: x64
|
||||||
|
configuration: Debug
|
||||||
|
|
||||||
- additional_flags: "/D_UNICODE /DUNICODE"
|
- FLAVOR: VS 2019 x64 Debug Examples
|
||||||
wmain: 1
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||||
coverage: 0
|
examples: 1
|
||||||
|
platform: x64
|
||||||
|
configuration: Debug
|
||||||
|
|
||||||
# Have a coverage dimension
|
- FLAVOR: VS 2019 x64 Debug WMain
|
||||||
- additional_flags: ""
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||||
wmain: 0
|
wmain: 1
|
||||||
coverage: 1
|
additional_flags: "/D_UNICODE /DUNICODE"
|
||||||
|
platform: x64
|
||||||
|
configuration: Debug
|
||||||
|
|
||||||
# Have an examples dimension
|
- FLAVOR: VS 2019 Win32 Debug
|
||||||
- additional_flags: ""
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||||
wmain: 0
|
platform: Win32
|
||||||
examples: 1
|
configuration: Debug
|
||||||
|
|
||||||
|
- FLAVOR: VS 2019 x64 Debug Latest Strict
|
||||||
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
|
||||||
|
additional_flags: "/permissive- /std:c++latest"
|
||||||
|
platform: x64
|
||||||
|
configuration: Debug
|
||||||
|
|
||||||
matrix:
|
- FLAVOR: VS 2017 x64 Debug
|
||||||
exclude:
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
# Exclude unwanted coverage configurations
|
platform: x64
|
||||||
- coverage: 1
|
configuration: Debug
|
||||||
platform: Win32
|
|
||||||
|
- FLAVOR: VS 2017 x64 Release
|
||||||
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
|
platform: x64
|
||||||
|
configuration: Release
|
||||||
|
|
||||||
- coverage: 1
|
- FLAVOR: VS 2017 x64 Release Coverage
|
||||||
configuration: Release
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
|
coverage: 1
|
||||||
|
platform: x64
|
||||||
|
configuration: Debug
|
||||||
|
|
||||||
# Exclude unwanted examples configurations
|
- FLAVOR: VS 2017 Win32 Debug
|
||||||
- examples: 1
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
platform: Win32
|
platform: Win32
|
||||||
|
configuration: Debug
|
||||||
|
|
||||||
- examples: 1
|
# This build causes error after 30 minutes, because the VS2017 image
|
||||||
configuration: Release
|
# tries to launch just-in-time debugger on call to std::terminate, which
|
||||||
|
# is an expected part of the tests in this build.
|
||||||
|
# We can reenable it, if we handle disabling that test in CMake.
|
||||||
|
# - FLAVOR: VS 2017 Win32 Debug Examples
|
||||||
|
# APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
|
# examples: 1
|
||||||
|
# platform: Win32
|
||||||
|
# configuration: Debug
|
||||||
|
|
||||||
|
- FLAVOR: VS 2017 Win32 Debug WMain
|
||||||
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
|
wmain: 1
|
||||||
|
additional_flags: "/D_UNICODE /DUNICODE"
|
||||||
|
platform: Win32
|
||||||
|
configuration: Debug
|
||||||
|
|
||||||
|
- FLAVOR: VS 2017 x64 Debug Latest Strict
|
||||||
|
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
||||||
|
additional_flags: "/permissive- /std:c++latest"
|
||||||
|
platform: x64
|
||||||
|
configuration: Debug
|
||||||
|
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- ps: if (($env:CONFIGURATION) -eq "Debug" -And ($env:coverage) -eq "1" ) { python -m pip --disable-pip-version-check install codecov }
|
- ps: if (($env:CONFIGURATION) -eq "Debug" -And ($env:coverage) -eq "1" ) { python -m pip --disable-pip-version-check install codecov }
|
||||||
- ps: if (($env:CONFIGURATION) -eq "Debug" -And ($env:coverage) -eq "1" ) { .\misc\installOpenCppCoverage.ps1 }
|
- 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
|
#Cmake will autodetect the compiler, but we set the arch
|
||||||
before_build:
|
before_build:
|
||||||
|
Loading…
Reference in New Issue
Block a user