diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 00000000..24216e08 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,48 @@ +language: cpp + +os: + - linux + - osx + +compiler: + - clang + - gcc + +matrix: + # This excludes OSX builds from the build matrix for gcc + exclude: + - os: osx + compiler: gcc + +notifications: + email: + on_success: change + on_failure: always + +before_install: + - "if [ $CC = 'gcc' ]; then export CXX=g++; fi" + - "if [ $CC = 'clang' ]; then export CXX=clang++; fi" + - "if [ ${TRAVIS_OS_NAME:-'linux'} = 'osx' ]; then brew install cmake; fi" + # Install cpp-coveralls for reporting test coverage under only linux, see https://github.com/eddyxu/cpp-coveralls + #- "if [ ${TRAVIS_OS_NAME:-'linux'} = 'linux' ]; then sudo pip install cpp-coveralls; fi" + +install: + - "mkdir -p $TRAVIS_BUILD_DIR/build/scripts" + - "cd $TRAVIS_BUILD_DIR/build/scripts" + # Enable test coverage for travis-ci build + #- "cmake $TRAVIS_BUILD_DIR/src -DNTA_COV_ENABLED=ON" + - "cmake $TRAVIS_BUILD_DIR/src" + +script: + - "cd $TRAVIS_BUILD_DIR/build/scripts" + - "make -j3" + # test compile-time constraints + - "make test_sqlpp_constraints" + +after_success: + - "cd $TRAVIS_BUILD_DIR" + # Send test coverage report to http://coveralls.io under only linux + # - "if [ ${TRAVIS_OS_NAME:-'linux'} = 'linux' ]; then coveralls --exclude external --exclude doc --exclude src/test; fi" + + +