# Copyright 2016, 2017, 2018 Peter Dimov # Distributed under the Boost Software License, Version 1.0. # (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt) language: cpp os: linux dist: xenial branches: only: - master - develop - /feature\/.*/ env: matrix: - BOGUS_JOB=true matrix: exclude: - env: BOGUS_JOB=true include: - os: linux compiler: g++-4.7 env: TOOLSET=gcc COMPILER=g++-4.7 CXXSTD=11 addons: apt: packages: - g++-4.7 sources: - ubuntu-toolchain-r-test - os: linux compiler: g++-4.8 env: TOOLSET=gcc COMPILER=g++-4.8 CXXSTD=11 addons: apt: packages: - g++-4.8 sources: - ubuntu-toolchain-r-test - os: linux compiler: g++-4.9 env: TOOLSET=gcc COMPILER=g++-4.9 CXXSTD=11 addons: apt: packages: - g++-4.9 sources: - ubuntu-toolchain-r-test - os: linux compiler: g++-5 env: TOOLSET=gcc COMPILER=g++-5 CXXSTD=11,14,1z addons: apt: packages: - g++-5 sources: - ubuntu-toolchain-r-test - os: linux compiler: g++-6 env: TOOLSET=gcc COMPILER=g++-6 CXXSTD=11,14,1z addons: apt: packages: - g++-6 sources: - ubuntu-toolchain-r-test - os: linux compiler: g++-7 env: TOOLSET=gcc COMPILER=g++-7 CXXSTD=11,14,1z addons: apt: packages: - g++-7 sources: - ubuntu-toolchain-r-test - os: linux compiler: g++-8 env: TOOLSET=gcc COMPILER=g++-8 CXXSTD=11,14,17,2a addons: apt: packages: - g++-8 sources: - ubuntu-toolchain-r-test - os: linux compiler: g++-9 env: TOOLSET=gcc COMPILER=g++-9 CXXSTD=11,14,17,2a addons: apt: packages: - g++-9 sources: - ubuntu-toolchain-r-test - os: linux dist: bionic compiler: g++-10 env: TOOLSET=gcc COMPILER=g++-10 CXXSTD=11,14,17,2a addons: apt: packages: - g++-10 sources: - ubuntu-toolchain-r-test - os: linux compiler: g++ env: NVCC=1 before_script: - wget https://developer.nvidia.com/compute/cuda/9.1/Prod/local_installers/cuda_9.1.85_387.26_linux - sh cuda_9.1.85_387.26_linux --silent --toolkit --override --toolkitpath=$HOME/lib/cuda-9.1.85 script: - $HOME/lib/cuda-9.1.85/bin/nvcc -x cu -I . -c -std=c++11 libs/mp11/test/mp11.cpp - os: linux dist: trusty compiler: /usr/bin/clang++ env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=11 addons: apt: packages: - clang-3.3 - os: linux dist: trusty compiler: /usr/bin/clang++ env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=11 addons: apt: packages: - clang-3.4 - os: linux compiler: clang++-3.5 env: TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=11,14,1z addons: apt: packages: - clang-3.5 sources: - ubuntu-toolchain-r-test - os: linux compiler: clang++-3.6 env: TOOLSET=clang COMPILER=clang++-3.6 CXXSTD=11,14,1z addons: apt: packages: - clang-3.6 sources: - ubuntu-toolchain-r-test - os: linux compiler: clang++-3.7 env: TOOLSET=clang COMPILER=clang++-3.7 CXXSTD=11,14,1z addons: apt: packages: - clang-3.7 sources: - ubuntu-toolchain-r-test - os: linux compiler: clang++-3.8 env: TOOLSET=clang COMPILER=clang++-3.8 CXXSTD=11,14,1z addons: apt: packages: - clang-3.8 sources: - ubuntu-toolchain-r-test - os: linux compiler: clang++-3.9 env: TOOLSET=clang COMPILER=clang++-3.9 CXXSTD=11,14,1z addons: apt: packages: - clang-3.9 sources: - ubuntu-toolchain-r-test - os: linux compiler: clang++-4.0 env: TOOLSET=clang COMPILER=clang++-4.0 CXXSTD=11,14,1z addons: apt: packages: - clang-4.0 sources: - ubuntu-toolchain-r-test - os: linux dist: bionic compiler: clang++-5.0 env: TOOLSET=clang COMPILER=clang++-5.0 CXXSTD=11,14,1z addons: apt: packages: - clang-5.0 sources: - ubuntu-toolchain-r-test - os: linux dist: bionic compiler: clang++-6.0 env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=11,14,17 addons: apt: packages: - clang-6.0 sources: - ubuntu-toolchain-r-test - os: linux dist: bionic compiler: clang++-7 env: TOOLSET=clang COMPILER=clang++-7 CXXSTD=11,14,17,2a addons: apt: packages: - clang-7 sources: - ubuntu-toolchain-r-test - llvm-toolchain-bionic-7 - os: linux dist: bionic compiler: clang++-8 env: TOOLSET=clang COMPILER=clang++-8 CXXSTD=11,14,17,2a addons: apt: packages: - clang-8 sources: - ubuntu-toolchain-r-test - llvm-toolchain-bionic-8 - os: linux dist: bionic compiler: clang++-9 env: TOOLSET=clang COMPILER=clang++-9 CXXSTD=11,14,17,2a addons: apt: packages: - clang-9 sources: - ubuntu-toolchain-r-test - sourceline: 'deb https://apt.llvm.org/bionic/ llvm-toolchain-bionic-9 main' key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' - os: linux dist: bionic compiler: clang++-10 env: TOOLSET=clang COMPILER=clang++-10 CXXSTD=11,14,17,2a addons: apt: packages: - clang-10 sources: - ubuntu-toolchain-r-test - sourceline: 'deb https://apt.llvm.org/bionic/ llvm-toolchain-bionic-10 main' key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' - os: linux dist: bionic compiler: clang++-11 env: TOOLSET=clang COMPILER=clang++-11 CXXSTD=11,14,17,2a addons: apt: packages: - clang-11 sources: - ubuntu-toolchain-r-test - sourceline: 'deb https://apt.llvm.org/bionic/ llvm-toolchain-bionic-11 main' key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' - os: linux dist: bionic compiler: clang++-12 env: TOOLSET=clang COMPILER=clang++-12 CXXSTD=11,14,17,2a addons: apt: packages: - clang-12 sources: - ubuntu-toolchain-r-test - sourceline: 'deb https://apt.llvm.org/bionic/ llvm-toolchain-bionic-12 main' key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' - os: linux compiler: clang++-libc++ env: TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=11,14,1z addons: apt: packages: - libc++-dev - os: linux dist: bionic compiler: clang++-5.0 env: CLANG_X_CUDA=1 addons: apt: packages: - clang-5.0 - nvidia-profiler - nvidia-cuda-dev - nvidia-cuda-toolkit sources: - ubuntu-toolchain-r-test script: - clang++-5.0 -I . -c -x cuda -nocudainc -nocudalib --cuda-gpu-arch=sm_30 -D__device__="__attribute__((device))" -std=c++11 libs/mp11/test/mp11.cpp - clang++-5.0 -I . -c -x cuda -nocudainc -nocudalib --cuda-gpu-arch=sm_30 -D__device__="__attribute__((device))" -std=c++14 libs/mp11/test/mp11.cpp - clang++-5.0 -I . -c -x cuda -nocudainc -nocudalib --cuda-gpu-arch=sm_30 -D__device__="__attribute__((device))" -std=c++1z libs/mp11/test/mp11.cpp - os: osx osx_image: xcode7.3 compiler: clang++ env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z - os: osx osx_image: xcode8.3 compiler: clang++ env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z - os: osx osx_image: xcode9.4 compiler: clang++ env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z - os: osx osx_image: xcode10.3 compiler: clang++ env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z - os: osx osx_image: xcode11.6 compiler: clang++ env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z - os: osx osx_image: xcode12.2 compiler: clang++ env: TOOLSET=clang COMPILER=clang++ CXXSTD=11,14,1z - os: linux compiler: clang++ env: CMAKE_STANDALONE_TEST=1 install: true script: - mkdir __build__ && cd __build__ - cmake .. - cmake --build . --target tests - ctest --output-on-failure - os: linux compiler: clang++ env: CMAKE_SUBDIR_TEST=1 install: true script: - cd test/cmake_subdir_test && mkdir __build__ && cd __build__ - cmake .. - cmake --build . - cmake --build . --target check - os: linux compiler: clang++ env: CMAKE_INSTALL_TEST=1 install: true script: - mkdir __build__ && cd __build__ - cmake -DCMAKE_INSTALL_PREFIX=~/.local .. - cmake --build . --target install - cd ../test/cmake_install_test && mkdir __build__ && cd __build__ - cmake -DCMAKE_INSTALL_PREFIX=~/.local .. - cmake --build . - cmake --build . --target check - os: linux compiler: clang++ env: BOOST_CMAKE_TEST=1 script: - mkdir __build__ && cd __build__ - cmake -DBUILD_TESTING=ON -DBOOST_INCLUDE_LIBRARIES=mp11 .. - cmake --build . --target tests - ctest --output-on-failure install: - BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true - cd .. - git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root - cd boost-root - git submodule update --init tools/boostdep - mkdir -p libs/mp11 - cp -r $TRAVIS_BUILD_DIR/* libs/mp11 - python tools/boostdep/depinst/depinst.py mp11 - ./bootstrap.sh - ./b2 headers script: - |- echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam - ./b2 -j3 libs/mp11/test toolset=$TOOLSET cxxstd=$CXXSTD ${CXXFLAGS:+cxxflags="$CXXFLAGS"} notifications: email: on_success: always