blob: 83b479ee763a70e9c6ab4cbeb1dfb74d059b7a39 [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
Ebrahim Byagowi55a4dfa2018-02-28 15:43:23 +033014 - secure: "MRJtVu/fQoWNwMAamvIJBCX/1SMvEuEUk/ljAif/y2/3syyWgxFGp17UGnDILdoZYyCqTM+jQciY2P0nVqbjjOAUlML4QOAalqw8kPp8iTsnHUe+KOMVrOVP6p6qAQxk1im1O41cCMkmVKvk+NXe/on5euz6LGF2laHZaOAMoes="
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:
31 - bash .ci/run-coveralls.sh # for coveralls.io code coverage tracking
32 - bash .ci/deploy-docs.sh
Ebrahim Byagowi7daa2822018-02-12 11:27:00 +033033 - bash .ci/trigger-coverity.sh
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020034
35 - os: linux
36 compiler: clang
37 script:
Ebrahim Byagowi8b60e7c2018-01-22 18:37:26 +033038 # Remove these two lines when Travis updated its distro
Ebrahim Byagowibd752db2018-01-22 13:08:35 +033039 - 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 +033040 - export LD_LIBRARY_PATH="$PWD/freetype-2.9/objs/.libs"
Ebrahim Byagowibd752db2018-01-22 13:08:35 +033041
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020042 - ./autogen.sh
43 - ./configure $CONFIGURE_OPTS
44 - make
Khaled Hosny8e3b4c02018-02-15 11:25:24 +020045 - make check || .ci/fail.sh
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020046
47 - os: osx
48 compiler: clang
49 install:
50 # https://github.com/harfbuzz/harfbuzz/issues/345
51 - export CXXFLAGS="$CXXFLAGS -Wno-deprecated-declarations"
52 - brew update;
53 # Workaround Travis/brew bug
54 - brew uninstall libtool && brew install libtool
Ebrahim Byagowif25731a2018-04-10 00:51:57 +043055 - brew install ragel freetype glib gobject-introspection cairo icu4c graphite2 || true
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020056 - brew link --force icu4c # icu4c is keg-only
57 script:
58 - ./autogen.sh
59 - ./configure $CONFIGURE_OPTS --with-coretext
60 - make
Khaled Hosny8e3b4c02018-02-15 11:25:24 +020061 - make check || .ci/fail.sh
Khaled Hosny3ce6c7b2017-12-06 21:08:20 +020062
Behdad Esfahbod5f705b42013-03-05 01:37:44 -050063notifications:
64 irc: "irc.freenode.org#harfbuzz"
Ebrahim Byagowi20022572018-02-15 01:15:39 +033065 email: harfbuzz-bots-chatter@googlegroups.com
Behdad Esfahbodf0c80062015-06-12 17:37:41 -070066
67addons:
Ebrahim Byagowiba096bc2015-10-19 21:41:01 +033068 apt:
69 packages:
70 - pkg-config # for autogen.sh
71 - ragel
Ebrahim Byagowia0031c12018-03-03 23:09:25 +033072 - lcov
Ebrahim Byagowiba096bc2015-10-19 21:41:01 +033073 - gtk-doc-tools
74 - libfreetype6-dev # for font function
75 - libglib2.0-dev # for font functions / tests / utils
76 - libcairo2-dev # for utils
77 - libicu-dev # for extra unicode functions
78 - libgraphite2-dev # for extra shapers
Ebrahim Byagowibd752db2018-01-22 13:08:35 +033079 #- libgirepository1.0-dev # for gobject-introspection
Ebrahim Byagowi7daa2822018-02-12 11:27:00 +033080
Ebrahim Byagowi7daa2822018-02-12 11:27:00 +033081 coverity_scan:
82 project:
Ebrahim Byagowi55a4dfa2018-02-28 15:43:23 +033083 name: behdad/harfbuzz
Ebrahim Byagowi7daa2822018-02-12 11:27:00 +033084 version: 1.0
85 description: HarfBuzz OpenType text shaping engine
Ebrahim Byagowi20022572018-02-15 01:15:39 +033086 notification_email: harfbuzz-bots-chatter@googlegroups.com
Ebrahim Byagowi7daa2822018-02-12 11:27:00 +033087 build_command_prepend: ./autogen.sh --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2
88 build_command: make
Ebrahim Byagowi82e04752018-02-12 11:56:32 +033089 branch_pattern: coverity_scan