Martin Hořeňovský | 29fa1ed | 2017-02-14 09:37:37 +0100 | [diff] [blame] | 1 | # version string format -- This will be overwritten later anyway |
| 2 | version: "{build}" |
| 3 | |
Martin Hořeňovský | 32733e0 | 2019-11-13 20:58:15 +0100 | [diff] [blame] | 4 | # We need a more up to date pip because Python 2.7 is EOL soon |
| 5 | init: |
| 6 | - set PATH=C:\Python35\Scripts;%PATH% |
| 7 | |
| 8 | |
Martin Hořeňovský | a20b286 | 2017-11-05 12:46:04 +0100 | [diff] [blame] | 9 | branches: |
| 10 | except: |
| 11 | - /dev-travis.+/ |
| 12 | |
Martin Hořeňovský | 29fa1ed | 2017-02-14 09:37:37 +0100 | [diff] [blame] | 13 | os: |
Martin Hořeňovský | 09e4830 | 2017-04-06 11:01:49 +0200 | [diff] [blame] | 14 | - Visual Studio 2017 |
Martin Hořeňovský | 8f0feaa | 2017-04-20 21:32:50 +0200 | [diff] [blame] | 15 | - Visual Studio 2015 |
Martin Hořeňovský | 8f0feaa | 2017-04-20 21:32:50 +0200 | [diff] [blame] | 16 | |
| 17 | environment: |
| 18 | matrix: |
| 19 | - additional_flags: "/permissive- /std:c++latest" |
Antonio Di Monaco | b8443e6 | 2017-05-11 13:00:03 +0200 | [diff] [blame] | 20 | wmain: 0 |
| 21 | |
Martin Hořeňovský | 8f0feaa | 2017-04-20 21:32:50 +0200 | [diff] [blame] | 22 | - additional_flags: "" |
Antonio Di Monaco | b8443e6 | 2017-05-11 13:00:03 +0200 | [diff] [blame] | 23 | wmain: 0 |
| 24 | |
| 25 | - additional_flags: "/D_UNICODE /DUNICODE" |
| 26 | wmain: 1 |
Martin Hořeňovský | dc8a8e6 | 2018-03-06 18:33:18 +0100 | [diff] [blame] | 27 | coverage: 0 |
| 28 | |
| 29 | # Have a coverage dimension |
| 30 | - additional_flags: "" |
| 31 | wmain: 0 |
| 32 | coverage: 1 |
| 33 | |
| 34 | # Have an examples dimension |
| 35 | - additional_flags: "" |
| 36 | wmain: 0 |
| 37 | examples: 1 |
| 38 | |
Martin Hořeňovský | 8f0feaa | 2017-04-20 21:32:50 +0200 | [diff] [blame] | 39 | |
| 40 | matrix: |
| 41 | exclude: |
Martin Moene | f6ae451 | 2017-11-05 10:05:57 +0100 | [diff] [blame] | 42 | - os: Visual Studio 2015 |
| 43 | additional_flags: "/permissive- /std:c++latest" |
| 44 | |
Martin Hořeňovský | dc8a8e6 | 2018-03-06 18:33:18 +0100 | [diff] [blame] | 45 | - os: Visual Studio 2015 |
| 46 | additional_flags: "/D_UNICODE /DUNICODE" |
| 47 | |
| 48 | # Exclude unwanted coverage configurations |
| 49 | - coverage: 1 |
| 50 | platform: Win32 |
| 51 | |
| 52 | - coverage: 1 |
| 53 | os: Visual Studio 2015 |
| 54 | |
| 55 | - coverage: 1 |
| 56 | configuration: Release |
| 57 | |
| 58 | # Exclude unwanted examples configurations |
| 59 | - examples: 1 |
| 60 | platform: Win32 |
| 61 | |
| 62 | - examples: 1 |
| 63 | os: Visual Studio 2015 |
| 64 | |
| 65 | - examples: 1 |
| 66 | configuration: Release |
| 67 | |
Martin Hořeňovský | 29fa1ed | 2017-02-14 09:37:37 +0100 | [diff] [blame] | 68 | |
Martin Hořeňovský | 45a4657 | 2017-12-03 13:03:52 +0100 | [diff] [blame] | 69 | install: |
Martin Hořeňovský | 32733e0 | 2019-11-13 20:58:15 +0100 | [diff] [blame] | 70 | - ps: if (($env:CONFIGURATION) -eq "Debug" -And ($env:coverage) -eq "1" ) { pip --disable-pip-version-check install codecov } |
Martin Hořeňovský | dc8a8e6 | 2018-03-06 18:33:18 +0100 | [diff] [blame] | 71 | - ps: if (($env:CONFIGURATION) -eq "Debug" -And ($env:coverage) -eq "1" ) { .\misc\installOpenCppCoverage.ps1 } |
Martin Hořeňovský | 29fa1ed | 2017-02-14 09:37:37 +0100 | [diff] [blame] | 72 | |
| 73 | # Win32 and x64 are CMake-compatible solution platform names. |
| 74 | # This allows us to pass %PLATFORM% to CMake -A. |
| 75 | platform: |
| 76 | - Win32 |
| 77 | - x64 |
| 78 | |
| 79 | # build Configurations, i.e. Debug, Release, etc. |
| 80 | configuration: |
| 81 | - Debug |
| 82 | - Release |
| 83 | |
| 84 | #Cmake will autodetect the compiler, but we set the arch |
| 85 | before_build: |
Martin Hořeňovský | 8f0feaa | 2017-04-20 21:32:50 +0200 | [diff] [blame] | 86 | - set CXXFLAGS=%additional_flags% |
Martin Hořeňovský | 45a4657 | 2017-12-03 13:03:52 +0100 | [diff] [blame] | 87 | # Indirection because appveyor doesn't handle multiline batch scripts properly |
| 88 | # https://stackoverflow.com/questions/37627248/how-to-split-a-command-over-multiple-lines-in-appveyor-yml/37647169#37647169 |
| 89 | # https://help.appveyor.com/discussions/questions/3888-multi-line-cmd-or-powershell-warning-ignore |
| 90 | - cmd: .\misc\appveyorBuildConfigurationScript.bat |
| 91 | |
Martin Hořeňovský | 29fa1ed | 2017-02-14 09:37:37 +0100 | [diff] [blame] | 92 | |
| 93 | # build with MSBuild |
| 94 | build: |
David Seifert | 0d687a1 | 2018-01-18 00:01:27 +0100 | [diff] [blame] | 95 | project: Build\Catch2.sln # path to Visual Studio solution or project |
Martin Hořeňovský | 29fa1ed | 2017-02-14 09:37:37 +0100 | [diff] [blame] | 96 | parallel: true # enable MSBuild parallel builds |
| 97 | verbosity: normal # MSBuild verbosity level {quiet|minimal|normal|detailed} |
| 98 | |
| 99 | test_script: |
Martin Hořeňovský | f052762 | 2017-11-22 16:11:35 +0100 | [diff] [blame] | 100 | - set CTEST_OUTPUT_ON_FAILURE=1 |
Martin Hořeňovský | 45a4657 | 2017-12-03 13:03:52 +0100 | [diff] [blame] | 101 | - cmd: .\misc\appveyorTestRunScript.bat |