summaryrefslogtreecommitdiff
path: root/3rdparty/plibsys/.travis.yml
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/plibsys/.travis.yml')
-rw-r--r--3rdparty/plibsys/.travis.yml171
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