123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- # Since the Travis CI environment http://docs.travis-ci.com/user/ci-environment/
- # provides GNU GCC 4.6, which does not support -std=c++11 GNU GCC 4.8 is installed
- # NOTE: Please validate this file after editing it using
- # Travis WebLint https://lint.travis-ci.org/
- # or travis-lint https://github.com/travis-ci/travis-lint
- language: cpp
- compiler:
- - gcc
- - clang
- os:
- - linux
- - osx
- sudo: false
- cache:
- apt: true
- env:
- global:
- # Boost version to use:
- # _MIN is used when building the master branch
- # _MAX is used when building any other branch
- - BOOST_VERSION_MIN="1.49.0"
- - BOOST_VERSION_MAX="1.60.0"
- # List of required boost libraries to build
- - BOOST_LIBS="date_time,filesystem,iostreams,python,regex,system,test"
- # List of required Homebrew formulae to install
- - BREWS="gmp,mpfr"
- # Encrypted COVERITY_SCAN_TOKEN
- - secure: "mYNxD1B8WNSvUeKzInehZ7syi2g1jH2ymeSQxoeKKD2duq3pvNWPdZdc4o9MlWQcAqcz58rhFZRIpuEWCnP0LbbJaG+MyuemMn9uAmg9Y4gFpMsBPHuTdf8pO3rDex+tkrr9puEJFgL+QV/TehxO6NDDpx7UdYvJb+4aZD/auYI="
- matrix:
- exclude:
- - os: linux
- compiler: clang
- # Compiling ledger on Linux with clang
- # either crashes clang or results in a ledger binary that crashes with SIGSEGV.
- - os: osx
- compiler: gcc
- # On Mac OS X building ledger with GNU GCC 4.8 fails due to
- # undefined symbols, maybe because boost was not being built with g++-4.8.
- # Undefined symbols for architecture x86_64:
- # "boost::re_detail::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::construct_init(boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, boost::regex_constants::_match_flags)", referenced from:
- # boost::re_detail::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::perl_matcher(char const*, char const*, boost::match_results<char const*, std::allocator<boost::sub_match<char const*> > >&, boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, boost::regex_constants::_match_flags, char const*) in main.cc.o
- # boost::re_detail::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::perl_matcher(char const*, char const*, boost::match_results<char const*, std::allocator<boost::sub_match<char const*> > >&, boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, boost::regex_constants::_match_flags, char const*) in global.cc.o
- # "boost::re_detail::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::find()", referenced from:
- # bool boost::regex_search<char const*, char, boost::regex_traits<char, boost::cpp_regex_traits<char> > >(char const*, char const*, boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, boost::regex_constants::_match_flags) in main.cc.o
- # bool boost::regex_search<char const*, char, boost::regex_traits<char, boost::cpp_regex_traits<char> > >(char const*, char const*, boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, boost::regex_constants::_match_flags) in global.cc.o
- addons:
- coverity_scan:
- project:
- name: "ledger/ledger"
- description: "Build submitted via Travis CI"
- build_command_prepend: "cmake . -DUSE_PYTHON=ON -DBUILD_DEBUG=ON -DCLANG_GCOV=ON"
- build_command: "make"
- branch_pattern: coverity
- apt:
- sources:
- - ubuntu-toolchain-r-test
- #- boost-latest
- packages:
- - gcc-4.8
- - g++-4.8
- - libgmp-dev
- - libmpfr-dev
- - libedit-dev
- #- libboost1.55-dev
- #- libboost-test1.55-dev
- #- libboost-regex1.55-dev
- #- libboost-python1.55-dev
- #- libboost-system1.55-dev
- #- libboost-date-time1.55-dev
- #- libboost-iostreams1.55-dev
- #- libboost-filesystem1.55-dev
- #- libboost-serialization1.55-dev
- before_install:
- - if [ "${TRAVIS_BRANCH}" = "master" ]; then export BOOST_VERSION="${BOOST_VERSION_MIN}"; else export BOOST_VERSION="${BOOST_VERSION_MAX}"; fi
- - if [ -n "${BOOST_VERSION}" ]; then export BOOST_ROOT="${TRAVIS_BUILD_DIR}/../boost-trunk"; export CMAKE_MODULE_PATH="${BOOST_ROOT}"; fi
- - if [ "${CXX}" = "g++" ]; then export CXX="$(which g++-4.8)"; export CC="$(which gcc-4.8)"; fi
- - if [ "${TRAVIS_OS_NAME}" = "osx" ]; then export DYLD_LIBRARY_PATH="${BOOST_ROOT}/lib"; fi
- # c++ is a symlink to clang++, but the compiler behaves differently when invoked as c++
- - if [ "${TRAVIS_OS_NAME}" = "osx" -a "${CXX}" = "clang++" ]; then export CXX="$(which c++)"; export CC="$(which cc)"; fi
- - tools/travis-before_install.sh
- install:
- - tools/travis-install.sh
- before_script:
- - cmake . -DUSE_PYTHON=ON -DBUILD_DEBUG=ON
- - make
- script:
- - ctest --output-on-failure
- - PYTHONPATH=. python python/demo.py
- after_script:
- # These scripts are run for informational purposes and
- # should be reintegrated into CTest once they reliably verify the documentation.
- - python test/CheckTexinfo.py -l ledger -s .
- - python test/CheckManpage.py -l ledger -s .
- notifications:
- email:
- on_success: change
- on_failure: change
- irc:
- channels: [ "chat.freenode.net#ledger" ]
- on_success: change
- on_failure: change
|