Merge pull request #575 from BillyDonahue/master
travis continuous integration
This commit is contained in:
commit
7443fb92ef
43
.travis.yml
Normal file
43
.travis.yml
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
# Build matrix / environment variable are explained on:
|
||||||
|
# http://about.travis-ci.org/docs/user/build-configuration/
|
||||||
|
# This file can be validated on:
|
||||||
|
# http://lint.travis-ci.org/
|
||||||
|
# See also
|
||||||
|
# http://stackoverflow.com/questions/22111549/travis-ci-with-clang-3-4-and-c11/30925448#30925448
|
||||||
|
# to allow C++11, though we are not yet building with -std=c++11
|
||||||
|
|
||||||
|
install:
|
||||||
|
# /usr/bin/gcc is 4.6 always, but gcc-X.Y is available.
|
||||||
|
- if [ "$CXX" = "g++" ]; then export CXX="g++-4.9" CC="gcc-4.9"; fi
|
||||||
|
# /usr/bin/clang is our version already, and clang-X.Y does not exist.
|
||||||
|
#- if [ "$CXX" = "clang++" ]; then export CXX="clang++-3.7" CC="clang-3.7"; fi
|
||||||
|
- echo ${PATH}
|
||||||
|
- ls /usr/local
|
||||||
|
- ls /usr/local/bin
|
||||||
|
- export PATH=/usr/local/bin:/usr/bin:${PATH}
|
||||||
|
- echo ${CXX}
|
||||||
|
- ${CXX} --version
|
||||||
|
- which valgrind
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
sources:
|
||||||
|
- ubuntu-toolchain-r-test
|
||||||
|
packages:
|
||||||
|
- gcc-4.9
|
||||||
|
- g++-4.9
|
||||||
|
- clang
|
||||||
|
- valgrind
|
||||||
|
os:
|
||||||
|
- linux
|
||||||
|
language: cpp
|
||||||
|
compiler:
|
||||||
|
- gcc
|
||||||
|
- clang
|
||||||
|
script: ./travis.sh
|
||||||
|
env:
|
||||||
|
matrix:
|
||||||
|
- SHARED_LIB=ON STATIC_LIB=ON CMAKE_PKG=ON BUILD_TYPE=release VERBOSE_MAKE=false
|
||||||
|
- SHARED_LIB=OFF STATIC_LIB=ON CMAKE_PKG=OFF BUILD_TYPE=debug VERBOSE_MAKE=true VERBOSE
|
||||||
|
notifications:
|
||||||
|
email: false
|
||||||
|
sudo: false
|
29
travis.sh
Executable file
29
travis.sh
Executable file
|
@ -0,0 +1,29 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
# This is called by `.travis.yml` via Travis CI.
|
||||||
|
# Travis supplies $TRAVIS_OS_NAME.
|
||||||
|
# http://docs.travis-ci.com/user/multi-os/
|
||||||
|
# Our .travis.yml also defines:
|
||||||
|
# - SHARED_LIB=ON/OFF
|
||||||
|
# - STATIC_LIB=ON/OFF
|
||||||
|
# - CMAKE_PKG=ON/OFF
|
||||||
|
# - BUILD_TYPE=release/debug
|
||||||
|
# - VERBOSE_MAKE=false/true
|
||||||
|
# - VERBOSE (set or not)
|
||||||
|
|
||||||
|
# -e: fail on error
|
||||||
|
# -v: show commands
|
||||||
|
# -x: show expanded commands
|
||||||
|
set -vex
|
||||||
|
|
||||||
|
env | sort
|
||||||
|
|
||||||
|
cmake -DJSONCPP_WITH_CMAKE_PACKAGE=$CMAKE_PKG -DBUILD_SHARED_LIBS=$SHARED_LIB -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_VERBOSE_MAKEFILE=$VERBOSE_MAKE .
|
||||||
|
make
|
||||||
|
|
||||||
|
# Python is not available in Travis for osx.
|
||||||
|
# https://github.com/travis-ci/travis-ci/issues/2320
|
||||||
|
if [ "$TRAVIS_OS_NAME" != "osx" ]
|
||||||
|
then
|
||||||
|
make
|
||||||
|
# valgrind --error-exitcode=42 --leak-check=full ./src/test_lib_json/jsoncpp_test
|
||||||
|
fi
|
Loading…
Reference in New Issue
Block a user