Unverified Commit c03dc7e0 authored by Dennis Jenkins's avatar Dennis Jenkins Committed by GitHub

Merge pull request #444 from ciody/master

Extend Travis compiler coverage
parents f8a3a766 cfdaf7b7
language: cpp
sudo: required
dist: trusty
script:
- mkdir build
- cd build
- cmake -DPISTACHE_BUILD_EXAMPLES=true -DPISTACHE_BUILD_TESTS=true -DPISTACHE_SSL=true ..
- make all test ARGS="-V"
compiler:
- clang
- gcc-5
before_install:
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
- sudo apt-get update -qq
- sudo apt-get install -qq libyajl-dev libxml2-dev libxqilla-dev libssl-dev libcurl4-openssl-dev
- if [ "$CXX" = "clang++" ]; then sudo apt-get install -qq libstdc++-5-dev; fi
- if [ "$CXX" = "g++" ]; then sudo apt-get install -qq g++-5; fi
- if [ "$CXX" = "g++" ]; then export CXX="g++-5" CC="gcc-5"; fi
sudo: true
branches:
only:
- master
matrix:
include:
# Linux clang builds
- os: linux
compiler: clang
env: COMPILER=clang++-4.0
addons:
apt:
sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-trusty-4.0']
packages: [
'cmake',
'clang-4.0',
'libstdc++-6-dev',
'libssl-dev',
'libcurl4-openssl-dev',
'gdb'
]
- os: linux
compiler: clang
env: COMPILER=clang++-5.0
addons:
apt:
sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-trusty-5.0']
packages: [
'cmake',
'clang-5.0',
'libstdc++-6-dev',
'libssl-dev',
'libcurl4-openssl-dev',
'gdb'
]
- os: linux
compiler: clang
env: COMPILER=clang++-6.0
addons:
apt:
sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-trusty-6.0']
packages: [
'cmake',
'clang-6.0',
'libstdc++-6-dev',
'libssl-dev',
'libcurl4-openssl-dev',
'gdb'
]
# Linux GCC builds
- os: linux
compiler: gcc
env: COMPILER=g++-4.9
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['g++-4.9', 'libssl-dev', 'libcurl4-openssl-dev', 'gdb']
- os: linux
compiler: gcc
env: COMPILER=g++-5
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['g++-5', 'libssl-dev', 'libcurl4-openssl-dev', 'gdb']
- os: linux
compiler: gcc
env: COMPILER=g++-6
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['g++-6', 'libssl-dev', 'libcurl4-openssl-dev', 'gdb']
- os: linux
compiler: gcc
env: COMPILER=g++-7
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['g++-7', 'libssl-dev', 'libcurl4-openssl-dev', 'gdb']
- os: linux
compiler: gcc
env: COMPILER=g++-8
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['g++-8', 'libssl-dev', 'libcurl4-openssl-dev', 'gdb']
install:
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
- mkdir -p ${DEPS_DIR} && cd ${DEPS_DIR}
before_script:
- export CXX=${COMPILER}
- cd ${TRAVIS_BUILD_DIR}
# Enable core dumps
- ulimit -c
- ulimit -a -S
- ulimit -a -H
# Print debug system information
- cat /proc/sys/kernel/core_pattern
- cat /etc/default/apport
- service --status-all || true
- initctl list || true
# Debug build
- cmake -H. -BBuild-Debug
-DCMAKE_BUILD_TYPE=Debug
-DPISTACHE_BUILD_EXAMPLES=true
-DPISTACHE_BUILD_TESTS=true
-DPISTACHE_SSL=true
# Release build
- cmake -H. -BBuild-Release -DCMAKE_BUILD_TYPE=Release -DPISTACHE_SSL=true
script:
- # Debug build
- cd Build-Debug
- make -j 2 all test ARGS="-V"
- # Release build
- cd ../Build-Release
- make -j 2
after_failure:
# find and print core file
- ls -lta /var/crash
- COREFILE=$(find ./ -maxdepth 1 -name "core*" -print | head -n 1)
- if [[ -f "$COREFILE" ]]; then
gdb -c "$COREFILE" -ex "thread apply all bt" -ex "set pagination 0" -batch;
fi
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment