1# Copyright 2016, 2017, 2018 Peter Dimov 2# Copyright 2018 T. Zachary Laine 3# Distributed under the Boost Software License, Version 1.0. 4# (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt) 5 6language: cpp 7 8sudo: false 9 10branches: 11 only: 12 - master 13 - develop 14 - /feature\/.*/ 15 16env: 17 matrix: 18 - BOGUS_JOB=true 19 20matrix: 21 22 exclude: 23 - env: BOGUS_JOB=true 24 25 include: 26 - os: linux 27 env: TOOLSET=gcc COMPILER=g++ CXXSTD=11 28 29 - os: linux 30 env: TOOLSET=gcc COMPILER=g++-4.7 CXXSTD=11 31 addons: 32 apt: 33 packages: 34 - g++-4.7 35 sources: 36 - ubuntu-toolchain-r-test 37 38 - os: linux 39 env: TOOLSET=gcc COMPILER=g++-4.8 CXXSTD=11 40 addons: 41 apt: 42 packages: 43 - g++-4.8 44 sources: 45 - ubuntu-toolchain-r-test 46 47 - os: linux 48 env: TOOLSET=gcc COMPILER=g++-4.9 CXXSTD=11 49 addons: 50 apt: 51 packages: 52 - g++-4.9 53 sources: 54 - ubuntu-toolchain-r-test 55 56 - os: linux 57 env: TOOLSET=gcc COMPILER=g++-5 CXXSTD=11,14,1z 58 addons: 59 apt: 60 packages: 61 - g++-5 62 sources: 63 - ubuntu-toolchain-r-test 64 65 - os: linux 66 env: TOOLSET=gcc COMPILER=g++-6 CXXSTD=11,14,1z 67 addons: 68 apt: 69 packages: 70 - g++-6 71 sources: 72 - ubuntu-toolchain-r-test 73 74 - os: linux 75 env: TOOLSET=gcc COMPILER=g++-6 CXXSTD=11,14,1z CXXSTD_DIALECT=cxxstd-dialect=gnu 76 addons: 77 apt: 78 packages: 79 - g++-6 80 sources: 81 - ubuntu-toolchain-r-test 82 83 - os: linux 84 env: TOOLSET=gcc COMPILER=g++-7 CXXSTD=11,14,17 85 addons: 86 apt: 87 packages: 88 - g++-7 89 sources: 90 - ubuntu-toolchain-r-test 91 92 - os: linux 93 env: TOOLSET=clang COMPILER=clang++ CXXSTD=11 94 95 - os: linux 96 compiler: clang++-libc++ 97 env: TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=11,14,1z 98 addons: 99 apt: 100 packages: 101 - libc++-dev 102 103 - os: osx 104 env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z 105 osx_image: xcode9.1 106 107 - os: osx 108 env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z 109 osx_image: xcode9 110 111 - os: osx 112 env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z 113 osx_image: xcode8.3 114 115 - os: osx 116 env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z 117 osx_image: xcode8 118 119 - os: osx 120 env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z 121 osx_image: xcode7.3 122 123 - os: osx 124 env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z 125 osx_image: xcode6.4 126 127install: 128 - BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true 129 - cd .. 130 - git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root 131 - cd boost-root 132 - git submodule update --init tools/build 133 - git submodule update --init libs/config 134 - git submodule update --init libs/predef 135 - git submodule update --init libs/core 136 - git submodule update --init libs/detail 137 - git submodule update --init libs/range 138 - git submodule update --init libs/assert 139 - git submodule update --init libs/array 140 - git submodule update --init libs/type_traits 141 - git submodule update --init libs/static_assert 142 - git submodule update --init libs/iterator 143 - git submodule update --init libs/preprocessor 144 - git submodule update --init libs/mpl 145 - git submodule update --init libs/smart_ptr 146 - git submodule update --init libs/callable_traits 147 - git submodule update --init libs/type_index 148 - git submodule update --init libs/exception 149 - git submodule update --init libs/throw_exception 150 - git submodule update --init libs/utility 151 - git submodule update --init libs/bind 152 - git submodule update --init libs/ratio 153 - git submodule update --init libs/function 154 - git submodule update --init libs/integer 155 - git submodule update --init libs/numeric 156 - git submodule update --init libs/move 157 - git submodule update --init libs/container_hash 158 - git submodule update --init libs/io 159 - git submodule update --init libs/concept_check 160 - git submodule update --init libs/test 161 - git submodule update --init libs/timer 162 - git submodule update --init libs/chrono 163 - git submodule update --init libs/system 164 - cp -r $TRAVIS_BUILD_DIR/* libs/algorithm 165 - ./bootstrap.sh 166 - ./b2 headers 167 168script: 169 - |- 170 echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam 171 - ./b2 -j3 libs/algorithm/test toolset=$TOOLSET cxxstd=$CXXSTD $CXXSTD_DIALECT 172