diff --git a/.travis.yml b/.travis.yml index fc68de4..13bd0d2 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,5 @@ # Copyright 2016, 2017, 2018 Peter Dimov +# Copyright 2019 Andrey Semashev # 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) @@ -22,12 +23,10 @@ matrix: - env: BOGUS_JOB=true include: +# gcc, Linux - os: linux - compiler: g++ - env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11 - - - os: linux - compiler: g++-4.4 + dist: trusty + compiler: gcc-4.4 env: TOOLSET=gcc COMPILER=g++-4.4 CXXSTD=98,0x addons: apt: @@ -37,7 +36,8 @@ matrix: - ubuntu-toolchain-r-test - os: linux - compiler: g++-4.6 + dist: trusty + compiler: gcc-4.6 env: TOOLSET=gcc COMPILER=g++-4.6 CXXSTD=03,0x addons: apt: @@ -47,7 +47,8 @@ matrix: - ubuntu-toolchain-r-test - os: linux - compiler: g++-4.7 + dist: trusty + compiler: gcc-4.7 env: TOOLSET=gcc COMPILER=g++-4.7 CXXSTD=03,11 addons: apt: @@ -57,7 +58,8 @@ matrix: - ubuntu-toolchain-r-test - os: linux - compiler: g++-4.8 + dist: xenial + compiler: gcc-4.8 env: TOOLSET=gcc COMPILER=g++-4.8 CXXSTD=03,11 addons: apt: @@ -65,8 +67,10 @@ matrix: - g++-4.8 sources: - ubuntu-toolchain-r-test + - os: linux - compiler: g++-4.9 + dist: xenial + compiler: gcc-4.9 env: TOOLSET=gcc COMPILER=g++-4.9 CXXSTD=03,11 addons: apt: @@ -76,7 +80,8 @@ matrix: - ubuntu-toolchain-r-test - os: linux - compiler: g++-5 + dist: xenial + compiler: gcc-5 env: TOOLSET=gcc COMPILER=g++-5 CXXSTD=03,11,14,1z addons: apt: @@ -86,7 +91,8 @@ matrix: - ubuntu-toolchain-r-test - os: linux - compiler: g++-6 + dist: xenial + compiler: gcc-6 env: TOOLSET=gcc COMPILER=g++-6 CXXSTD=03,11,14,1z addons: apt: @@ -96,7 +102,8 @@ matrix: - ubuntu-toolchain-r-test - os: linux - compiler: g++-7 + dist: xenial + compiler: gcc-7 env: TOOLSET=gcc COMPILER=g++-7 CXXSTD=03,11,14,17 addons: apt: @@ -106,7 +113,8 @@ matrix: - ubuntu-toolchain-r-test - os: linux - compiler: g++-8 + dist: xenial + compiler: gcc-8 env: TOOLSET=gcc COMPILER=g++-8 CXXSTD=03,11,14,17 addons: apt: @@ -116,27 +124,34 @@ matrix: - ubuntu-toolchain-r-test - os: linux - compiler: clang++ - env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11 - - - os: linux - compiler: /usr/bin/clang++ - env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11 + dist: bionic + compiler: gcc-9 + env: TOOLSET=gcc COMPILER=g++-9 CXXSTD=03,11,14,17 addons: apt: packages: - - clang-3.3 + - g++-9 + sources: + - sourceline: "ppa:ubuntu-toolchain-r/test" +# clang, Linux - os: linux - compiler: /usr/bin/clang++ - env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11 + dist: trusty + compiler: clang-3.4 + env: TOOLSET=clang COMPILER=clang++-3.4 CXXSTD=03,11 addons: apt: packages: - clang-3.4 + - libstdc++-4.9-dev + sources: + - ubuntu-toolchain-r-test + - sourceline: "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.4 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" - os: linux - compiler: clang++-3.5 + dist: trusty + compiler: clang-3.5 env: TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=03,11,14,1z addons: apt: @@ -145,109 +160,176 @@ matrix: - libstdc++-4.9-dev sources: - ubuntu-toolchain-r-test - - llvm-toolchain-precise-3.5 + - sourceline: "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.5 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" - os: linux - compiler: clang++-3.6 + dist: trusty + compiler: clang-3.6 env: TOOLSET=clang COMPILER=clang++-3.6 CXXSTD=03,11,14,1z addons: apt: packages: - clang-3.6 + - libstdc++-5-dev sources: - ubuntu-toolchain-r-test - - llvm-toolchain-precise-3.6 + - sourceline: "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.6 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" - os: linux - compiler: clang++-3.7 + dist: trusty + compiler: clang-3.7 env: TOOLSET=clang COMPILER=clang++-3.7 CXXSTD=03,11,14,1z addons: apt: packages: - clang-3.7 + - libstdc++-5-dev sources: - ubuntu-toolchain-r-test - - llvm-toolchain-precise-3.7 + - sourceline: "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.7 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" - os: linux - compiler: clang++-3.8 + dist: xenial + compiler: clang-3.8 env: TOOLSET=clang COMPILER=clang++-3.8 CXXSTD=03,11,14,1z addons: apt: packages: - clang-3.8 - - libstdc++-4.9-dev + - libstdc++-6-dev sources: - ubuntu-toolchain-r-test - - llvm-toolchain-precise-3.8 + - sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-3.8 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" - os: linux - compiler: clang++-3.9 + dist: xenial + compiler: clang-3.9 env: TOOLSET=clang COMPILER=clang++-3.9 CXXSTD=03,11,14,1z addons: apt: packages: - clang-3.9 - - libstdc++-4.9-dev + - libstdc++-6-dev sources: - ubuntu-toolchain-r-test - - llvm-toolchain-precise-3.9 + - sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-3.9 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" - os: linux - compiler: clang++-4.0 + dist: xenial + compiler: clang-4 env: TOOLSET=clang COMPILER=clang++-4.0 CXXSTD=03,11,14,1z addons: apt: packages: - clang-4.0 + - libstdc++-6-dev sources: - ubuntu-toolchain-r-test - - llvm-toolchain-trusty-4.0 + - sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-4.0 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" - os: linux - compiler: clang++-5.0 + dist: xenial + compiler: clang-5 env: TOOLSET=clang COMPILER=clang++-5.0 CXXSTD=03,11,14,1z addons: apt: packages: - clang-5.0 + - libstdc++-7-dev sources: - ubuntu-toolchain-r-test - - llvm-toolchain-trusty-5.0 + - sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-5.0 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" - os: linux - compiler: clang++-6.0 - env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03,11,14,1z + dist: xenial + compiler: clang-6 + env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03,11,14,17 addons: apt: packages: - clang-6.0 + - libstdc++-8-dev sources: - ubuntu-toolchain-r-test - - llvm-toolchain-trusty-6.0 + - sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-6.0 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" - os: linux - compiler: clang++-7 + dist: xenial + compiler: clang-7 env: TOOLSET=clang COMPILER=clang++-7 CXXSTD=03,11,14,17 addons: apt: packages: - clang-7 + - libstdc++-8-dev sources: - ubuntu-toolchain-r-test - - llvm-toolchain-trusty-7 + - sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-7 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" - os: linux - compiler: clang++-libc++ - env: TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,1z + dist: xenial + compiler: clang-8 + env: TOOLSET=clang COMPILER=clang++-8 CXXSTD=03,11,14,17 addons: apt: packages: - - libc++-dev + - clang-8 + - libstdc++-8-dev + sources: + - ubuntu-toolchain-r-test + - sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" + + - os: linux + dist: xenial + compiler: clang-9 + env: TOOLSET=clang COMPILER=clang++-9 CXXSTD=03,11,14,17 + addons: + apt: + packages: + - clang-9 + - libstdc++-9-dev + sources: + - sourceline: "ppa:ubuntu-toolchain-r/test" + - sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" + + - os: linux + dist: xenial + compiler: clang-libc++ + env: TOOLSET=clang COMPILER=clang++-9 CXXSTD=03,11,14,17 CXXFLAGS="-stdlib=libc++" LINKFLAGS="-stdlib=libc++" + addons: + apt: + packages: + - clang-9 + - libc++-9-dev + - libc++abi-9-dev + sources: + - sourceline: "ppa:ubuntu-toolchain-r/test" + - sourceline: "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main" + key_url: "https://apt.llvm.org/llvm-snapshot.gpg.key" + +# clang, OS X + - os: osx + env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z + osx_image: xcode9.4 - os: osx - compiler: clang++ env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z + osx_image: xcode10.3 + + - os: osx + env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,17 + osx_image: xcode11.2 install: - GIT_FETCH_JOBS=8 @@ -271,7 +353,7 @@ script: - |- echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam - BUILD_JOBS=`(nproc || sysctl -n hw.ncpu) 2> /dev/null` - - ./b2 -j $BUILD_JOBS libs/detail/test toolset=$TOOLSET cxxstd=$CXXSTD + - ./b2 -j $BUILD_JOBS libs/detail/test toolset=$TOOLSET cxxstd=$CXXSTD ${CXXFLAGS:+cxxflags="$CXXFLAGS"} ${LINKFLAGS:+linkflags="$LINKFLAGS"} notifications: email: