diff --git a/appveyor.yml b/appveyor.yml index cf2c1470..3b190566 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -11,11 +11,39 @@ branches: - /dev-travis.+/ +# We need a more up to date pip because Python 2.7 is EOL soon +init: + - set PATH=C:\Python35\Scripts;%PATH% + + +install: + - ps: if (($env:CONFIGURATION) -eq "Debug" -And ($env:coverage) -eq "1" ) { pip --disable-pip-version-check install codecov } + - ps: if (($env:CONFIGURATION) -eq "Debug" -And ($env:coverage) -eq "1" ) { .\misc\installOpenCppCoverage.ps1 } + + +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 + + # 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 @@ -101,28 +129,3 @@ environment: additional_flags: "/permissive- /std:c++latest" platform: x64 configuration: Debug - - -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" ) { .\misc\installOpenCppCoverage.ps1 } - - -#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