2015-02-06 02:53:23 +01:00
|
|
|
language: c
|
2015-09-07 02:28:06 +02:00
|
|
|
|
2015-07-29 17:53:58 +02:00
|
|
|
sudo: false
|
2015-09-07 02:28:06 +02:00
|
|
|
|
2015-11-27 01:11:52 +01:00
|
|
|
_anchors:
|
|
|
|
- &gcc49-packages
|
|
|
|
apt:
|
|
|
|
sources:
|
|
|
|
- ubuntu-toolchain-r-test
|
|
|
|
packages:
|
|
|
|
- gcc-4.9
|
|
|
|
- g++-4.9
|
|
|
|
- gobjc-4.9
|
|
|
|
- gnustep-devel
|
2015-11-27 00:30:08 +01:00
|
|
|
|
2015-11-12 16:02:33 +01:00
|
|
|
matrix:
|
|
|
|
include:
|
2016-09-05 21:53:10 +02:00
|
|
|
# Style check
|
|
|
|
- compiler: uncrustify
|
|
|
|
language: cpp
|
|
|
|
before_install:
|
2016-09-06 18:08:27 +02:00
|
|
|
- if [[ "$TRAVIS_PULL_REQUEST" == false ]]; then exit 0; fi
|
2016-09-05 21:53:10 +02:00
|
|
|
- |
|
|
|
|
git clone https://github.com/uncrustify/uncrustify /tmp/uncrustify &&
|
|
|
|
pushd /tmp/uncrustify &&
|
|
|
|
git checkout -q 7ae7af9d3483f5f92766ec41bb3ba3efe4747494 &&
|
|
|
|
mkdir build && cd build &&
|
|
|
|
CC=gcc CXX=g++ cmake -DCMAKE_INSTALL_PREFIX=$HOME .. &&
|
|
|
|
make -j4 && make install &&
|
|
|
|
export PATH="$PATH:$HOME/bin" &&
|
|
|
|
popd
|
|
|
|
- >
|
|
|
|
export SOURCES=$(find src include test samples \( \
|
|
|
|
-type f \( \
|
|
|
|
-iname "*.c" -or \
|
|
|
|
-iname "*.h" -or \
|
|
|
|
-iname "*.cc" -or \
|
|
|
|
-iname "*.hxx" \
|
|
|
|
\) -and -not \
|
|
|
|
-iname "*.pb.*" \))
|
|
|
|
- export STYLE_OK=true
|
2016-09-05 22:44:53 +02:00
|
|
|
script:
|
2016-09-05 21:53:10 +02:00
|
|
|
- >
|
|
|
|
for f in $SOURCES; do
|
2016-09-05 22:13:23 +02:00
|
|
|
if ! uncrustify -q --check -c .uncrustify.cfg $f; then
|
|
|
|
uncrustify -q -c .uncrustify.cfg -f $f | git --no-pager diff --no-index --color=always $f -
|
2016-09-05 21:53:10 +02:00
|
|
|
export STYLE_OK=false
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
- $STYLE_OK
|
2016-09-10 11:12:10 +02:00
|
|
|
after_success:
|
|
|
|
- echo "Style check passed."
|
2016-09-05 21:53:10 +02:00
|
|
|
|
2015-11-12 16:02:33 +01:00
|
|
|
# Linux Debug, GCC 4.9
|
|
|
|
- compiler: gcc-4.9
|
2015-11-27 00:46:01 +01:00
|
|
|
addons: *gcc49-packages
|
2015-11-12 16:02:33 +01:00
|
|
|
env:
|
2015-11-27 01:11:52 +01:00
|
|
|
CONFIGURATION: Debug
|
|
|
|
GCOV: gcov-4.9
|
|
|
|
COVERAGE: "ON"
|
2015-11-12 16:02:33 +01:00
|
|
|
# Linux RelWithDebInfo, GCC 4.9
|
|
|
|
- compiler: gcc-4.9
|
2015-11-27 00:46:01 +01:00
|
|
|
addons: *gcc49-packages
|
2015-11-12 16:02:33 +01:00
|
|
|
env:
|
2015-11-27 01:11:52 +01:00
|
|
|
CONFIGURATION: RelWithDebInfo
|
|
|
|
DEPLOY: true
|
2015-11-25 20:10:09 +01:00
|
|
|
# Linux Debug, GCC 4.6
|
|
|
|
- compiler: gcc
|
|
|
|
env: CONFIGURATION=Debug TESTS=OFF
|
|
|
|
# Linux RelWithDebInfo, GCC 4.6
|
|
|
|
- compiler: gcc
|
2016-05-06 20:10:01 +02:00
|
|
|
env:
|
|
|
|
- CONFIGURATION=RelWithDebInfo
|
|
|
|
- TESTS=OFF
|
|
|
|
# Coverity token
|
|
|
|
- secure: >-
|
|
|
|
n6BHG86ISeYSAVE/i7m1K+XVW0j8PrJ5JxoJwhAGBb1
|
|
|
|
hkCn9sWybGo1HzZsf7rxpkQh/5Va4i+eyOrUt7VWAuF
|
|
|
|
EJN2+mEWqERkWZxiXrS3N9xi74cPFI79eDOTFnPm13e
|
|
|
|
diUX8Ts+IuFy890+tsNHqkEn055l6yOVMtj1LWWtRs=
|
2015-11-12 16:02:33 +01:00
|
|
|
# OSX Debug, GCC 4.9
|
|
|
|
- os: osx
|
|
|
|
compiler: gcc-4.9
|
|
|
|
env:
|
2015-11-27 01:11:52 +01:00
|
|
|
CONFIGURATION: Debug
|
|
|
|
GCOV: gcov-4.9
|
|
|
|
COVERAGE: "ON"
|
2015-11-12 16:02:33 +01:00
|
|
|
# OSX RelWithDebInfo, GCC 4.9
|
|
|
|
- os: osx
|
|
|
|
compiler: gcc-4.9
|
|
|
|
env: CONFIGURATION=RelWithDebInfo
|
|
|
|
# OSX Debug, Clang
|
|
|
|
- os: osx
|
|
|
|
compiler: clang
|
|
|
|
env:
|
2015-11-27 01:11:52 +01:00
|
|
|
CONFIGURATION: Debug
|
2015-11-12 16:02:33 +01:00
|
|
|
# OSX RelWithDebInfo, Clang
|
|
|
|
- os: osx
|
|
|
|
compiler: clang
|
|
|
|
env:
|
2015-11-27 01:11:52 +01:00
|
|
|
CONFIGURATION: RelWithDebInfo
|
|
|
|
DEPLOY: true
|
2015-09-07 02:28:06 +02:00
|
|
|
|
2015-11-25 20:10:09 +01:00
|
|
|
allow_failures:
|
|
|
|
- compiler: gcc
|
|
|
|
|
2015-11-12 16:36:42 +01:00
|
|
|
before_install:
|
2016-01-14 12:40:01 +01:00
|
|
|
- |
|
|
|
|
if [ "${TESTS:-ON}" = "ON" ]; then
|
2016-01-16 15:52:19 +01:00
|
|
|
if [ "$TRAVIS_OS_NAME" = "osx" ]; then
|
2016-09-23 17:23:24 +02:00
|
|
|
export PATH="$(python -m site --user-base)/bin:$PATH"
|
2016-01-16 15:52:19 +01:00
|
|
|
fi
|
2016-09-23 17:23:24 +02:00
|
|
|
travis_retry pip install --user cram==0.7
|
2016-01-14 12:40:01 +01:00
|
|
|
fi
|
2015-11-12 16:54:48 +01:00
|
|
|
- export CXX=${CC/gcc/g++}; export CXX=${CXX/clang/clang++}
|
|
|
|
- $CC --version
|
|
|
|
- $CXX --version
|
2015-11-12 16:36:42 +01:00
|
|
|
|
2015-02-06 02:53:23 +01:00
|
|
|
script:
|
2015-11-12 16:02:33 +01:00
|
|
|
- mkdir -p build && cd $_
|
2015-09-16 01:43:26 +02:00
|
|
|
- >
|
|
|
|
cmake
|
|
|
|
-Wno-dev
|
2015-11-25 20:10:09 +01:00
|
|
|
-DCTESTS=${TESTS:-ON}
|
2015-11-12 16:02:33 +01:00
|
|
|
-DCOVERALLS=${COVERAGE:-OFF}
|
2015-09-21 20:09:43 +02:00
|
|
|
-DCMAKE_BUILD_TYPE=${CONFIGURATION}
|
2015-09-16 01:43:26 +02:00
|
|
|
-DCMAKE_INSTALL_PREFIX=criterion-${TRAVIS_TAG}
|
2015-11-12 16:02:33 +01:00
|
|
|
${CMAKE_OPTS}
|
2015-09-16 01:43:26 +02:00
|
|
|
..
|
2015-11-25 20:10:09 +01:00
|
|
|
- |
|
2015-11-27 01:11:52 +01:00
|
|
|
if [ "${TESTS:-ON}" = "ON" ]; then
|
2015-11-25 20:10:09 +01:00
|
|
|
TERM=dumb cmake --build . --target criterion_tests -- -j4
|
2016-09-03 16:52:08 +02:00
|
|
|
ctest --output-on-failure -j4 --timeout=20
|
2015-11-25 20:10:09 +01:00
|
|
|
else
|
|
|
|
TERM=dumb cmake --build . -- -j4
|
|
|
|
fi
|
2015-09-16 01:43:26 +02:00
|
|
|
|
2015-02-06 02:53:23 +01:00
|
|
|
after_success:
|
2015-11-12 16:45:32 +01:00
|
|
|
- |
|
|
|
|
if [ "$COVERAGE" = "ON" ]; then
|
|
|
|
make gcov
|
|
|
|
bash <(curl -s https://codecov.io/bash)
|
|
|
|
fi
|
2015-09-16 01:43:26 +02:00
|
|
|
|
2015-08-19 23:30:42 +02:00
|
|
|
before_deploy:
|
2015-09-16 01:43:26 +02:00
|
|
|
- make install
|
|
|
|
- tar -cvjf criterion-${TRAVIS_TAG}-${TRAVIS_OS_NAME}-x86_64.tar.bz2 criterion-${TRAVIS_TAG}
|
2016-05-22 14:18:01 +02:00
|
|
|
- cd ..
|
|
|
|
- ./.cmake/git-archive-all.sh --prefix criterion-${TRAVIS_TAG} criterion-${TRAVIS_TAG}.tar && bzip2 $_
|
2015-08-19 23:30:42 +02:00
|
|
|
|
2016-05-06 20:10:01 +02:00
|
|
|
addons:
|
|
|
|
coverity_scan:
|
|
|
|
project:
|
|
|
|
name: "Snaipe/Criterion"
|
|
|
|
description: "A KISS, Cross-platform C unit testing framework"
|
|
|
|
notification_email: franklinmathieu@gmail.com
|
|
|
|
build_command_prepend: "cmake ."
|
|
|
|
build_command: "make -j4"
|
|
|
|
branch_pattern: coverity_scan
|
|
|
|
|
2015-08-19 23:30:42 +02:00
|
|
|
deploy:
|
|
|
|
provider: releases
|
|
|
|
skip_cleanup: true
|
|
|
|
api_key:
|
|
|
|
secure: d3l2Ohb2FF3tSXku1d0ASR5dntdnQ48Jyc39IEloDBxFXCselCkYruUQv6p0TA3P+Dmrz4wS7/AFlBMMsQ3XfGFVIOnITiTaGWg5fEpIf7zYsDf0zECPE0MOHMGqJMn3/SrSKdtEA4N84Q4JS7Ou+ewG65mxUDO5Ce60OoEG5JA=
|
2016-05-22 14:18:01 +02:00
|
|
|
file:
|
|
|
|
- criterion-${TRAVIS_TAG}-${TRAVIS_OS_NAME}-x86_64.tar.bz2
|
|
|
|
- criterion-${TRAVIS_TAG}.tar.bz2
|
2015-08-19 23:30:42 +02:00
|
|
|
on:
|
|
|
|
repo: Snaipe/Criterion
|
|
|
|
tags: true
|
2015-11-12 16:02:33 +01:00
|
|
|
condition: $DEPLOY = true
|