aboutsummaryrefslogtreecommitdiffstats
path: root/src/scripts/ci/appveyor.yml
blob: dbe806a511e51dcc0165794eb880f1822487cb7e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94

clone_depth: 5

environment:
  SCCACHE_CACHE_SIZE: 160M
  SCCACHE_VERSION: 0.2.12
  APPVEYOR_SAVE_CACHE_ON_ERROR: true

  matrix:

    # MSVC 2015 DLL x86-32
    - CC: VC2015
      PLATFORM: x86
      TARGET: shared
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
      BOOST_ROOT: "C:\\Libraries\\boost_1_69_0"
      BOOST_LIBRARYDIR: "C:\\Libraries\\boost_1_69_0\\lib32-msvc-14.0"
      BOOST_SYSTEM_LIBRARY: "libboost_system-vc140-mt-x32-1_69"
      MAKE_TOOL: nmake
      TARGET_CC: msvc
      EXTRA_FLAGS: "--disable-werror"

    # MSVC 2017 DLL x86-32
    - CC: VC2017
      PLATFORM: x86
      TARGET: shared
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
      BOOST_ROOT: "C:\\Libraries\\boost_1_69_0"
      BOOST_LIBRARYDIR: "C:\\Libraries\\boost_1_69_0\\lib32-msvc-14.1"
      BOOST_SYSTEM_LIBRARY: "libboost_system-vc141-mt-x32-1_69"
      MAKE_TOOL: jom
      TARGET_CC: msvc

    # MSVC 2017 DLL x86-64
    - CC: VC2017
      PLATFORM: x86_amd64
      TARGET: shared
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
      BOOST_ROOT: "C:\\Libraries\\boost_1_69_0"
      BOOST_LIBRARYDIR: "C:\\Libraries\\boost_1_69_0\\lib64-msvc-14.1"
      BOOST_SYSTEM_LIBRARY: "libboost_system-vc141-mt-x64-1_69"
      MAKE_TOOL: jom
      TARGET_CC: msvc

    # MSVC 2017 static x86-64
    - CC: VC2017
      PLATFORM: x86_amd64
      TARGET: static
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
      BOOST_ROOT: "C:\\Libraries\\boost_1_69_0"
      BOOST_LIBRARYDIR: "C:\\Libraries\\boost_1_69_0\\lib64-msvc-14.1"
      BOOST_SYSTEM_LIBRARY: "libboost_system-vc141-mt-x64-1_69"
      MAKE_TOOL: jom
      TARGET_CC: msvc
      EXTRA_FLAGS: "--extra-cxxflags=/DUNICODE --extra-cxxflags=/D_UNICODE"

    # MSVC 2019 static x86-64 w/debug iterators
    - CC: VC2019
      PLATFORM: x86_amd64
      TARGET: sanitizer
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
      MAKE_TOOL: jom
      TARGET_CC: msvc

    # MSVC 2019 x86-64 preview
    - CC: VC2019p
      PLATFORM: x86_amd64
      TARGET: static
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019 Preview
      MAKE_TOOL: jom
      TARGET_CC: msvc

    # MinGW GCC
    - CC: MinGW
      PLATFORM: x86_amd64
      TARGET: static
      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
      MAKE_TOOL: mingw32-make
      TARGET_CC: gcc

install:
  - call src\scripts\ci\setup_appveyor.bat

build_script:
  - python src\scripts\ci_build.py --os=windows --cc=%TARGET_CC% --without-python3 --compiler-cache=sccache --make-tool=%MAKE_TOOL% --cpu=%PLATFORM% %EXTRA_FLAGS% %TARGET%

# whitelist branches to avoid testing feature branches twice (as branch and as pull request)
branches:
  only:
    - master
    - release-2

cache:
  - C:\Users\appveyor\AppData\Local\Mozilla\sccache\cache