Skip to content
This repository was archived by the owner on Aug 5, 2022. It is now read-only.
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
70 changes: 32 additions & 38 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,41 +1,52 @@
# Use travis docker infrastructure
sudo: false
language: cpp

env:
global:
- PREFIX=$HOME/prefix

compiler:
- gcc
# - clang # not supported yet
- gcc
# clang not supported yet
# - clang

# Install a recent gcc, gcov and cmake,
# Install a recent gcc and gcov,
# it will not be necessary once travis worker is based on ubuntu > 12.04.
# Install SWIG for bindings generation
before_install:
- sudo add-apt-repository --yes ppa:ubuntu-toolchain-r/test
- sudo add-apt-repository --yes ppa:kalakris/cmake # Non official cmake backport
- sudo apt-get update -qq
- sudo pip install cpp-coveralls
# Install valgrind for memcheck tests
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- swig
- valgrind
- g++-4.8

install:
- sudo apt-get install --yes swig cmake valgrind g++-4.8
- sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 100
- sudo update-alternatives --install /usr/bin/gcov gcov /usr/bin/gcov-4.8 100
- sudo wget --directory-prefix /usr/include/
- pip install --user cpp-coveralls; export PATH=$HOME/.local/bin:$PATH
- wget --directory-prefix $PREFIX/include
https://raw.github.com/philsquared/Catch/master/single_include/catch.hpp

before_script:
- if [ "$CC" = "gcc" ]; then export CC=gcc-4.8 CXX=g++-4.8; fi

# how to build
script:
- ( mkdir build_debug && cd build_debug &&
cmake -DCMAKE_BUILD_TYPE=Debug -DCOVERAGE=ON .. &&
cmake -DCMAKE_PREFIX_PATH=$PREFIX -DCMAKE_BUILD_TYPE=Debug -DCOVERAGE=ON .. &&
make -j &&
CTEST_OUTPUT_ON_FAILURE=1 make ExperimentalTest ExperimentalMemCheck )
- ( mkdir build && cd build &&
cmake .. &&
cmake -DCMAKE_PREFIX_PATH=$PREFIX -DCMAKE_INSTALL_PREFIX=../install .. &&
make -j &&
sudo make install &&
sudo ldconfig &&
CTEST_OUTPUT_ON_FAILURE=1 make test )
CTEST_OUTPUT_ON_FAILURE=1 make test &&
make install)
- ( cd skeleton-subsystem &&
cmake . &&
cmake -DCMAKE_INSTALL_PREFIX=../install . &&
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I usually prefer global path for this

make &&
sudo make install &&
sudo ldconfig )
make install )

after_success:
# Push coverage info on coveralls.io.
Expand All @@ -48,26 +59,9 @@ after_success:
--exclude "test/test-subsystem"
--exclude "bindings/c/Test.cpp"
--exclude "test/tokenizer"
--gcov /usr/bin/gcov-4.8
--gcov-options '\--long-file-names --preserve-paths'

notifications:
email:
- david.wagner@intel.com
irc:
- "chat.freenode.net#parameter-framework"

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: "Y+iKBg65e4dleuMwxAo1XSl/QkF4AtCe35ltu2DhPbeMJCywBmu0aeDb04oEaZJL+BxP+KMoRqRjeoGI3W/sh0gAq03iQ+P4C8KwRb9fdYPPVwH3NP3fyN27gFBH9GS8uMth68o2KP/oO/aqNwii/KbMZtubp7MhY/wnvz4DLCQ="

addons:
coverity_scan:
project:
name: "dawagner/parameter-framework"
description: "Plugin-based and rule-based framework for managing parameters"
notification_email: david.wagner@intel.com
build_command_prepend: "cmake ."
build_command: "make -j 12"
branch_pattern: coverity_scan