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