• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1version: 2
2
3jobs:
4
5  oracledeveloperstudio:
6    docker:
7      - image: fedora
8    steps:
9      - checkout
10      - run: dnf install -y gcc ragel cmake make which glib2-devel freetype-devel cairo-devel libicu-devel graphite2-devel wget tar bzip2 || true
11      - run: wget http://$ODSUSER:$ODSPASS@behdad.org/harfbuzz-private/OracleDeveloperStudio12.6-linux-x86-bin.tar.bz2 && tar xf OracleDeveloperStudio12.6-linux-x86-bin.tar.bz2 --owner root --group root --no-same-owner
12      - run: CC=/root/project/OracleDeveloperStudio12.6-linux-x86-bin/developerstudio12.6/bin/suncc CXX=/root/project/OracleDeveloperStudio12.6-linux-x86-bin/developerstudio12.6/bin/sunCC cmake -DHB_HAVE_GRAPHITE2=ON -DHB_BUILTIN_UCDN=ON -DHB_HAVE_GLIB=ON -DHB_HAVE_ICU=ON -DHB_HAVE_FREETYPE=ON -Bbuild -H.
13      - run: make -Cbuild
14      - run: make -Cbuild test
15      - run: make -Cbuild install
16
17  fedora:
18    docker:
19      - image: fedora
20    steps:
21      - checkout
22      - run: dnf install -y pkg-config ragel gcc gcc-c++ automake autoconf libtool make which glib2-devel freetype-devel cairo-devel libicu-devel gobject-introspection-devel graphite2-devel redhat-rpm-config || true
23      - run: ./autogen.sh --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 && make && make check
24
25  archlinux:
26    docker:
27      - image: base/devel
28    steps:
29      - checkout
30      - run: pacman --noconfirm -Syu freetype2 cairo icu gettext gobject-introspection gcc gcc-libs glib2 graphite pkg-config ragel
31      - run: ./autogen.sh --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 && make && make check
32
33  freebsd9:
34    docker:
35      - image: donbowman/freebsd-cross-build
36    steps:
37      - checkout
38      - run: apt update && apt install -y pkg-config ragel
39      - run: ./autogen.sh --prefix=/freebsd --host=x86_64-pc-freebsd9 && make
40
41  base:
42    docker:
43      - image: dockcross/base
44    steps:
45      - checkout
46      - run: apt update && apt install -y pkg-config ragel gtk-doc-tools libfreetype6-dev libglib2.0-dev libcairo2-dev libicu-dev libgraphite2-dev
47      - run: cmake -DHB_HAVE_FREETYPE=ON -DHB_HAVE_GRAPHITE2=ON -DHB_BUILTIN_UCDN=ON -DHB_HAVE_GLIB=ON -DHB_HAVE_ICU=ON -DHB_BUILD_UTILS=ON -Bbuild -H. -GNinja
48      - run: ninja -Cbuild
49      - run: ninja -Cbuild test
50      - run: ninja -Cbuild install
51
52  distdir:
53    docker:
54      - image: dockcross/base
55    steps:
56      - checkout
57      - run: apt update && apt install -y pkg-config ragel gtk-doc-tools libfreetype6-dev libglib2.0-dev libcairo2-dev libicu-dev libgraphite2-dev
58      - run: ./autogen.sh && make distdir
59      - run: cd harfbuzz-* && ./configure && make && make check && make install
60
61  psvita:
62    docker:
63      - image: dockcross/base
64    steps:
65      - checkout
66      - run: apt update && apt install ragel
67      - run: git clone https://github.com/vitasdk/vdpm && cd vdpm && ./bootstrap-vitasdk.sh
68      - run: cmake -Bbuild -H. -GNinja -DCMAKE_TOOLCHAIN_FILE=/usr/local/vitasdk/share/vita.toolchain.cmake && ninja -Cbuild
69
70  android-arm:
71    docker:
72      - image: dockcross/android-arm
73    steps:
74      - checkout
75      - run: apt update && apt install ragel
76      - run: cmake -Bbuild -H. -GNinja && ninja -Cbuild
77
78  browser-asmjs:
79    docker:
80      - image: dockcross/browser-asmjs
81    steps:
82      - checkout
83      - run: apt update && apt install ragel
84      - run: cmake -Bbuild -H. -GNinja && ninja -Cbuild
85
86  linux-arm64:
87    docker:
88      - image: dockcross/linux-arm64
89    steps:
90      - checkout
91      - run: apt update && apt install ragel
92      - run: cmake -Bbuild -H. -GNinja && ninja -Cbuild
93
94  linux-mips:
95    docker:
96      - image: dockcross/linux-mips
97    steps:
98      - checkout
99      - run: apt update && apt install ragel
100      - run: cmake -Bbuild -H. -GNinja && ninja -Cbuild
101
102  windows-x64:
103    docker:
104      - image: dockcross/windows-x64
105    steps:
106      - checkout
107      - run: apt update && apt install ragel
108      - run: cmake -Bbuild -H. -GNinja && ninja -Cbuild
109
110workflows:
111  version: 2
112  build:
113    jobs:
114      - oracledeveloperstudio
115      - fedora
116      - archlinux
117      - freebsd9
118      - base
119      - distdir
120      - psvita
121      - android-arm
122      - browser-asmjs
123      - linux-arm64
124      - linux-mips
125      - windows-x64
126