diff --git a/.travis.yml b/.travis.yml index 8c409b4..7e01e92 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,8 +4,6 @@ language: cpp -sudo: false - dist: xenial branches: @@ -26,7 +24,26 @@ matrix: include: - os: linux compiler: g++ - env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11 + env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11,14 ADDRMD=32,64 + addons: + apt: + packages: + - g++-multilib + + - os: linux + arch: arm64 + compiler: g++ + env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11,14 ADDRMD=32,64 + + - os: linux + arch: ppc64le + compiler: g++ + env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11,14 + + - os: linux + arch: s390x + compiler: g++ + env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11,14 ADDRMD=32,64 - os: linux compiler: g++-4.4 @@ -48,109 +65,16 @@ matrix: sources: - ubuntu-toolchain-r-test - - os: linux - compiler: g++-4.7 - env: TOOLSET=gcc COMPILER=g++-4.7 CXXSTD=03,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=03,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=03,11 - addons: - apt: - packages: - - g++-4.9 - sources: - - ubuntu-toolchain-r-test - - - os: linux - compiler: g++-5 - env: TOOLSET=gcc COMPILER=g++-5 CXXSTD=03,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=03,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=03,11,14,17 - addons: - apt: - packages: - - g++-7 - sources: - - ubuntu-toolchain-r-test - - - os: linux - compiler: g++-8 - env: TOOLSET=gcc COMPILER=g++-8 CXXSTD=03,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=03,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=03,11,14,17,2a + env: UBSAN=1 TOOLSET=gcc COMPILER=g++-10 CXXSTD=03,11,14,17,20 UBSAN_OPTIONS=print_stacktrace=1 LINKFLAGS=-fuse-ld=gold addons: apt: packages: - g++-10 sources: - - ubuntu-toolchain-r-test - - - os: linux - compiler: g++-9 - env: UBSAN=1 TOOLSET=gcc COMPILER=g++-9 CXXSTD=03,11,14,17,2a UBSAN_OPTIONS=print_stacktrace=1 LINKFLAGS=-fuse-ld=gold - addons: - apt: - packages: - - g++-9 - sources: - - ubuntu-toolchain-r-test - - - os: linux - compiler: clang++ - env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11 + - sourceline: "ppa:ubuntu-toolchain-r/test" - os: linux dist: trusty @@ -171,176 +95,60 @@ matrix: - clang-3.4 - os: linux - dist: trusty - compiler: clang++-3.5 - env: TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=03,11,14,1z + compiler: clang++-11 + env: UBSAN=1 TOOLSET=clang COMPILER=clang++-11 CXXSTD=03,11,14,17,20 UBSAN_OPTIONS=print_stacktrace=1 addons: apt: packages: - - clang-3.5 + - clang-11 sources: - ubuntu-toolchain-r-test - - - os: linux - compiler: clang++-3.6 - env: TOOLSET=clang COMPILER=clang++-3.6 CXXSTD=03,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=03,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=03,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=03,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=03,11,14,1z - addons: - apt: - packages: - - clang-4.0 - sources: - - ubuntu-toolchain-r-test - - - os: linux - compiler: clang++-5.0 - env: TOOLSET=clang COMPILER=clang++-5.0 CXXSTD=03,11,14,1z - addons: - apt: - packages: - - clang-5.0 - sources: - - ubuntu-toolchain-r-test - - - os: linux - compiler: clang++-6.0 - env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03,11,14,17 - addons: - apt: - packages: - - clang-6.0 - sources: - - ubuntu-toolchain-r-test - - - os: linux - compiler: clang++-7 - env: TOOLSET=clang COMPILER=clang++-7 CXXSTD=03,11,14,17,2a - addons: - apt: - packages: - - clang-7 - sources: - - ubuntu-toolchain-r-test - - llvm-toolchain-xenial-7 - - - os: linux - compiler: clang++-8 - env: TOOLSET=clang COMPILER=clang++-8 CXXSTD=03,11,14,17,2a - addons: - apt: - packages: - - clang-8 - sources: - - ubuntu-toolchain-r-test - - llvm-toolchain-xenial-8 - - - os: linux - compiler: clang++-9 - env: TOOLSET=clang COMPILER=clang++-9 CXXSTD=03,11,14,17,2a - addons: - apt: - packages: - - clang-9 - sources: - - ubuntu-toolchain-r-test - - sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main' + - sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-11 main' key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' - os: linux - dist: xenial - compiler: clang++-10 - env: TOOLSET=clang COMPILER=clang++-10 CXXSTD=03,11,14,17,2a - addons: - apt: - packages: - - clang-10 - sources: - - ubuntu-toolchain-r-test - - sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-10 main' - key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' - - - os: linux - dist: xenial - compiler: clang++-10 - env: UBSAN=1 TOOLSET=clang COMPILER=clang++-10 CXXSTD=03,11,14,17,2a UBSAN_OPTIONS=print_stacktrace=1 - addons: - apt: - packages: - - clang-10 - sources: - - ubuntu-toolchain-r-test - - sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-10 main' - key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key' - - - os: linux - dist: trusty + dist: bionic compiler: clang++-libc++ - env: TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,1z + env: UBSAN=1 TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,17,2a UBSAN_OPTIONS=print_stacktrace=1 addons: apt: packages: - libc++-dev - - os: linux - dist: trusty - compiler: clang++-libc++ - env: UBSAN=1 TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,1z UBSAN_OPTIONS=print_stacktrace=1 - addons: - apt: - packages: - - libc++-dev - - - os: osx - compiler: clang++ - env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z - - - os: osx - compiler: clang++ - env: UBSAN=1 TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z UBSAN_OPTIONS=print_stacktrace=1 - - os: freebsd compiler: clang++ env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,17,2a + - os: osx + compiler: clang++ + env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z ADDRMD=32,64 + osx_image: xcode7.3 + + - os: osx + compiler: clang++ + env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z ADDRMD=32,64 + osx_image: xcode8.3 + + - os: osx + compiler: clang++ + env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z ADDRMD=32,64 + osx_image: xcode9.4 + + - os: osx + compiler: clang++ + env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z + osx_image: xcode10.1 + + - os: osx + osx_image: xcode11.3 + compiler: clang++ + env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z + + - os: osx + osx_image: xcode12.2 + compiler: clang++ + env: UBSAN=1 TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z UBSAN_OPTIONS=print_stacktrace=1 + - os: linux env: CMAKE=1 script: @@ -396,7 +204,7 @@ install: script: - |- echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam - - ./b2 -j3 libs/system/test toolset=$TOOLSET cxxstd=$CXXSTD variant=debug,release ${UBSAN:+cxxflags=-fsanitize=undefined cxxflags=-fno-sanitize-recover=undefined linkflags=-fsanitize=undefined define=UBSAN=1 debug-symbols=on} ${LINKFLAGS:+linkflags=$LINKFLAGS} + - ./b2 -j3 libs/system/test toolset=$TOOLSET cxxstd=$CXXSTD variant=debug,release ${ADDRMD:+address-model=$ADDRMD} ${UBSAN:+cxxflags=-fsanitize=undefined cxxflags=-fno-sanitize-recover=undefined linkflags=-fsanitize=undefined define=UBSAN=1 debug-symbols=on} ${LINKFLAGS:+linkflags=$LINKFLAGS} notifications: email: