blob: 83538dd5c548f0c039ec5dc4e1c92d784e06ed81 [file] [log] [blame]
onqtamaec53d22017-05-03 06:29:47 +03001# http://www.appveyor.com/docs/appveyor-yml
2
3notifications:
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
15clone_depth: 500
16branches:
17 except:
18 - gh-pages
19 - coverity_scan
20
21matrix:
22 fast_finish: false
23
24environment:
25 matrix:
onqtam968cc942019-08-12 21:44:57 +030026 - gen: "MinGW Makefiles"
27 - gen: "Visual Studio 14 2015"
28 APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
29 - gen: "Visual Studio 15 2017"
30 APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
31# - gen: "Visual Studio 16 2019"
32# APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 Preview
onqtamaec53d22017-05-03 06:29:47 +030033
34install:
onqtam54b5bb92018-05-31 13:13:09 +030035 - 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
36 - IF "%gen%" == "MinGW Makefiles" 7z x x86_64-8.1.0-release-posix-seh-rt_v6-rev0.7z -oc:\mingw > nul
onqtamaec53d22017-05-03 06:29:47 +030037
38build_script:
onqtam420e7472019-06-02 15:28:49 +030039 - cmake --version
onqtamaec53d22017-05-03 06:29:47 +030040 # workaround for CMake not wanting sh.exe on PATH for MinGW
41 - IF "%gen%" == "MinGW Makefiles" set PATH=%PATH:C:\Program Files\Git\usr\bin;=%
42 - IF "%gen%" == "MinGW Makefiles" set PATH=C:\mingw\mingw64\bin;%PATH%
43 # generate and build everything for debug and release
44 - IF "%gen%" == "MinGW Makefiles" mkdir debug_64
45 - IF "%gen%" == "MinGW Makefiles" cd debug_64
46 - IF "%gen%" == "MinGW Makefiles" cmake .. -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Debug
47 - IF "%gen%" == "MinGW Makefiles" cmake --build .
48 - IF "%gen%" == "MinGW Makefiles" cd ..
49 - IF "%gen%" == "MinGW Makefiles" mkdir release_64
50 - IF "%gen%" == "MinGW Makefiles" cd release_64
51 - IF "%gen%" == "MinGW Makefiles" cmake .. -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release
52 - IF "%gen%" == "MinGW Makefiles" cmake --build .
53 - IF "%gen%" == "MinGW Makefiles" cd ..
54 # adding git to the path again - for the dos2unix tool
55 - IF "%gen%" == "MinGW Makefiles" set PATH=%PATH%;C:\Program Files\Git\usr\bin
56 # execute tests
57 - IF "%gen%" == "MinGW Makefiles" cd debug_64
onqtam366c3682019-03-19 13:58:02 +020058 - IF "%gen%" == "MinGW Makefiles" ctest -j2 --output-on-failure
onqtamaec53d22017-05-03 06:29:47 +030059 - IF "%gen%" == "MinGW Makefiles" cd ..
60 - IF "%gen%" == "MinGW Makefiles" cd release_64
onqtam366c3682019-03-19 13:58:02 +020061 - IF "%gen%" == "MinGW Makefiles" ctest -j2 --output-on-failure
onqtamaec53d22017-05-03 06:29:47 +030062 - IF "%gen%" == "MinGW Makefiles" cd ..
63 - IF "%gen%" == "MinGW Makefiles" appveyor exit
64 # ============= VISUAL STUDIO
onqtamef508e82018-05-29 23:45:43 +030065 - mkdir debug_64
66 - cd debug_64
onqtam190ba252019-03-23 09:58:34 +020067 - cmake .. -G "%gen%" -A x64
onqtamef508e82018-05-29 23:45:43 +030068 - msbuild doctest.sln /p:Configuration=Debug;Platform=x64 /maxcpucount
onqtam366c3682019-03-19 13:58:02 +020069 - ctest -C Debug -j2 --output-on-failure
onqtamef508e82018-05-29 23:45:43 +030070 - cd ..
71 - mkdir release_64
72 - cd release_64
onqtam190ba252019-03-23 09:58:34 +020073 - cmake .. -G "%gen%" -A x64
onqtamef508e82018-05-29 23:45:43 +030074 - msbuild doctest.sln /p:Configuration=Release;Platform=x64 /maxcpucount
onqtam366c3682019-03-19 13:58:02 +020075 - ctest -C Release -j2 --output-on-failure
onqtamef508e82018-05-29 23:45:43 +030076 - cd ..
onqtamaec53d22017-05-03 06:29:47 +030077 # x86
78 - mkdir debug_86
79 - cd debug_86
onqtam190ba252019-03-23 09:58:34 +020080 - cmake .. -G "%gen%" -A Win32
onqtamaec53d22017-05-03 06:29:47 +030081 - msbuild doctest.sln /p:Configuration=Debug;Platform=Win32 /maxcpucount
onqtam366c3682019-03-19 13:58:02 +020082 - ctest -C Debug -j2 --output-on-failure
onqtamaec53d22017-05-03 06:29:47 +030083 - cd ..
84 - mkdir release_86
85 - cd release_86
onqtam190ba252019-03-23 09:58:34 +020086 - cmake .. -G "%gen%" -A Win32
onqtamaec53d22017-05-03 06:29:47 +030087 - msbuild doctest.sln /p:Configuration=Release;Platform=Win32 /maxcpucount
onqtam366c3682019-03-19 13:58:02 +020088 - ctest -C Release -j2 --output-on-failure
onqtamaec53d22017-05-03 06:29:47 +030089 - cd ..
90 # static code analysis
91 - IF "%gen%" == "Visual Studio 15 2017" mkdir analysis
92 - IF "%gen%" == "Visual Studio 15 2017" cd analysis
onqtam190ba252019-03-23 09:58:34 +020093 - IF "%gen%" == "Visual Studio 15 2017" cmake .. -G "%gen%" -A x64
onqtamaec53d22017-05-03 06:29:47 +030094 - IF "%gen%" == "Visual Studio 15 2017" msbuild doctest.sln /p:Configuration=Debug;Platform=x64 /maxcpucount /p:RunCodeAnalysis=true /p:CodeAnalysisTreatWarningsAsErrors=true
95 - IF "%gen%" == "Visual Studio 15 2017" cd ..