1# Copyright 2016, 2018, 2019 Peter Dimov
2# Distributed under the Boost Software License, Version 1.0.
3# (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt)
4
5version: 1.0.{build}-{branch}
6
7shallow_clone: true
8
9branches:
10  only:
11    - master
12    - develop
13    - /feature\/.*/
14
15environment:
16  matrix:
17    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
18      TOOLSET: msvc-9.0,msvc-10.0,msvc-11.0
19      ADDRMD: 32
20    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
21      TOOLSET: msvc-12.0,msvc-14.0
22    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
23      TOOLSET: msvc-14.1,clang-win
24      CXXSTD: 14,17
25    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
26      TOOLSET: msvc-14.2
27      CXXSTD: 14,17
28    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
29      CMAKE: 1
30    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
31      CMAKE: 1
32    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
33      CMAKE: 1
34    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
35      CMAKE_SUBDIR: 1
36    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
37      CMAKE_INSTALL: 1
38
39install:
40  - set BOOST_BRANCH=develop
41  - if "%APPVEYOR_REPO_BRANCH%" == "master" set BOOST_BRANCH=master
42  - cd ..
43  - git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
44  - cd boost-root
45  - git submodule update --init tools/build
46  - git submodule update --init tools/boost_install
47  - git submodule update --init libs/config
48  - git submodule update --init libs/core
49  - git submodule update --init libs/headers
50  - git submodule update --init tools/cmake
51  - xcopy /s /e /q %APPVEYOR_BUILD_FOLDER% libs\assert\
52  - cmd /c bootstrap
53  - b2 -d0 headers
54
55build: off
56
57test_script:
58
59  - if not "%CXXSTD%" == "" set CXXSTD=cxxstd=%CXXSTD%
60  - if not "%ADDRMD%" == "" set ADDRMD=address-model=%ADDRMD%
61  - if "%CMAKE%%CMAKE_SUBDIR%%CMAKE_INSTALL%" == ""  b2 -j 3 libs/assert/test toolset=%TOOLSET% %CXXSTD% %ADDRMD%
62
63  - if not "%CMAKE%" == ""  mkdir __build__ && cd __build__
64  - if not "%CMAKE%" == ""  cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=assert ..
65  - if not "%CMAKE%" == ""  ctest --output-on-failure -R boost_assert -C Debug
66  - if not "%CMAKE%" == ""  ctest --output-on-failure -R boost_assert -C Release
67  - if not "%CMAKE%" == ""  ctest --output-on-failure -R boost_assert -C MinSizeRel
68  - if not "%CMAKE%" == ""  ctest --output-on-failure -R boost_assert -C RelWithDebInfo
69
70  - if not "%CMAKE_SUBDIR%" == ""  cd libs/assert/test/cmake_subdir_test && mkdir __build__ && cd __build__
71  - if not "%CMAKE_SUBDIR%" == ""  cmake ..
72  - if not "%CMAKE_SUBDIR%" == ""  cmake --build . --config Debug && cmake --build . --target check --config Debug
73  - if not "%CMAKE_SUBDIR%" == ""  cmake --build . --config Release && cmake --build . --target check --config Release
74  - if not "%CMAKE_SUBDIR%" == ""  cmake --build . --config MinSizeRel && cmake --build . --target check --config MinSizeRel
75  - if not "%CMAKE_SUBDIR%" == ""  cmake --build . --config RelWithDebInfo && cmake --build . --target check --config RelWithDebInfo
76
77  - if not "%CMAKE_INSTALL%" == ""  mkdir __build__ && cd __build__
78  - if not "%CMAKE_INSTALL%" == ""  cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES="assert;config" -DCMAKE_INSTALL_PREFIX=C:/cmake-prefix ..
79  - if not "%CMAKE_INSTALL%" == ""  cmake --build . --target install --config Debug
80  - if not "%CMAKE_INSTALL%" == ""  cmake --build . --target install --config Release
81  - if not "%CMAKE_INSTALL%" == ""  cd ../libs/assert/test/cmake_install_test && mkdir __build__ && cd __build__
82  - if not "%CMAKE_INSTALL%" == ""  cmake -DCMAKE_INSTALL_PREFIX=C:/cmake-prefix ..
83  - if not "%CMAKE_INSTALL%" == ""  cmake --build . --config Debug && cmake --build . --target check --config Debug
84  - if not "%CMAKE_INSTALL%" == ""  cmake --build . --config Release && cmake --build . --target check --config Release
85