• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2017 Edward Diener
2# Copyright 2018 Mike Dev
3# Copyright 2019 Peter Dimov
4# Distributed under the Boost Software License, Version 1.0.
5# (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt)
6
7version: 1.0.{build}-{branch}
8
9shallow_clone: true
10
11configuration:
12  - boost_build_test
13  - cmake_test
14  - cmake_subdir_test
15  - cmake_install_test
16
17branches:
18  only:
19    - master
20    - develop
21    - /feature\/.*/
22
23environment:
24  matrix:
25    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
26      TOOLSET: msvc-10.0
27      ADDRMD: 32
28    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
29      TOOLSET: msvc-11.0
30      ADDRMD: 32
31    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
32      TOOLSET: msvc-12.0
33      ADDRMD: 32,64
34    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
35      TOOLSET: msvc-14.0
36      ADDRMD: 32,64
37    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
38      TOOLSET: msvc-14.1
39      ADDRMD: 32,64
40      CXXSTD: 14,17,latest
41    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
42      TOOLSET: msvc-14.2
43      ADDRMD: 32,64
44      CXXSTD: 14,17,latest
45    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
46      TOOLSET: msvc-14.2
47      ADDRMD: 32,64
48      CXXSTD: 14,17,latest
49      PREPROCESSOR: /Zc:preprocessor
50
51matrix:
52  exclude:
53    - configuration: cmake_test
54      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
55    - configuration: cmake_test
56      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
57    - configuration: cmake_test
58      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
59
60build: off
61
62install:
63  - set BOOST_BRANCH=develop
64  - if "%APPVEYOR_REPO_BRANCH%" == "master" set BOOST_BRANCH=master
65  - cd ..
66  - git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
67  - cd boost-root
68  - git submodule update --init tools/build
69  - git submodule update --init libs/config
70  - git submodule update --init tools/boostdep
71  - git submodule update --init tools/boost_install
72  - git submodule update --init libs/headers
73  - xcopy /s /e /q %APPVEYOR_BUILD_FOLDER% libs\preprocessor\
74  - python tools/boostdep/depinst/depinst.py preprocessor
75
76for:
77-
78  matrix:
79    only:
80      - configuration: boost_build_test
81
82  test_script:
83    - bootstrap
84    - b2 -d0 headers
85    - if not "%CXXSTD%" == "" set CXXSTD=cxxstd=%CXXSTD%
86    - if not "%ADDRMD%" == "" set ADDRMD=address-model=%ADDRMD%
87    - if not "%PREPROCESSOR%" == "" set PREPROCESSOR=cflags="%PREPROCESSOR%"
88    - b2 libs/preprocessor/test -j3 toolset=%TOOLSET% %CXXSTD% %ADDRMD% %PREPROCESSOR% variant=debug,release
89
90-
91  matrix:
92    only:
93      - configuration: cmake_test
94
95  test_script:
96    - mkdir __build__ && cd __build__
97    - cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor ..
98    - ctest --output-on-failure -R boost_preprocessor -C Debug
99
100-
101  matrix:
102    only:
103      - configuration: cmake_subdir_test
104
105  test_script:
106    - cd libs/preprocessor/test/cmake_subdir_test && mkdir __build__ && cd __build__
107    - cmake ..
108    - cmake --build .
109    - cmake --build . --target check
110
111-
112  matrix:
113    only:
114      - configuration: cmake_install_test
115
116  test_script:
117    - mkdir __build__ && cd __build__
118    - cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor -DCMAKE_INSTALL_PREFIX=C:/cmake-prefix ..
119    - cmake --build . --target install
120    - cd ../libs/preprocessor/test/cmake_install_test && mkdir __build__ && cd __build__
121    - cmake -DCMAKE_INSTALL_PREFIX=C:/cmake-prefix ..
122    - cmake --build .
123    - cmake --build . --target check
124