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