From a7707e7345efa2be86d5f73e79fc8e36aee6d06b Mon Sep 17 00:00:00 2001 From: Glen Fernandes Date: Mon, 26 Aug 2019 20:15:55 -0400 Subject: [PATCH] Update Library meta information and Travis configuration --- .travis.yml | 350 +++++++++++++++++++++++++++++++++++--------- meta/libraries.json | 1 + 2 files changed, 285 insertions(+), 66 deletions(-) diff --git a/.travis.yml b/.travis.yml index 55f8395..9e3c0ab 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,74 +1,292 @@ -# Copyright (C) 2016 Daniel James. -# Distributed under the Boost Software License, Version 1.0. (See accompanying -# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +# Copyright 2016 Daniel James +# Copyright 2018 Peter Dimov +# Copyright 2019 Glen Fernandes +# Distributed under the Boost Software License, Version 1.0. + +language: cpp + +sudo: false -# Use Trusty to get a reasonably recent version of Boost. -sudo: required dist: trusty -language: c++ +python: "2.7" + +branches: + only: + - master + - develop + +env: + matrix: + - BOGUS_JOB=true matrix: - include: - - compiler: gcc - env: | - USER_CONFIG="using gcc : : g++-4.8 ;" - CXXSTD=03,11 - - compiler: clang - env: | - USER_CONFIG="using clang : : clang++ ;" - CXXSTD=03,11 - - compiler: clang - env: | - USER_CONFIG="using clang : : clang++ -D_HAS_AUTO_PTR_ETC=0 ;" - CXXSTD=11 -before_script: - - export BOOST_VERSION=1.67.0 - - export BOOST_FILENAME=boost_1_67_0 - - export BOOST_ROOT=${HOME}/boost - - cd ${TRAVIS_BUILD_DIR} - - touch Jamroot.jam - - cd $HOME - - echo $USER_CONFIG > ~/user-config.jam - - cat ~/user-config.jam - - | - mkdir $HOME/download - mkdir $HOME/extract - cd $HOME/download - if [ "$TRAVIS_EVENT_TYPE" == "cron" ] - then - if [ "$TRAVIS_BRANCH" == "master" ] - then - snapshot_branch=master - else - snapshot_branch=develop - fi - download_url=$(curl https://api.bintray.com/packages/boostorg/$snapshot_branch/snapshot/files | - python -c "import os.path, sys, json; x = json.load(sys.stdin); print '\n'.join(a['path'] for a in x if os.path.splitext(a['path'])[1] == '.bz2')" | - head -n 1 | - sed "s/^/http:\/\/dl.bintray.com\/boostorg\/$snapshot_branch\//") - else - download_url=https://sourceforge.net/projects/boost/files/boost/${BOOST_VERSION}/${BOOST_FILENAME}.tar.bz2/download - fi - echo "Downloading ${download_url}" - wget -O boost.tar.bz2 $download_url - cd $HOME/extract - tar -xjf $HOME/download/boost.tar.bz2 - mv * ${BOOST_ROOT} - - rm ${BOOST_ROOT}/boost/functional.hpp - - find ${BOOST_ROOT}/boost/functional -type f | grep -v hash | xargs -r rm - - cd ${BOOST_ROOT}/tools/build - - mkdir ${HOME}/opt - - ./bootstrap.sh - - ./b2 install --prefix=$HOME/opt + exclude: + - env: BOGUS_JOB=true + + include: + - os: linux + compiler: g++ + env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11 + + - 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 + 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 + addons: + apt: + packages: + - g++-8 + sources: + - ubuntu-toolchain-r-test + + - os: linux + compiler: g++-8 + env: TOOLSET=gcc COMPILER=g++-8 CXXSTD=17,2a + addons: + apt: + packages: + - g++-8 + sources: + - 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 + addons: + apt: + packages: + - clang-3.3 + + - os: linux + compiler: /usr/bin/clang++ + env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11 + addons: + apt: + packages: + - clang-3.4 + + - os: linux + compiler: clang++-3.5 + env: TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=03,11,14,1z + addons: + apt: + packages: + - clang-3.5 + - libstdc++-4.9-dev + sources: + - ubuntu-toolchain-r-test + - llvm-toolchain-precise-3.5 + + - 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 + - llvm-toolchain-precise-3.6 + + - 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 + - llvm-toolchain-precise-3.7 + + - os: linux + 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 + sources: + - ubuntu-toolchain-r-test + - llvm-toolchain-precise-3.8 + + - os: linux + 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 + sources: + - ubuntu-toolchain-r-test + - llvm-toolchain-precise-3.9 + + - 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 + - llvm-toolchain-trusty-4.0 + + - 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 + - llvm-toolchain-trusty-5.0 + + - os: linux + compiler: clang++-6.0 + env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03,11,14,17,2a + addons: + apt: + packages: + - clang-6.0 + sources: + - ubuntu-toolchain-r-test + - llvm-toolchain-trusty-6.0 + + - 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-trusty-7 + + - os: linux + compiler: clang++-libc++ + env: TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,1z + addons: + apt: + packages: + - libc++-dev + + - os: osx + compiler: clang++ + env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z + +install: + - BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true + - cd .. + - git clone -b $BOOST_BRANCH https://github.com/boostorg/boost.git boost + - cd boost + - git submodule update --init tools/build + - git submodule update --init libs/config + - git submodule update --init tools/boostdep + - mkdir -p libs/functional + - cp -r $TRAVIS_BUILD_DIR/* libs/functional + - python tools/boostdep/depinst/depinst.py functional + - ./bootstrap.sh + - ./b2 headers script: - - cd ${TRAVIS_BUILD_DIR}/test - - ${HOME}/opt/bin/b2 -j 3 cxxstd=$CXXSTD -q include=${BOOST_ROOT} include=${TRAVIS_BUILD_DIR}/include - - cd ${TRAVIS_BUILD_DIR}/forward/test - - ${HOME}/opt/bin/b2 -j 3 cxxstd=$CXXSTD -q include=${BOOST_ROOT} include=${TRAVIS_BUILD_DIR}/include - - cd ${TRAVIS_BUILD_DIR}/factory/test - - ${HOME}/opt/bin/b2 -j 3 cxxstd=$CXXSTD -q include=${BOOST_ROOT} include=${TRAVIS_BUILD_DIR}/include - - cd ${TRAVIS_BUILD_DIR}/overloaded_function/test - - ${HOME}/opt/bin/b2 -j 3 cxxstd=$CXXSTD -q include=${BOOST_ROOT} include=${TRAVIS_BUILD_DIR}/include + - |- + echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam + - cd libs/functional + - ../../b2 -j 3 test toolset=$TOOLSET cxxstd=$CXXSTD + - ../../b2 -j 3 forward/test toolset=$TOOLSET cxxstd=$CXXSTD + - ../../b2 -j 3 factory/test toolset=$TOOLSET cxxstd=$CXXSTD + - ../../b2 -j 3 overloaded_function/test toolset=$TOOLSET cxxstd=$CXXSTD + +notifications: + email: + on_success: always diff --git a/meta/libraries.json b/meta/libraries.json index 7b191f2..5b63742 100644 --- a/meta/libraries.json +++ b/meta/libraries.json @@ -19,6 +19,7 @@ "Tobias Schwinger" ], "maintainers": [ + "Glen Fernandes " "Tobias Schwinger " ], "description": "Function object templates for dynamic and static object creation",