onqtam | aec53d2 | 2017-05-03 06:29:47 +0300 | [diff] [blame] | 1 | # http://www.appveyor.com/docs/appveyor-yml |
| 2 | |
| 3 | notifications: |
| 4 | - provider: Email |
| 5 | on_build_status_changed: false |
| 6 | on_build_failure: false |
| 7 | on_build_success: false |
| 8 | # gitter |
| 9 | - provider: Webhook |
| 10 | url: https://webhooks.gitter.im/e/3a78202a235c0325e516 |
| 11 | on_build_status_changed: true |
| 12 | on_build_failure: true |
| 13 | on_build_success: false |
| 14 | |
| 15 | clone_depth: 500 |
| 16 | branches: |
| 17 | except: |
| 18 | - gh-pages |
| 19 | - coverity_scan |
| 20 | |
| 21 | matrix: |
| 22 | fast_finish: false |
| 23 | |
| 24 | environment: |
| 25 | matrix: |
| 26 | - gen: "MinGW Makefiles" |
onqtam | aec53d2 | 2017-05-03 06:29:47 +0300 | [diff] [blame] | 27 | - gen: "Visual Studio 14 2015" |
| 28 | - gen: "Visual Studio 15 2017" |
| 29 | APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 |
| 30 | |
| 31 | install: |
onqtam | 54b5bb9 | 2018-05-31 13:13:09 +0300 | [diff] [blame] | 32 | - IF "%gen%" == "MinGW Makefiles" appveyor-retry appveyor DownloadFile http://downloads.sourceforge.net/mingw-w64/x86_64-8.1.0-release-posix-seh-rt_v6-rev0.7z |
| 33 | - IF "%gen%" == "MinGW Makefiles" 7z x x86_64-8.1.0-release-posix-seh-rt_v6-rev0.7z -oc:\mingw > nul |
onqtam | aec53d2 | 2017-05-03 06:29:47 +0300 | [diff] [blame] | 34 | |
| 35 | build_script: |
| 36 | # workaround for CMake not wanting sh.exe on PATH for MinGW |
| 37 | - IF "%gen%" == "MinGW Makefiles" set PATH=%PATH:C:\Program Files\Git\usr\bin;=% |
| 38 | - IF "%gen%" == "MinGW Makefiles" set PATH=C:\mingw\mingw64\bin;%PATH% |
| 39 | # generate and build everything for debug and release |
| 40 | - IF "%gen%" == "MinGW Makefiles" mkdir debug_64 |
| 41 | - IF "%gen%" == "MinGW Makefiles" cd debug_64 |
| 42 | - IF "%gen%" == "MinGW Makefiles" cmake .. -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug |
| 43 | - IF "%gen%" == "MinGW Makefiles" cmake --build . |
| 44 | - IF "%gen%" == "MinGW Makefiles" cd .. |
| 45 | - IF "%gen%" == "MinGW Makefiles" mkdir release_64 |
| 46 | - IF "%gen%" == "MinGW Makefiles" cd release_64 |
| 47 | - IF "%gen%" == "MinGW Makefiles" cmake .. -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release |
| 48 | - IF "%gen%" == "MinGW Makefiles" cmake --build . |
| 49 | - IF "%gen%" == "MinGW Makefiles" cd .. |
| 50 | # adding git to the path again - for the dos2unix tool |
| 51 | - IF "%gen%" == "MinGW Makefiles" set PATH=%PATH%;C:\Program Files\Git\usr\bin |
| 52 | # execute tests |
| 53 | - IF "%gen%" == "MinGW Makefiles" cd debug_64 |
| 54 | - IF "%gen%" == "MinGW Makefiles" ctest --output-on-failure |
| 55 | - IF "%gen%" == "MinGW Makefiles" cd .. |
| 56 | - IF "%gen%" == "MinGW Makefiles" cd release_64 |
| 57 | - IF "%gen%" == "MinGW Makefiles" ctest --output-on-failure |
| 58 | - IF "%gen%" == "MinGW Makefiles" cd .. |
| 59 | - IF "%gen%" == "MinGW Makefiles" appveyor exit |
| 60 | # ============= VISUAL STUDIO |
onqtam | ef508e8 | 2018-05-29 23:45:43 +0300 | [diff] [blame] | 61 | - mkdir debug_64 |
| 62 | - cd debug_64 |
| 63 | - cmake .. -G "%gen% Win64" |
| 64 | - msbuild doctest.sln /p:Configuration=Debug;Platform=x64 /maxcpucount |
| 65 | - ctest -C Debug --output-on-failure |
| 66 | - cd .. |
| 67 | - mkdir release_64 |
| 68 | - cd release_64 |
| 69 | - cmake .. -G "%gen% Win64" |
| 70 | - msbuild doctest.sln /p:Configuration=Release;Platform=x64 /maxcpucount |
| 71 | - ctest -C Release --output-on-failure |
| 72 | - cd .. |
onqtam | aec53d2 | 2017-05-03 06:29:47 +0300 | [diff] [blame] | 73 | # x86 |
| 74 | - mkdir debug_86 |
| 75 | - cd debug_86 |
| 76 | - cmake .. -G "%gen%" |
| 77 | - msbuild doctest.sln /p:Configuration=Debug;Platform=Win32 /maxcpucount |
| 78 | - ctest -C Debug --output-on-failure |
| 79 | - cd .. |
| 80 | - mkdir release_86 |
| 81 | - cd release_86 |
| 82 | - cmake .. -G "%gen%" |
| 83 | - msbuild doctest.sln /p:Configuration=Release;Platform=Win32 /maxcpucount |
| 84 | - ctest -C Release --output-on-failure |
| 85 | - cd .. |
| 86 | # static code analysis |
| 87 | - IF "%gen%" == "Visual Studio 15 2017" mkdir analysis |
| 88 | - IF "%gen%" == "Visual Studio 15 2017" cd analysis |
| 89 | - IF "%gen%" == "Visual Studio 15 2017" cmake .. -G "%gen% Win64" |
| 90 | - IF "%gen%" == "Visual Studio 15 2017" msbuild doctest.sln /p:Configuration=Debug;Platform=x64 /maxcpucount /p:RunCodeAnalysis=true /p:CodeAnalysisTreatWarningsAsErrors=true |
| 91 | - IF "%gen%" == "Visual Studio 15 2017" cd .. |