.travis.yml 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. dist: trusty
  2. language: cpp
  3. cache: ccache
  4. matrix:
  5. include:
  6. - os: linux
  7. compiler: gcc
  8. - os: linux
  9. compiler: clang
  10. - os: osx
  11. osx_image: xcode8.3
  12. compiler: clang
  13. sudo: required
  14. addons:
  15. apt:
  16. sources:
  17. - ubuntu-toolchain-r-test
  18. packages:
  19. - g++-7
  20. - autoconf
  21. - automake
  22. - autotools-dev
  23. - autopoint
  24. - libtool
  25. - pkg-config
  26. - libssl-dev
  27. - libc-ares-dev
  28. - libxml2-dev
  29. - zlib1g-dev
  30. - libsqlite3-dev
  31. - libssh2-1-dev
  32. - libcppunit-dev
  33. before_install:
  34. - $CC --version
  35. - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi
  36. # gmp is already installed
  37. - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install --force cppunit gettext openssl libssh2 c-ares sqlite3 ccache ; fi
  38. - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew link --force cppunit gettext openssl libssh2 c-ares sqlite3 ccache ; fi
  39. - if [ "$CXX" = "g++" ]; then export CXX="g++-7" CC="gcc-7"; fi
  40. - if [ "$CXX" = "clang++" ]; then export CXX="$CXX -Qunused-arguments" CC="$CC -Qunused-arguments"; fi
  41. - $CC --version
  42. before_script:
  43. - autoreconf -i
  44. - automake
  45. - autoconf
  46. - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ./configure --without-openssl --without-gnutls --with-appletls --disable-nls CPPFLAGS=-fsanitize=address LDFLAGS=-fsanitize=address; fi
  47. - if [[ "$TRAVIS_OS_NAME" != "osx" ]]; then ./configure CPPFLAGS=-fsanitize=address LDFLAGS="-fsanitize=address -fuse-ld=gold"; fi
  48. script:
  49. - make CC="ccache $CC" CXX="ccache $CXX" check