blob: 3e77b2699e6db8ecccfd7a6935621d412e4bd884 [file] [log] [blame]
Khaled Hosnyd5382012015-11-24 12:46:35 +04001# Build Configuration for Travis
Khaled Hosny4b4948d2016-01-02 00:36:19 +04002dist: trusty
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +02003
Behdad Esfahbod5f705b42013-03-05 01:37:44 -05004language: cpp
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +02005
Behdad Esfahbod9b89fc52014-10-01 17:20:31 -04006env:
7 global:
Behdad Esfahbodef40ca82014-10-01 18:07:27 -04008 - CPPFLAGS=""
Ebrahim Byagowi9b4a5d72018-03-07 00:23:40 +03309 - CFLAGS="-Werror -Werror=unused -Werror=unused-function"
10 - CXXFLAGS="-Werror -Werror=unused -Werror=unused-function -Wno-deprecated-register" # glib uses register and clang raises a warning
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020011 - CONFIGURE_OPTS="--with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2"
12 - NOCONFIGURE=1
Ebrahim Byagowi7daa2822018-02-12 11:27:00 +033013 # COVERITY_SCAN_TOKEN
Behdad Esfahbod8f3ee172018-11-20 01:38:23 -050014 - secure: "k6l/18dpsoPAf0E5RQWCr+rgjbHns0H3k0WzSYovCoVg0B7RVlV8x8OjyEOBzEvXI4aaHRdH6MHCPDFnX4fa7ysImlT6LxxIG8YhDdLkJWyS0hHbcJiGxko9AhAGzOZcDl8fZi13d697wagMqqXpjN5v2T/AQm8t4X9z2otJosY="
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020015
16matrix:
17 include:
18 - os: linux
19 compiler: gcc
20 script:
Ebrahim Byagowi8b60e7c2018-01-22 18:37:26 +033021 # Remove these two lines when Travis updated its distro
Ebrahim Byagowibd752db2018-01-22 13:08:35 +033022 - wget http://download.savannah.gnu.org/releases/freetype/freetype-2.9.tar.bz2 && tar xf freetype-2.9.tar.bz2 && cd freetype-2.9 && ./autogen.sh && ./configure && make -j4 && cd ..
Ebrahim Byagowi8b60e7c2018-01-22 18:37:26 +033023 - export LD_LIBRARY_PATH="$PWD/freetype-2.9/objs/.libs"
Ebrahim Byagowibd752db2018-01-22 13:08:35 +033024
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020025 - ./autogen.sh
Ebrahim Byagowiecef95b2018-03-03 23:03:13 +033026 - ./configure $CONFIGURE_OPTS --enable-gtk-doc --enable-code-coverage
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020027 - make
Khaled Hosny8e3b4c02018-02-15 11:25:24 +020028 - make check || .ci/fail.sh
Ebrahim Byagowi00dd3212018-03-03 23:26:11 +033029 - rm -rf freetype-2.9
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020030 after_success:
Behdad Esfahbodc49e43c2018-11-20 01:06:50 -050031 - bash .ci/run-coveralls.sh # coveralls.io code coverage
32 - bash <(curl -s https://codecov.io/bash) # codecov.io code coverage
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020033 - bash .ci/deploy-docs.sh
Ebrahim Byagowi7daa2822018-02-12 11:27:00 +033034 - bash .ci/trigger-coverity.sh
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020035
36 - os: linux
37 compiler: clang
38 script:
Ebrahim Byagowi8b60e7c2018-01-22 18:37:26 +033039 # Remove these two lines when Travis updated its distro
Ebrahim Byagowibd752db2018-01-22 13:08:35 +033040 - wget http://download.savannah.gnu.org/releases/freetype/freetype-2.9.tar.bz2 && tar xf freetype-2.9.tar.bz2 && cd freetype-2.9 && ./autogen.sh && ./configure && make -j4 && cd ..
Ebrahim Byagowi8b60e7c2018-01-22 18:37:26 +033041 - export LD_LIBRARY_PATH="$PWD/freetype-2.9/objs/.libs"
Ebrahim Byagowibd752db2018-01-22 13:08:35 +033042
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020043 - ./autogen.sh
44 - ./configure $CONFIGURE_OPTS
45 - make
Khaled Hosny8e3b4c02018-02-15 11:25:24 +020046 - make check || .ci/fail.sh
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020047
48 - os: osx
49 compiler: clang
50 install:
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020051 - brew update;
52 # Workaround Travis/brew bug
53 - brew uninstall libtool && brew install libtool
Ebrahim Byagowif24498c2018-12-11 23:02:52 +033054 - brew install ragel freetype glib gobject-introspection cairo graphite2 || true
55 - brew upgrade icu4c || true
56 - export PATH="/usr/local/opt/icu4c/sbin:/usr/local/opt/icu4c/bin:$PATH"
57 - export PKG_CONFIG_PATH="/usr/local/opt/icu4c/lib/pkgconfig"
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020058 script:
59 - ./autogen.sh
60 - ./configure $CONFIGURE_OPTS --with-coretext
61 - make
Khaled Hosny8e3b4c02018-02-15 11:25:24 +020062 - make check || .ci/fail.sh
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020063
Behdad Esfahbod5f705b42013-03-05 01:37:44 -050064notifications:
65 irc: "irc.freenode.org#harfbuzz"
Ebrahim Byagowi20022572018-02-15 01:15:39 +033066 email: harfbuzz-bots-chatter@googlegroups.com
Behdad Esfahbodf0c80062015-06-12 17:37:41 -070067
68addons:
Ebrahim Byagowiba096bc2015-10-19 21:41:01 +033069 apt:
70 packages:
71 - pkg-config # for autogen.sh
72 - ragel
Ebrahim Byagowia0031c12018-03-03 23:09:25 +033073 - lcov
Ebrahim Byagowiba096bc2015-10-19 21:41:01 +033074 - gtk-doc-tools
75 - libfreetype6-dev # for font function
76 - libglib2.0-dev # for font functions / tests / utils
77 - libcairo2-dev # for utils
78 - libicu-dev # for extra unicode functions
79 - libgraphite2-dev # for extra shapers
Ebrahim Byagowibd752db2018-01-22 13:08:35 +033080 #- libgirepository1.0-dev # for gobject-introspection
Ebrahim Byagowi7daa2822018-02-12 11:27:00 +033081
Ebrahim Byagowi7daa2822018-02-12 11:27:00 +033082 coverity_scan:
83 project:
Ebrahim Byagowi55a4dfa2018-02-28 15:43:23 +033084 name: behdad/harfbuzz
Ebrahim Byagowi7daa2822018-02-12 11:27:00 +033085 version: 1.0
86 description: HarfBuzz OpenType text shaping engine
Ebrahim Byagowi20022572018-02-15 01:15:39 +033087 notification_email: harfbuzz-bots-chatter@googlegroups.com
Ebrahim Byagowi7daa2822018-02-12 11:27:00 +033088 build_command_prepend: ./autogen.sh --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2
89 build_command: make
Ebrahim Byagowi82e04752018-02-12 11:56:32 +033090 branch_pattern: coverity_scan