1# Copyright 2016-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 5language: cpp 6 7dist: xenial 8 9branches: 10 only: 11 - master 12 - develop 13 - /feature\/.*/ 14 15env: 16 matrix: 17 - BOGUS_JOB=true 18 19matrix: 20 21 exclude: 22 - env: BOGUS_JOB=true 23 24 include: 25 - os: linux 26 compiler: g++ 27 env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11 28 29 - os: linux 30 compiler: g++-4.4 31 env: TOOLSET=gcc COMPILER=g++-4.4 CXXSTD=98 32 addons: 33 apt: 34 packages: 35 - g++-4.4 36 sources: 37 - ubuntu-toolchain-r-test 38 39 - os: linux 40 compiler: g++-4.6 41 env: TOOLSET=gcc COMPILER=g++-4.6 CXXSTD=03,0x 42 addons: 43 apt: 44 packages: 45 - g++-4.6 46 sources: 47 - ubuntu-toolchain-r-test 48 49 - os: linux 50 compiler: g++-4.7 51 env: TOOLSET=gcc COMPILER=g++-4.7 CXXSTD=03,11 52 addons: 53 apt: 54 packages: 55 - g++-4.7 56 sources: 57 - ubuntu-toolchain-r-test 58 59 - os: linux 60 compiler: g++-4.8 61 env: TOOLSET=gcc COMPILER=g++-4.8 CXXSTD=03,11 62 addons: 63 apt: 64 packages: 65 - g++-4.8 66 sources: 67 - ubuntu-toolchain-r-test 68 - os: linux 69 compiler: g++-4.9 70 env: TOOLSET=gcc COMPILER=g++-4.9 CXXSTD=03,11 71 addons: 72 apt: 73 packages: 74 - g++-4.9 75 sources: 76 - ubuntu-toolchain-r-test 77 78 - os: linux 79 compiler: g++-5 80 env: TOOLSET=gcc COMPILER=g++-5 CXXSTD=03,11,14,1z 81 addons: 82 apt: 83 packages: 84 - g++-5 85 sources: 86 - ubuntu-toolchain-r-test 87 88 - os: linux 89 compiler: g++-6 90 env: TOOLSET=gcc COMPILER=g++-6 CXXSTD=03,11,14,1z 91 addons: 92 apt: 93 packages: 94 - g++-6 95 sources: 96 - ubuntu-toolchain-r-test 97 98 - os: linux 99 dist: trusty 100 compiler: g++-7 101 env: TOOLSET=gcc COMPILER=g++-7 CXXSTD=03,11,14,17 102 addons: 103 apt: 104 packages: 105 - g++-7 106 sources: 107 - ubuntu-toolchain-r-test 108 109 - os: linux 110 compiler: g++-8 111 env: TOOLSET=gcc COMPILER=g++-8 CXXSTD=03,11,14,17 112 addons: 113 apt: 114 packages: 115 - g++-8 116 sources: 117 - ubuntu-toolchain-r-test 118 119 - os: linux 120 compiler: g++-9 121 env: TOOLSET=gcc COMPILER=g++-9 CXXSTD=03,11,14,17 122 addons: 123 apt: 124 packages: 125 - g++-9 126 sources: 127 - ubuntu-toolchain-r-test 128 129 - os: linux 130 dist: bionic 131 compiler: g++-10 132 env: TOOLSET=gcc COMPILER=g++-10 CXXSTD=03,11,14,17,2a 133 addons: 134 apt: 135 packages: 136 - g++-10 137 sources: 138 - ubuntu-toolchain-r-test 139 140 - os: linux 141 compiler: clang++ 142 env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11 143 144 - os: linux 145 dist: trusty 146 compiler: /usr/bin/clang++ 147 env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11 148 addons: 149 apt: 150 packages: 151 - clang-3.3 152 153 - os: linux 154 dist: trusty 155 compiler: /usr/bin/clang++ 156 env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11 157 addons: 158 apt: 159 packages: 160 - clang-3.4 161 162 - os: linux 163 compiler: clang++-3.5 164 env: TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=03,11,14,1z 165 addons: 166 apt: 167 packages: 168 - clang-3.5 169 sources: 170 - ubuntu-toolchain-r-test 171 172 - os: linux 173 compiler: clang++-3.6 174 env: TOOLSET=clang COMPILER=clang++-3.6 CXXSTD=03,11,14,1z 175 addons: 176 apt: 177 packages: 178 - clang-3.6 179 sources: 180 - ubuntu-toolchain-r-test 181 182 - os: linux 183 compiler: clang++-3.7 184 env: TOOLSET=clang COMPILER=clang++-3.7 CXXSTD=03,11,14,1z 185 addons: 186 apt: 187 packages: 188 - clang-3.7 189 sources: 190 - ubuntu-toolchain-r-test 191 192 - os: linux 193 compiler: clang++-3.8 194 env: TOOLSET=clang COMPILER=clang++-3.8 CXXSTD=03,11,14,1z 195 addons: 196 apt: 197 packages: 198 - clang-3.8 199 sources: 200 - ubuntu-toolchain-r-test 201 202 - os: linux 203 compiler: clang++-3.9 204 env: TOOLSET=clang COMPILER=clang++-3.9 CXXSTD=03,11,14,1z 205 addons: 206 apt: 207 packages: 208 - clang-3.9 209 sources: 210 - ubuntu-toolchain-r-test 211 212 - os: linux 213 compiler: clang++-4.0 214 env: TOOLSET=clang COMPILER=clang++-4.0 CXXSTD=03,11,14,1z 215 addons: 216 apt: 217 packages: 218 - clang-4.0 219 sources: 220 - ubuntu-toolchain-r-test 221 222 - os: linux 223 compiler: clang++-5.0 224 env: TOOLSET=clang COMPILER=clang++-5.0 CXXSTD=03,11,14,1z 225 addons: 226 apt: 227 packages: 228 - clang-5.0 229 sources: 230 - ubuntu-toolchain-r-test 231 232 - os: linux 233 compiler: clang++-6.0 234 env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03,11,14,17 235 addons: 236 apt: 237 packages: 238 - clang-6.0 239 sources: 240 - ubuntu-toolchain-r-test 241 242 - os: linux 243 compiler: clang++-7 244 env: TOOLSET=clang COMPILER=clang++-7 CXXSTD=03,11,14,17 245 addons: 246 apt: 247 packages: 248 - clang-7 249 sources: 250 - ubuntu-toolchain-r-test 251 - llvm-toolchain-xenial-7 252 253 - os: linux 254 compiler: clang++-8 255 env: TOOLSET=clang COMPILER=clang++-8 CXXSTD=03,11,14,17 256 addons: 257 apt: 258 packages: 259 - clang-8 260 sources: 261 - ubuntu-toolchain-r-test 262 - llvm-toolchain-xenial-8 263 264 - os: linux 265 compiler: clang++-9 266 env: TOOLSET=clang COMPILER=clang++-9 CXXSTD=03,11,14,17,2a 267 addons: 268 apt: 269 packages: 270 - clang-9 271 sources: 272 - ubuntu-toolchain-r-test 273 - sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main' 274 key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' 275 276 - os: linux 277 compiler: clang++-10 278 env: TOOLSET=clang COMPILER=clang++-10 CXXSTD=03,11,14,17,2a 279 addons: 280 apt: 281 packages: 282 - clang-10 283 sources: 284 - ubuntu-toolchain-r-test 285 - sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-10 main' 286 key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' 287 288 - os: linux 289 dist: trusty 290 compiler: clang++-libc++ 291 env: TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,1z 292 addons: 293 apt: 294 packages: 295 - libc++-dev 296 297 - os: osx 298 compiler: clang++ 299 env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z 300 301 - os: linux 302 env: CMAKE_TEST=1 303 script: 304 - mkdir __build__ && cd __build__ 305 - cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor .. 306 - ctest --output-on-failure -R boost_preprocessor 307 308 - os: linux 309 env: CMAKE_SUBDIR_TEST=1 310 install: true 311 script: 312 - cd test/cmake_subdir_test && mkdir __build__ && cd __build__ 313 - cmake .. 314 - cmake --build . 315 - cmake --build . --target check 316 317 - os: linux 318 env: CMAKE_INSTALL_TEST=1 319 script: 320 - mkdir __build__ && cd __build__ 321 - cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor -DCMAKE_INSTALL_PREFIX=~/.local .. 322 - cmake --build . --target install 323 - cd ../libs/preprocessor/test/cmake_install_test && mkdir __build__ && cd __build__ 324 - cmake -DCMAKE_INSTALL_PREFIX=~/.local .. 325 - cmake --build . 326 - cmake --build . --target check 327 328install: 329 - BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true 330 - cd .. 331 - git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root 332 - cd boost-root 333 - git submodule update --init tools/boostdep 334 - cp -r $TRAVIS_BUILD_DIR/* libs/preprocessor 335 - python tools/boostdep/depinst/depinst.py preprocessor 336 - ./bootstrap.sh 337 - ./b2 headers 338 339script: 340 - |- 341 echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam 342 - ./b2 libs/preprocessor/test -j 3 toolset=$TOOLSET cxxstd=$CXXSTD $ADDRMD 343 344notifications: 345 email: 346 on_success: always 347