version: 2 jobs: oracledeveloperstudio: docker: - image: fedora steps: - checkout - run: dnf install -y gcc ragel cmake make which glib2-devel freetype-devel cairo-devel libicu-devel graphite2-devel wget tar bzip2 || true - 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 - 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. - run: make -Cbuild - run: make -Cbuild test - run: make -Cbuild install fedora: docker: - image: fedora steps: - checkout - 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 - run: ./autogen.sh --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 - run: make && make check archlinux: docker: - image: base/devel steps: - checkout - run: pacman --noconfirm -Syu freetype2 cairo icu gettext gobject-introspection gcc gcc-libs glib2 graphite pkg-config ragel - run: ./autogen.sh --with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2 - run: make && make check freebsd9: docker: - image: donbowman/freebsd-cross-build steps: - checkout - run: apt update && apt install -y pkg-config ragel - run: ./autogen.sh --prefix=/freebsd --host=x86_64-pc-freebsd9 - run: make base: docker: - image: dockcross/base steps: - checkout - run: apt update && apt install -y pkg-config ragel gtk-doc-tools libfreetype6-dev libglib2.0-dev libcairo2-dev libicu-dev libgraphite2-dev - 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 - run: ninja -Cbuild - run: ninja -Cbuild test - run: ninja -Cbuild install distdir: docker: - image: dockcross/base steps: - checkout - run: apt update && apt install -y pkg-config ragel gtk-doc-tools libfreetype6-dev libglib2.0-dev libcairo2-dev libicu-dev libgraphite2-dev - run: ./autogen.sh && make distdir - run: cd harfbuzz-* && ./configure && make && make check && make install psvita: docker: - image: dockcross/base steps: - checkout - run: apt update && apt install ragel - run: git clone https://github.com/vitasdk/vdpm && cd vdpm && ./bootstrap-vitasdk.sh - run: ./autogen.sh --prefix=/usr/local/vitasdk/arm-vita-eabi --host=arm-vita-eabi - run: make android-arm: docker: - image: dockcross/android-arm steps: - checkout - run: apt update && apt install ragel - run: cmake -Bbuild -H. -GNinja - run: ninja -Cbuild browser-asmjs: docker: - image: dockcross/browser-asmjs steps: - checkout - run: apt update && apt install ragel - run: cmake -Bbuild -H. -GNinja - run: ninja -Cbuild linux-arm64: docker: - image: dockcross/linux-arm64 steps: - checkout - run: apt update && apt install ragel - run: cmake -Bbuild -H. -GNinja - run: ninja -Cbuild linux-mips: docker: - image: dockcross/linux-mips steps: - checkout - run: apt update && apt install ragel - run: cmake -Bbuild -H. -GNinja - run: ninja -Cbuild windows-x64: docker: - image: dockcross/windows-x64 steps: - checkout - run: apt update && apt install ragel - run: cmake -Bbuild -H. -GNinja - run: ninja -Cbuild alpine: docker: - image: alpine steps: - checkout - run: apk update && apk add ragel make pkgconfig libtool autoconf automake gettext gcc g++ glib-dev freetype-dev cairo-dev - run: ./autogen.sh - run: make && make check dos: docker: - image: quay.io/ebraminio/djgpp steps: - checkout - run: apt update && apt install -y ragel pkg-config libtool autoconf - run: CFLAGS="-Wno-attributes" CXXFLAGS="-Wno-attributes" ./autogen.sh --prefix=/usr/local/djgpp --host=i586-pc-msdosdjgpp - run: make workflows: version: 2 build: jobs: - oracledeveloperstudio - fedora - archlinux - freebsd9 - base - distdir - psvita - android-arm - browser-asmjs - linux-arm64 - linux-mips - windows-x64 - alpine - dos