219 lines
6.3 KiB
YAML
219 lines
6.3 KiB
YAML
|
# Copyright 2016-2019 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
|
||
|
|
||
|
dist: xenial
|
||
|
|
||
|
branches:
|
||
|
only:
|
||
|
- master
|
||
|
- develop
|
||
|
- /feature\/.*/
|
||
|
|
||
|
env:
|
||
|
matrix:
|
||
|
- BOGUS_JOB=true
|
||
|
|
||
|
matrix:
|
||
|
|
||
|
exclude:
|
||
|
- env: BOGUS_JOB=true
|
||
|
|
||
|
include:
|
||
|
- os: linux
|
||
|
compiler: g++
|
||
|
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
|
||
|
env: TOOLSET=gcc COMPILER=g++-4.4 CXXSTD=98,0x
|
||
|
addons:
|
||
|
apt:
|
||
|
packages:
|
||
|
- g++-4.4
|
||
|
sources:
|
||
|
- ubuntu-toolchain-r-test
|
||
|
|
||
|
- os: linux
|
||
|
compiler: g++-4.6
|
||
|
env: TOOLSET=gcc COMPILER=g++-4.6 CXXSTD=03,0x
|
||
|
addons:
|
||
|
apt:
|
||
|
packages:
|
||
|
- g++-4.6
|
||
|
sources:
|
||
|
- ubuntu-toolchain-r-test
|
||
|
|
||
|
- os: linux
|
||
|
dist: trusty
|
||
|
compiler: g++
|
||
|
env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11
|
||
|
|
||
|
- os: linux
|
||
|
dist: bionic
|
||
|
compiler: g++-11
|
||
|
env: UBSAN=1 TOOLSET=gcc COMPILER=g++-11 CXXSTD=03,11,14,17,20 UBSAN_OPTIONS=print_stacktrace=1 LINKFLAGS=-fuse-ld=gold
|
||
|
addons:
|
||
|
apt:
|
||
|
packages:
|
||
|
- g++-11
|
||
|
sources:
|
||
|
- sourceline: "ppa:ubuntu-toolchain-r/test"
|
||
|
|
||
|
- os: linux
|
||
|
dist: trusty
|
||
|
compiler: /usr/bin/clang++
|
||
|
env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11
|
||
|
addons:
|
||
|
apt:
|
||
|
packages:
|
||
|
- clang-3.3
|
||
|
|
||
|
- os: linux
|
||
|
dist: trusty
|
||
|
compiler: /usr/bin/clang++
|
||
|
env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11
|
||
|
addons:
|
||
|
apt:
|
||
|
packages:
|
||
|
- clang-3.4
|
||
|
|
||
|
- os: linux
|
||
|
compiler: clang++-12
|
||
|
env: UBSAN=1 TOOLSET=clang COMPILER=clang++-12 CXXSTD=03,11,14,17,20 UBSAN_OPTIONS=print_stacktrace=1
|
||
|
addons:
|
||
|
apt:
|
||
|
packages:
|
||
|
- clang-12
|
||
|
sources:
|
||
|
- ubuntu-toolchain-r-test
|
||
|
- sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-12 main'
|
||
|
key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
|
||
|
|
||
|
- os: linux
|
||
|
dist: bionic
|
||
|
compiler: clang++-libc++
|
||
|
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: 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:
|
||
|
- mkdir __build__ && cd __build__
|
||
|
- cmake -DBOOST_INCLUDE_LIBRARIES=system -DBUILD_TESTING=ON ..
|
||
|
- cmake --build . --target tests
|
||
|
- ctest --output-on-failure --no-tests=error
|
||
|
|
||
|
- os: linux
|
||
|
env: CMAKE=1 BUILD_SHARED_LIBS=ON
|
||
|
script:
|
||
|
- mkdir __build__ && cd __build__
|
||
|
- cmake -DBUILD_SHARED_LIBS=ON -DBOOST_INCLUDE_LIBRARIES=system -DBUILD_TESTING=ON ..
|
||
|
- cmake --build . --target tests
|
||
|
- ctest --output-on-failure --no-tests=error
|
||
|
|
||
|
- os: linux
|
||
|
env: CMAKE_SUBDIR_TEST=1
|
||
|
install:
|
||
|
- BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
|
||
|
- git clone -b $BOOST_BRANCH https://github.com/boostorg/assert.git ../assert
|
||
|
- git clone -b $BOOST_BRANCH https://github.com/boostorg/config.git ../config
|
||
|
- git clone -b $BOOST_BRANCH https://github.com/boostorg/core.git ../core
|
||
|
- git clone -b $BOOST_BRANCH https://github.com/boostorg/predef.git ../predef
|
||
|
- git clone -b $BOOST_BRANCH https://github.com/boostorg/winapi.git ../winapi
|
||
|
script:
|
||
|
- cd test/cmake_subdir_test && mkdir __build__ && cd __build__
|
||
|
- cmake ..
|
||
|
- cmake --build .
|
||
|
- cmake --build . --target check
|
||
|
|
||
|
- os: linux
|
||
|
env: CMAKE_INSTALL=1
|
||
|
script:
|
||
|
- pip install --user cmake
|
||
|
- mkdir __build__ && cd __build__
|
||
|
- cmake -DBOOST_INCLUDE_LIBRARIES=system -DCMAKE_INSTALL_PREFIX=~/.local ..
|
||
|
- cmake --build . --target install
|
||
|
- cd ../libs/system/test/cmake_install_test && mkdir __build__ && cd __build__
|
||
|
- cmake -DCMAKE_INSTALL_PREFIX=~/.local ..
|
||
|
- cmake --build .
|
||
|
- cmake --build . --target check
|
||
|
|
||
|
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
|
||
|
- cp -r $TRAVIS_BUILD_DIR/* libs/system
|
||
|
- python tools/boostdep/depinst/depinst.py system
|
||
|
- ./bootstrap.sh
|
||
|
- ./b2 headers
|
||
|
|
||
|
script:
|
||
|
- |-
|
||
|
echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam
|
||
|
- ./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:
|
||
|
on_success: always
|