diff options
Diffstat (limited to '3rdparty/plibsys/.travis.yml')
-rw-r--r-- | 3rdparty/plibsys/.travis.yml | 171 |
1 files changed, 171 insertions, 0 deletions
diff --git a/3rdparty/plibsys/.travis.yml b/3rdparty/plibsys/.travis.yml new file mode 100644 index 0000000..55641b1 --- /dev/null +++ b/3rdparty/plibsys/.travis.yml @@ -0,0 +1,171 @@ +env: + global: + # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created + # via the "travis encrypt" command using the project repo's public key + - secure: "Jw8Q8kFOfP4kiicGpZX496H0Hhi2+PzQ5wSpSJ/+e4rdQ/PnQuCvJfyAJ/k6+7BmgeS80T4sfK5xB5nX3yZG1FA4VE4kXuppJlVSwTZer0dlbbK3rvdSChBf5/Nnfjsj/Ch2SjjwhOt8zhjVutWuT2wz9RwOO39heQf3KFb4qbaVbnaBRTiGYJ+6D/28dX5foMehTohtcN1WKUZULum4cP8tqdn2+0cH+afwDwODap4v8brEW8HifS4QGDejAE7zR9fr3BaJl2m9s8art5lGzoK6Qaf2SS8WBW0MVzv2CP6zfsLUmPm3WijGUzAIPPi5GRFSy7O0GdkhHziMof1vyE3irXLSFlhg5g76lHEI2vpE6m+/PQ4I9jp7+oBT0N4SadgiXReXxewAZRrInCOstNN/mWIF0C0r1gWvPS3uM5u4PfGRa72GJ39SWmDvQqmOHOy15ZGA2eyw8piLAVkVJKvhufNfwEULITHE9xQXCV3e0YZrNIjMofuRszz7yLHEXlhwJxG++E4h0uCKnCqLTcLas8sBcRw98H/k9s8yZR3u9v0F0qqX/wus2TvfMjsfOqMm9MyqTXexpsMiODiN0a8zpdhufDlyxgr+2S96NlER7Iu0aRPBVgfDP2COPxmVW4ZwDpZYxK6iANeiYVuQGHccDHjZRyiSCG2c47EKV14=" + - COVERITY_SCAN_PROJECT_NAME="saprykin/plibsys" + - COVERITY_SCAN_BRANCH_PATTERN="coverity_scan" + - COVERITY_SCAN_NOTIFICATION_EMAIL="saprykin.spb@gmail.com" + - COVERITY_SCAN_BUILD_COMMAND="make" + +language: generic +dist: xenial + +matrix: + include: + # Code coverage build + - os: linux + addons: { apt: { packages: [lcov] } } + env: CC=gcc CXX=g++ GCOV=gcov USE_GCOV=1 + # Linux x64 builds (GCC) + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-4.9, g++-4.9] } } + env: CC=gcc-4.9 CXX=g++-4.9 ARCH=64 USE_COVERITY=1 + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-5, g++-5] } } + env: CC=gcc-5 CXX=g++-5 ARCH=64 + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-6, g++-6] } } + env: CC=gcc-6 CXX=g++-6 ARCH=64 + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-7, g++-7] } } + env: CC=gcc-7 CXX=g++-7 ARCH=64 + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-8, g++-8] } } + env: CC=gcc-8 CXX=g++-8 ARCH=64 + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-9, g++-9] } } + env: CC=gcc-9 CXX=g++-9 ARCH=64 + # IBM Power builds (GCC) + - os: linux + arch: ppc64le + env: CC=gcc CXX=g++ + # IBM Z builds (GCC) + - os: linux + arch: s390x + env: CC=gcc CXX=g++ + # Amazon Graviton-2 ARM + - os: linux + arch: arm64 + env: CC=gcc CXX=g++ + # Linux x86 builds (GCC) + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-4.9, g++-4.9, gcc-multilib, g++-multilib, gcc-4.9-multilib, g++-4.9-multilib, linux-libc-dev] } } + env: CC=gcc-4.9 CXX=g++-4.9 ARCH=32 + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-5, g++-5, gcc-multilib, g++-multilib, gcc-5-multilib, g++-5-multilib, linux-libc-dev] } } + env: CC=gcc-5 CXX=g++-5 ARCH=32 + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-6, g++-6, gcc-multilib, g++-multilib, gcc-6-multilib, g++-6-multilib, linux-libc-dev] } } + env: CC=gcc-6 CXX=g++-6 ARCH=32 + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-7, g++-7, gcc-multilib, g++-multilib, gcc-7-multilib, g++-7-multilib, linux-libc-dev] } } + env: CC=gcc-7 CXX=g++-7 ARCH=32 + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-8, g++-8, gcc-multilib, g++-multilib, gcc-8-multilib, g++-8-multilib, linux-libc-dev] } } + env: CC=gcc-8 CXX=g++-8 ARCH=32 + - os: linux + addons: { apt: { sources: ubuntu-toolchain-r-test, packages: [gcc-9, g++-9, gcc-multilib, g++-multilib, gcc-9-multilib, g++-9-multilib, linux-libc-dev] } } + env: CC=gcc-9 CXX=g++-9 ARCH=32 + # Linux x64 builds (Clang) + - os: linux + addons: { apt: { sources: [ubuntu-toolchain-r-test, llvm-toolchain-trusty-3.6], packages: [clang-3.6, libc++-dev] } } + env: CC=clang-3.6 CXX=clang++-3.6 + - os: linux + addons: { apt: { sources: [ubuntu-toolchain-r-test, llvm-toolchain-trusty-3.7], packages: [clang-3.7, libc++-dev] } } + env: CC=clang-3.7 CXX=clang++-3.7 + - os: linux + addons: { apt: { sources: [ubuntu-toolchain-r-test, llvm-toolchain-xenial-3.8], packages: [clang-3.8, libc++-dev] } } + env: CC=clang-3.8 CXX=clang++-3.8 + - os: linux + addons: { apt: { sources: [ubuntu-toolchain-r-test, llvm-toolchain-xenial-3.9], packages: [clang-3.9, libc++-dev] } } + env: CC=clang-3.9 CXX=clang++-3.9 + - os: linux + addons: { apt: { sources: [ubuntu-toolchain-r-test, llvm-toolchain-xenial-4.0], packages: [clang-4.0, libc++-dev] } } + env: CC=clang-4.0 CXX=clang++-4.0 + - os: linux + addons: { apt: { sources: [ubuntu-toolchain-r-test, llvm-toolchain-xenial-5.0], packages: [clang-5.0, libc++-dev] } } + env: CC=clang-5.0 CXX=clang++-5.0 + - os: linux + addons: { apt: { sources: [ubuntu-toolchain-r-test, llvm-toolchain-xenial-6.0], packages: [clang-6.0, libc++-dev] } } + env: CC=clang-6.0 CXX=clang++-6.0 + - os: linux + addons: { apt: { sources: [ubuntu-toolchain-r-test, llvm-toolchain-xenial-7], packages: [clang-7, libc++-dev] } } + env: CC=clang-7 CXX=clang++-7 + - os: linux + addons: { apt: { sources: [ubuntu-toolchain-r-test, llvm-toolchain-xenial-8], packages: [clang-8, libc++-dev] } } + env: CC=clang-8 CXX=clang++-8 + # macOS builds (GCC) + - os: osx + osx_image: xcode10.2 + env: FORMULA=gcc@6 CC=gcc-6 CXX=g++-6 + - os: osx + osx_image: xcode10.2 + env: FORMULA=gcc@7 CC=gcc-7 CXX=g++-7 + - os: osx + osx_image: xcode10.2 + env: FORMULA=gcc@8 CC=gcc-8 CXX=g++-8 + - os: osx + osx_image: xcode10.2 + env: FORMULA=gcc@9 CC=gcc-9 CXX=g++-9 + # macOS builds (Clang) + - os: osx + osx_image: xcode6.4 + env: CC=clang CXX=clang++ + - os: osx + osx_image: xcode7.3 + env: CC=clang CXX=clang++ + - os: osx + osx_image: xcode8.3 + env: CC=clang CXX=clang++ + - os: osx + osx_image: xcode9.2 + env: CC=clang CXX=clang++ + - os: osx + osx_image: xcode9.4 + env: CC=clang CXX=clang++ + - os: osx + osx_image: xcode10.3 + env: CC=clang CXX=clang++ + - os: osx + osx_image: xcode11.3 + env: CC=clang CXX=clang++ + - os: osx + osx_image: xcode12 + env: CC=clang CXX=clang++ + +branches: + only: + - master + - coverity_scan + +before_install: + - if [[ "${TRAVIS_BRANCH}" == "coverity_scan" ]]; then export USE_GCOV="" ; fi + - if [[ "${TRAVIS_OS_NAME}" == "osx" ]] && (! [[ -z ${FORMULA+x} ]] || ! [[ -z ${USE_GCOV} ]]) ; then brew update ; fi + - if [[ "${TRAVIS_OS_NAME}" == "osx" ]] && [[ "${USE_GCOV}" == "1" ]]; then brew install lcov ; fi + - if [[ "${TRAVIS_OS_NAME}" == "osx" ]] && ! [[ -z ${FORMULA+x} ]]; then brew cask uninstall oclint || true; fi + - if [[ "${TRAVIS_OS_NAME}" == "osx" ]] && ! [[ -z ${FORMULA+x} ]]; then brew unlink gcc || true; fi + - if [[ "${TRAVIS_OS_NAME}" == "osx" ]] && ! [[ -z ${FORMULA+x} ]]; then brew unlink ${FORMULA} || true; fi + - if [[ "${TRAVIS_OS_NAME}" == "osx" ]] && ! [[ -z ${FORMULA+x} ]]; then brew install ${FORMULA}; fi + - if [[ "${TRAVIS_OS_NAME}" == "osx" ]] && ! [[ -z ${FORMULA+x} ]]; then brew link ${FORMULA}; fi + +before_script: + - mkdir ./plibsys-build + - cd ./plibsys-build + - ${CC} --version + - ${CC} -dM -E - < /dev/null + - ${CXX} --version + - ${CXX} -dM -E -x c++ - < /dev/null + - if ! [[ -z ${ARCH+x} ]]; then export CMAKE_ARCH_PARAM=-m${ARCH} ; fi + - if [[ "${USE_GCOV}" == "1" ]]; then cmake -DPLIBSYS_COVERAGE=ON -DCMAKE_C_COMPILER=${CC} -DCMAKE_CXX_COMPILER=${CXX} -DCMAKE_C_FLAGS=${CMAKE_ARCH_PARAM} -DCMAKE_CXX_FLAGS=${CMAKE_ARCH_PARAM} .. ; fi + - if ! [[ "${USE_GCOV}" == "1" ]]; then cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=${CC} -DCMAKE_CXX_COMPILER=${CXX} -DCMAKE_C_FLAGS=${CMAKE_ARCH_PARAM} -DCMAKE_CXX_FLAGS=${CMAKE_ARCH_PARAM} .. ; fi + - if [[ "${TRAVIS_BRANCH}" == "coverity_scan" ]] && [[ "${USE_COVERITY}" == "1" ]]; then export COVERITY_SCAN_BUILD_COMMAND_PREPEND="cov-configure --comptype gcc --compiler ${CC} --template" ; fi + - if [[ "${TRAVIS_BRANCH}" == "coverity_scan" ]] && [[ "${USE_COVERITY}" == "1" ]]; then curl -s "https://scan.coverity.com/scripts/travisci_build_coverity_scan.sh" | bash || true ; fi + +script: + - make -j 2 + - if [[ "${TRAVIS_BRANCH}" != "coverity_scan" ]]; then ctest --output-on-failure -V -C Release; fi + +after_success: + - if [[ "${USE_GCOV}" == "1" ]]; then lcov --gcov-tool ${GCOV} --directory . --capture --output-file coverage.info ; fi + - if [[ "${USE_GCOV}" == "1" ]]; then bash <(curl -s https://codecov.io/bash) -x ${GCOV} ; fi |