diff options
| author | Lexi Winter <lexi@le-fay.org> | 2025-06-29 19:25:29 +0100 |
|---|---|---|
| committer | Lexi Winter <lexi@le-fay.org> | 2025-06-29 19:25:29 +0100 |
| commit | bc524d70253a4ab2fe40c3ca3e5666e267c0a4d1 (patch) | |
| tree | 1e629e7b46b1d9972a973bc93fd100bcebd395be /appveyor.yml | |
| download | nihil-vendor/catch2/3.8.1.tar.gz nihil-vendor/catch2/3.8.1.tar.bz2 | |
import catch2 3.8.1vendor/catch2/3.8.1vendor/catch2
Diffstat (limited to 'appveyor.yml')
| -rw-r--r-- | appveyor.yml | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/appveyor.yml b/appveyor.yml new file mode 100644 index 0000000..ba4556e --- /dev/null +++ b/appveyor.yml @@ -0,0 +1,83 @@ +version: "{build}-{branch}" + +# 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 Github Actions. +branches: + except: + - /devel-gha.+/ + + +# We need a more up to date pip because Python 2.7 is EOL soon +init: + - set PATH=C:\Python35;C:\Python35\Scripts;%PATH% + + +install: + - ps: if (($env:CONFIGURATION) -eq "Debug" -And ($env:coverage) -eq "1" ) { pip --disable-pip-version-check install codecov } + # This removes our changes to PATH. Keep this step last! + - ps: if (($env:CONFIGURATION) -eq "Debug" -And ($env:coverage) -eq "1" ) { .\tools\misc\installOpenCppCoverage.ps1 } + + +before_build: + # We need to modify PATH again, because it was reset since the "init" step + - set PATH=C:\Python35;C:\Python35\Scripts;%PATH% + - set CXXFLAGS=%additional_flags% + # If we are building examples/extra-tests, we need to regenerate the amalgamated files + - cmd: if "%examples%"=="1" ( python .\tools\scripts\generateAmalgamatedFiles.py ) + # 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: .\tools\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: .\tools\misc\appveyorTestRunScript.bat + + +# 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: + matrix: + - FLAVOR: VS 2019 x64 Debug Coverage Examples + APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 + examples: 1 + coverage: 1 + platform: x64 + configuration: Debug + + - FLAVOR: VS 2019 x64 Debug WMain + APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 + wmain: 1 + additional_flags: "/D_UNICODE /DUNICODE" + platform: x64 + 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 + + - FLAVOR: VS 2017 x64 Debug + APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 + platform: x64 + configuration: Debug + + - FLAVOR: VS 2017 x64 Release Coverage + APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 + coverage: 1 + platform: x64 + configuration: Debug |
