2015-11-24 08:46:35 +00:00
# Build Configuration for Travis
2016-01-01 20:36:19 +00:00
sudo : required # For Trusty beta
2015-11-24 08:46:35 +00:00
os :
- linux
- osx
2016-01-01 20:36:19 +00:00
dist : trusty
2013-03-05 06:37:44 +00:00
language : cpp
compiler :
2014-10-01 21:44:30 +00:00
- clang
2013-03-05 06:37:44 +00:00
- gcc
2014-10-01 21:20:31 +00:00
env :
global :
2014-10-01 22:07:27 +00:00
- CPPFLAGS=""
- CFLAGS="-Werror --coverage"
2016-01-01 20:36:19 +00:00
- CXXFLAGS="-Werror -Wno-deprecated-register --coverage" # glib uses register and clang raises a warning
2014-10-01 22:07:27 +00:00
- LDFLAGS="--coverage"
2014-10-01 22:54:55 +00:00
install :
2015-11-24 08:46:35 +00:00
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then pip install --user nose; fi
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then pip install --user cpp-coveralls; fi # for coveralls.io code coverage tracking
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then export PATH=$HOME/.local/bin:$PATH; fi # Make sure we can find the above Python packages
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew update; fi;
2016-08-16 00:49:48 +00:00
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew uninstall libtool && brew install libtool; fi # Workaround Travis/brew bug
2015-11-24 08:46:35 +00:00
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew install ragel freetype glib gobject-introspection cairo icu4c graphite2; fi
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then brew link --force icu4c; fi # icu4c is keg-only
2014-10-01 20:09:08 +00:00
script :
2014-10-01 20:38:47 +00:00
- NOCONFIGURE=1 ./autogen.sh
2015-11-24 08:46:35 +00:00
- export CONFIGURE_OPTS="--with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2"
2015-12-14 19:33:51 +00:00
- if [ "$TRAVIS_OS_NAME" == "linux" -a "$CC" == "gcc" ]; then export CONFIGURE_OPTS="$CONFIGURE_OPTS --enable-gtk-doc"; fi
2015-11-24 08:46:35 +00:00
- if [ "$TRAVIS_OS_NAME" == "osx" ]; then export CONFIGURE_OPTS="$CONFIGURE_OPTS --with-coretext"; fi
- ./configure $CONFIGURE_OPTS
- make
2017-10-03 11:23:31 +00:00
- make check || (cat */test-suite.log test/*/test-suite.log && false)
2016-01-01 19:06:43 +00:00
- if [ "$TRAVIS_OS_NAME" == "linux" -a "$CC" == "gcc" -a "$TRAVIS_SLUG" == "behdad/harfbuzz" ]; then rm -f src/.libs/NONE.gcov; touch src/NONE; coveralls -e docs; fi
2015-12-14 19:33:51 +00:00
after_success :
2015-12-30 15:15:36 +00:00
- if [ "$TRAVIS_OS_NAME" == "linux" -a "$CC" == "gcc" -a "$TRAVIS_SECURE_ENV_VARS" == "true" ]; then bash .ci/deploy-docs.sh; fi
2013-03-05 06:37:44 +00:00
notifications :
irc : "irc.freenode.org#harfbuzz"
email : harfbuzz@lists.freedesktop.org
2015-06-13 00:37:41 +00:00
addons :
2015-10-19 18:11:01 +00:00
apt :
packages :
- pkg-config # for autogen.sh
- ragel
- gtk-doc-tools
- libfreetype6-dev # for font function
- libglib2.0-dev # for font functions / tests / utils
- libcairo2-dev # for utils
- libicu-dev # for extra unicode functions
- libgraphite2-dev # for extra shapers
- # libgirepository1.0-dev # for gobject-introspection