summaryrefslogtreecommitdiff
path: root/x11-libs/cairo
diff options
context:
space:
mode:
Diffstat (limited to 'x11-libs/cairo')
-rw-r--r--x11-libs/cairo/Manifest10
-rw-r--r--x11-libs/cairo/cairo-1.14.10.ebuild149
-rw-r--r--x11-libs/cairo/cairo-1.14.8.ebuild149
-rw-r--r--x11-libs/cairo/cairo-9999.ebuild152
-rw-r--r--x11-libs/cairo/files/cairo-1.12.18-disable-test-suite.patch15
-rw-r--r--x11-libs/cairo/files/cairo-respect-fontconfig.patch13
-rw-r--r--x11-libs/cairo/metadata.xml22
7 files changed, 510 insertions, 0 deletions
diff --git a/x11-libs/cairo/Manifest b/x11-libs/cairo/Manifest
new file mode 100644
index 000000000000..181f2b6c1722
--- /dev/null
+++ b/x11-libs/cairo/Manifest
@@ -0,0 +1,10 @@
+AUX cairo-1.12.18-disable-test-suite.patch 390 SHA256 3ec119ac2380f8565cebbcea4f745e89eeb78686e76e6b15345a76f05812c254 SHA512 097c1a32e007fb6852a0df1ad7f7eab6d00a422247055edf140d3f2b819122b16a9c09e21b9a601766a7facda1961262e68b078944877cab0b3b234eff149783 WHIRLPOOL 5d28d10da94b4d5ea6d90f7eddacf382cfb7307fd312d8029b633cbf5b0cdcaba54148bed100aeab20920974a5bac74fee2b03a7e7893c79360d4ec7f20c13b7
+AUX cairo-respect-fontconfig.patch 538 SHA256 1732f21adfe5ab291d987b7537b13470266253f599901a4707d27fd2b3d66734 SHA512 4d4d473f956b56f11b31f513de06751dcc77342e0f04ecf37064a74b8217f9d3536c0a8a41b09e580f34576ff2d06815b4cbc2bc091c201f947965509677415e WHIRLPOOL c7d8f364a787b095054507a6dceafe08e8112322853e261303adc07b79a9070be63200dbd4ff465943e2303126bcd7eec51b0f6c53f1d4e9a49fd363acbccde2
+DIST cairo-1.14.10.tar.xz 36251788 SHA256 7e87878658f2c9951a14fc64114d4958c0e65ac47530b8ac3078b2ce41b66a09 SHA512 a381d97e6046da0012eb5595118efb95ff02e3e84310682e458b503ebf22d6b2663bcc1391980768bb9cd02ae809b8df2e11d6200b48745dc5ec824c342b5852 WHIRLPOOL f79c4c0f957ae6e5adabed305a0eb3ca793b884d689b2a652d680a9e1bab20ccf7bd3955abfe4fa14f1bf0947bee08037962f2daddb3005d1d3dc23a875934b2
+DIST cairo-1.14.8.tar.xz 35392464 SHA256 d1f2d98ae9a4111564f6de4e013d639cf77155baf2556582295a0f00a9bc5e20 SHA512 dfe77a01ca72e21e11610243a5f6e92e6b0821c4ace11686fb0bac8f0bf9217a79974ff46bdf3d19fd85173f5f24f2c3f6d4e00cf729a55a6492e6798d6c4ec2 WHIRLPOOL dd4088b8610cac7c9fe9c7dd2135830f423276aaa98fc52c94f6540778c2d43d8dfae9844fd1ecba920ac9eb96500d01bb09bedc3867287ad38c9e1adf067549
+EBUILD cairo-1.14.10.ebuild 4250 SHA256 a886c3df2c6866c616cd9b967024ff667d4bdca1481317d3cd79f3bf0991f893 SHA512 dc27e3c4e12e755fe8b89453dcfe98b4ceeec0c45abe9f7b37bb21b08c888c91f67678a376f4447217197aedffcb33b5a0517c7531034166f290dee270ed338d WHIRLPOOL f0badfdaf63c07284661f69fa8626327b4e0cdff922623151f57ea0e8b27116cf3d25376d6afc3d604f7a4732273e420fbbbba3382ed3e659c3ff08ea656c91b
+EBUILD cairo-1.14.8.ebuild 4271 SHA256 9e48761db19baa8db189818c23c6e9623ea84e330e0a2f957514744b58a63289 SHA512 76e270f094460707128876a81156a0d22e4dd145737faecc1d5a9b6de5a58eedbfcbf385cddd9707e9a8d5a31531bae2c5e36def61f2cd52ff28dd98908622c9 WHIRLPOOL 01327287c28efb26f3d2fbcf5a4d446e7fd680d9bfd01109a1556e3cda16a6b2985ed1b6e14db2c060ade4f9ef46d46b1f724621c0a89570931bd53cb4fbf449
+EBUILD cairo-9999.ebuild 4299 SHA256 025b4d62d2ac5385bad77b1686ac03f7e6d3b8087be3822e52217e0f31944c8d SHA512 87bc9652d7b194382fe108722ba422b5e27476847b5a13234216de947b6c3c2f582076570e61b808134eeb0558c22072b320feb18378c088bb44b9c3e62906ec WHIRLPOOL 79f45befe4a38c4982a788c9c817326db7bd3181d70d379623938b679c604d628c82c5985d61bd1fdbbfddcddc0fc6cb710f0fbd51a1b52a57260f75b05cebbc
+MISC ChangeLog 5087 SHA256 9dcefd529b90cb54f1152dd33f23c4c4ddd5c76264b31a81dcbb9131bece49b0 SHA512 0b47fe70439070756984a1f53dae0a29724c7956dfd6df0f9a8823b1b9e8f0348b9a4e4949341345ef7319550ace002dbf32f5559461277d725de64f5373ffef WHIRLPOOL 85195912a19014778d9aca8a2eacc901b5ff6aefef64fb9a002d5315c8dbdfa3a007a5ae32bbff50551fd892155aa8d21e6e8b1e0138808af2c812f9328f0297
+MISC ChangeLog-2015 64641 SHA256 30d317273971e5715d6811c4a658d1cfa8eab9536dad67e2b1a458efe6fa1b9c SHA512 fc13038ad2e7270d3630a5662b0531721199d283a1629a2684361991706bcddcf002289db615231e69a0ed9ce435e7b58e72c7c93f6bd6f1b5bbc8f1bb69d96d WHIRLPOOL e9515386519772dc8ee1d31a21b3494cf2b4ac1eabbd7f23eebaba224cf3f89c9cc220dbb59ae25720e64f8a5fc8937746787f4b2f436f4b1fc69351c9f77ba4
+MISC metadata.xml 843 SHA256 bc55b7dcf0dce835e23f40e3ce209dd7a66c183eed077f1d57a327ea46a7a7bd SHA512 5ac25111c8cf11d1516aee9fbc0cdf94b90bcdcb685f449ca8cf247ae873bf626b8eb41b115075f2ee89c5b833330ad25a63ffa6833f9679817bdb65b6ef6fb4 WHIRLPOOL 84b57fd1fb1980022e4f06a55192819c8407fae19eb7c475acb9c8b126af5250d07372cc649839dc6a75ff14caee5c60444c380a3fd60a1c463929874d29896a
diff --git a/x11-libs/cairo/cairo-1.14.10.ebuild b/x11-libs/cairo/cairo-1.14.10.ebuild
new file mode 100644
index 000000000000..396118fc0619
--- /dev/null
+++ b/x11-libs/cairo/cairo-1.14.10.ebuild
@@ -0,0 +1,149 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils flag-o-matic autotools multilib-minimal
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://anongit.freedesktop.org/git/cairo"
+ SRC_URI=""
+else
+ SRC_URI="https://www.cairographics.org/releases/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="A vector graphics library with cross-device output support"
+HOMEPAGE="https://www.cairographics.org"
+LICENSE="|| ( LGPL-2.1 MPL-1.1 )"
+SLOT="0"
+IUSE="X aqua debug directfb gles2 +glib opengl static-libs +svg valgrind xcb"
+# gtk-doc regeneration doesn't seem to work with out-of-source builds
+#[[ ${PV} == *9999* ]] && IUSE="${IUSE} doc" # API docs are provided in tarball, no need to regenerate
+
+# Test causes a circular depend on gtk+... since gtk+ needs cairo but test needs gtk+ so we need to block it
+RESTRICT="test"
+
+RDEPEND=">=dev-libs/lzo-2.06-r1[${MULTILIB_USEDEP}]
+ >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}]
+ >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}]
+ >=media-libs/libpng-1.6.10:0=[${MULTILIB_USEDEP}]
+ sys-libs/binutils-libs:0=[${MULTILIB_USEDEP}]
+ >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
+ >=x11-libs/pixman-0.32.4[${MULTILIB_USEDEP}]
+ directfb? ( dev-libs/DirectFB )
+ gles2? ( >=media-libs/mesa-9.1.6[gles2,${MULTILIB_USEDEP}] )
+ glib? ( >=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}] )
+ opengl? ( >=media-libs/mesa-9.1.6[egl,${MULTILIB_USEDEP}] )
+ X? (
+ >=x11-libs/libXrender-0.9.8[${MULTILIB_USEDEP}]
+ >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
+ )
+ xcb? (
+ >=x11-libs/libxcb-1.9.1[${MULTILIB_USEDEP}]
+ )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-gtklibs-20131008-r1
+ !app-emulation/emul-linux-x86-gtklibs[-abi_x86_32(-)]
+ )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ >=sys-devel/libtool-2
+ X? (
+ >=x11-proto/renderproto-0.11.1-r1[${MULTILIB_USEDEP}]
+ )"
+#[[ ${PV} == *9999* ]] && DEPEND="${DEPEND}
+# doc? (
+# >=dev-util/gtk-doc-1.6
+# ~app-text/docbook-xml-dtd-4.2
+# )"
+
+REQUIRED_USE="
+ gles2? ( !opengl )
+"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/cairo/cairo-directfb.h
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.12.18-disable-test-suite.patch
+ "${FILESDIR}"/${PN}-respect-fontconfig.patch
+)
+
+src_prepare() {
+ default
+
+ # tests and perf tools require X, bug #483574
+ if ! use X; then
+ sed -e '/^SUBDIRS/ s#boilerplate test perf# #' -i Makefile.am || die
+ fi
+
+ # Slightly messed build system YAY
+ if [[ ${PV} == *9999* ]]; then
+ touch boilerplate/Makefile.am.features
+ touch src/Makefile.am.features
+ touch ChangeLog
+ fi
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ local myopts
+
+ [[ ${CHOST} == *-interix* ]] && append-flags -D_REENTRANT
+
+ use elibc_FreeBSD && myopts+=" --disable-symbol-lookup"
+ [[ ${CHOST} == *-darwin* ]] && myopts+=" --disable-symbol-lookup"
+
+ # TODO: remove this (and add USE-dep) when DirectFB is converted,
+ # bug #484248 -- but beware of the circular dep.
+ if ! multilib_is_native_abi; then
+ myopts+=" --disable-directfb"
+ fi
+
+ # TODO: remove this (and add USE-dep) when qtgui is converted, bug #498010
+ if ! multilib_is_native_abi; then
+ myopts+=" --disable-qt"
+ fi
+
+ # [[ ${PV} == *9999* ]] && myopts+=" $(use_enable doc gtk-doc)"
+
+ ECONF_SOURCE="${S}" \
+ econf \
+ --disable-dependency-tracking \
+ $(use_with X x) \
+ $(use_enable X tee) \
+ $(use_enable X xlib) \
+ $(use_enable X xlib-xrender) \
+ $(use_enable aqua quartz) \
+ $(use_enable aqua quartz-image) \
+ $(use_enable debug test-surfaces) \
+ $(use_enable directfb) \
+ $(use_enable gles2 glesv2) \
+ $(use_enable glib gobject) \
+ $(use_enable opengl gl) \
+ $(use_enable static-libs static) \
+ $(use_enable svg) \
+ $(use_enable valgrind) \
+ $(use_enable xcb) \
+ $(use_enable xcb xcb-shm) \
+ --enable-ft \
+ --enable-pdf \
+ --enable-png \
+ --enable-ps \
+ --disable-drm \
+ --disable-gallium \
+ --disable-qt \
+ --disable-vg \
+ --disable-xlib-xcb \
+ ${myopts}
+}
+
+multilib_src_install_all() {
+ prune_libtool_files --all
+ einstalldocs
+}
diff --git a/x11-libs/cairo/cairo-1.14.8.ebuild b/x11-libs/cairo/cairo-1.14.8.ebuild
new file mode 100644
index 000000000000..e36dbac0a735
--- /dev/null
+++ b/x11-libs/cairo/cairo-1.14.8.ebuild
@@ -0,0 +1,149 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils flag-o-matic autotools multilib-minimal
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://anongit.freedesktop.org/git/cairo"
+ SRC_URI=""
+else
+ SRC_URI="https://www.cairographics.org/releases/${P}.tar.xz"
+ KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="A vector graphics library with cross-device output support"
+HOMEPAGE="https://www.cairographics.org"
+LICENSE="|| ( LGPL-2.1 MPL-1.1 )"
+SLOT="0"
+IUSE="X aqua debug directfb gles2 +glib opengl static-libs +svg valgrind xcb"
+# gtk-doc regeneration doesn't seem to work with out-of-source builds
+#[[ ${PV} == *9999* ]] && IUSE="${IUSE} doc" # API docs are provided in tarball, no need to regenerate
+
+# Test causes a circular depend on gtk+... since gtk+ needs cairo but test needs gtk+ so we need to block it
+RESTRICT="test"
+
+RDEPEND=">=dev-libs/lzo-2.06-r1[${MULTILIB_USEDEP}]
+ >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}]
+ >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}]
+ >=media-libs/libpng-1.6.10:0=[${MULTILIB_USEDEP}]
+ sys-libs/binutils-libs:0=[${MULTILIB_USEDEP}]
+ >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
+ >=x11-libs/pixman-0.32.4[${MULTILIB_USEDEP}]
+ directfb? ( dev-libs/DirectFB )
+ gles2? ( >=media-libs/mesa-9.1.6[gles2,${MULTILIB_USEDEP}] )
+ glib? ( >=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}] )
+ opengl? ( || ( >=media-libs/mesa-9.1.6[egl,${MULTILIB_USEDEP}] media-libs/opengl-apple ) )
+ X? (
+ >=x11-libs/libXrender-0.9.8[${MULTILIB_USEDEP}]
+ >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
+ )
+ xcb? (
+ >=x11-libs/libxcb-1.9.1[${MULTILIB_USEDEP}]
+ )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-gtklibs-20131008-r1
+ !app-emulation/emul-linux-x86-gtklibs[-abi_x86_32(-)]
+ )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ >=sys-devel/libtool-2
+ X? (
+ >=x11-proto/renderproto-0.11.1-r1[${MULTILIB_USEDEP}]
+ )"
+#[[ ${PV} == *9999* ]] && DEPEND="${DEPEND}
+# doc? (
+# >=dev-util/gtk-doc-1.6
+# ~app-text/docbook-xml-dtd-4.2
+# )"
+
+REQUIRED_USE="
+ gles2? ( !opengl )
+"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/cairo/cairo-directfb.h
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.12.18-disable-test-suite.patch
+ "${FILESDIR}"/${PN}-respect-fontconfig.patch
+)
+
+src_prepare() {
+ default
+
+ # tests and perf tools require X, bug #483574
+ if ! use X; then
+ sed -e '/^SUBDIRS/ s#boilerplate test perf# #' -i Makefile.am || die
+ fi
+
+ # Slightly messed build system YAY
+ if [[ ${PV} == *9999* ]]; then
+ touch boilerplate/Makefile.am.features
+ touch src/Makefile.am.features
+ touch ChangeLog
+ fi
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ local myopts
+
+ [[ ${CHOST} == *-interix* ]] && append-flags -D_REENTRANT
+
+ use elibc_FreeBSD && myopts+=" --disable-symbol-lookup"
+ [[ ${CHOST} == *-darwin* ]] && myopts+=" --disable-symbol-lookup"
+
+ # TODO: remove this (and add USE-dep) when DirectFB is converted,
+ # bug #484248 -- but beware of the circular dep.
+ if ! multilib_is_native_abi; then
+ myopts+=" --disable-directfb"
+ fi
+
+ # TODO: remove this (and add USE-dep) when qtgui is converted, bug #498010
+ if ! multilib_is_native_abi; then
+ myopts+=" --disable-qt"
+ fi
+
+ # [[ ${PV} == *9999* ]] && myopts+=" $(use_enable doc gtk-doc)"
+
+ ECONF_SOURCE="${S}" \
+ econf \
+ --disable-dependency-tracking \
+ $(use_with X x) \
+ $(use_enable X tee) \
+ $(use_enable X xlib) \
+ $(use_enable X xlib-xrender) \
+ $(use_enable aqua quartz) \
+ $(use_enable aqua quartz-image) \
+ $(use_enable debug test-surfaces) \
+ $(use_enable directfb) \
+ $(use_enable gles2 glesv2) \
+ $(use_enable glib gobject) \
+ $(use_enable opengl gl) \
+ $(use_enable static-libs static) \
+ $(use_enable svg) \
+ $(use_enable valgrind) \
+ $(use_enable xcb) \
+ $(use_enable xcb xcb-shm) \
+ --enable-ft \
+ --enable-pdf \
+ --enable-png \
+ --enable-ps \
+ --disable-drm \
+ --disable-gallium \
+ --disable-qt \
+ --disable-vg \
+ --disable-xlib-xcb \
+ ${myopts}
+}
+
+multilib_src_install_all() {
+ prune_libtool_files --all
+ einstalldocs
+}
diff --git a/x11-libs/cairo/cairo-9999.ebuild b/x11-libs/cairo/cairo-9999.ebuild
new file mode 100644
index 000000000000..9e0f4f744bfa
--- /dev/null
+++ b/x11-libs/cairo/cairo-9999.ebuild
@@ -0,0 +1,152 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils flag-o-matic autotools multilib-minimal
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://anongit.freedesktop.org/git/cairo"
+ SRC_URI=""
+else
+ SRC_URI="https://www.cairographics.org/releases/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="A vector graphics library with cross-device output support"
+HOMEPAGE="https://www.cairographics.org"
+LICENSE="|| ( LGPL-2.1 MPL-1.1 )"
+SLOT="0"
+IUSE="X aqua debug directfb gles2 +glib opengl static-libs +svg utils valgrind xcb"
+# gtk-doc regeneration doesn't seem to work with out-of-source builds
+#[[ ${PV} == *9999* ]] && IUSE="${IUSE} doc" # API docs are provided in tarball, no need to regenerate
+
+# Test causes a circular depend on gtk+... since gtk+ needs cairo but test needs gtk+ so we need to block it
+RESTRICT="test"
+
+RDEPEND="
+ >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}]
+ >=media-libs/freetype-2.5.0.1:2[${MULTILIB_USEDEP}]
+ >=media-libs/libpng-1.6.10:0=[${MULTILIB_USEDEP}]
+ sys-libs/binutils-libs:0=[${MULTILIB_USEDEP}]
+ >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
+ >=x11-libs/pixman-0.32.4[${MULTILIB_USEDEP}]
+ directfb? ( dev-libs/DirectFB )
+ gles2? ( >=media-libs/mesa-9.1.6[gles2,${MULTILIB_USEDEP}] )
+ glib? ( >=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}] )
+ opengl? ( >=media-libs/mesa-9.1.6[egl,${MULTILIB_USEDEP}] )
+ utils? ( >=dev-libs/lzo-2.06-r1[${MULTILIB_USEDEP}] )
+ X? (
+ >=x11-libs/libXrender-0.9.8[${MULTILIB_USEDEP}]
+ >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
+ )
+ xcb? (
+ >=x11-libs/libxcb-1.9.1[${MULTILIB_USEDEP}]
+ )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-gtklibs-20131008-r1
+ !app-emulation/emul-linux-x86-gtklibs[-abi_x86_32(-)]
+ )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ >=sys-devel/libtool-2
+ X? (
+ >=x11-proto/renderproto-0.11.1-r1[${MULTILIB_USEDEP}]
+ )"
+#[[ ${PV} == *9999* ]] && DEPEND="${DEPEND}
+# doc? (
+# >=dev-util/gtk-doc-1.6
+# ~app-text/docbook-xml-dtd-4.2
+# )"
+
+REQUIRED_USE="
+ gles2? ( !opengl )
+"
+
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/cairo/cairo-directfb.h
+)
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.12.18-disable-test-suite.patch
+ "${FILESDIR}"/${PN}-respect-fontconfig.patch
+)
+
+src_prepare() {
+ default
+
+ # tests and perf tools require X, bug #483574
+ if ! use X; then
+ sed -e '/^SUBDIRS/ s#boilerplate test perf# #' -i Makefile.am || die
+ fi
+
+ # Slightly messed build system YAY
+ if [[ ${PV} == *9999* ]]; then
+ touch boilerplate/Makefile.am.features
+ touch src/Makefile.am.features
+ touch ChangeLog
+ fi
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ local myopts
+
+ [[ ${CHOST} == *-interix* ]] && append-flags -D_REENTRANT
+
+ use elibc_FreeBSD && myopts+=" --disable-symbol-lookup"
+
+ # TODO: remove this (and add USE-dep) when DirectFB is converted,
+ # bug #484248 -- but beware of the circular dep.
+ if ! multilib_is_native_abi; then
+ myopts+=" --disable-directfb"
+ fi
+
+ # TODO: remove this (and add USE-dep) when qtgui is converted, bug #498010
+ if ! multilib_is_native_abi; then
+ myopts+=" --disable-qt"
+ fi
+
+ # [[ ${PV} == *9999* ]] && myopts+=" $(use_enable doc gtk-doc)"
+
+ ECONF_SOURCE="${S}" \
+ econf \
+ --disable-dependency-tracking \
+ $(use_with X x) \
+ $(use_enable X tee) \
+ $(use_enable X xlib) \
+ $(use_enable X xlib-xrender) \
+ $(use_enable aqua quartz) \
+ $(use_enable aqua quartz-image) \
+ $(use_enable debug test-surfaces) \
+ $(use_enable directfb) \
+ $(use_enable gles2 glesv2) \
+ $(use_enable glib gobject) \
+ $(use_enable opengl gl) \
+ $(use_enable static-libs static) \
+ $(use_enable svg) \
+ $(use_enable utils interpreter) \
+ $(use_enable utils script) \
+ $(use_enable utils trace) \
+ $(use_enable valgrind) \
+ $(use_enable xcb) \
+ $(use_enable xcb xcb-shm) \
+ --enable-ft \
+ --enable-pdf \
+ --enable-png \
+ --enable-ps \
+ --disable-drm \
+ --disable-gallium \
+ --disable-qt \
+ --disable-vg \
+ --disable-xlib-xcb \
+ ${myopts}
+}
+
+multilib_src_install_all() {
+ prune_libtool_files --all
+ einstalldocs
+}
diff --git a/x11-libs/cairo/files/cairo-1.12.18-disable-test-suite.patch b/x11-libs/cairo/files/cairo-1.12.18-disable-test-suite.patch
new file mode 100644
index 000000000000..6822121ce495
--- /dev/null
+++ b/x11-libs/cairo/files/cairo-1.12.18-disable-test-suite.patch
@@ -0,0 +1,15 @@
+diff --git a/Makefile.am b/Makefile.am
+index 03fa352..7e11d24 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -18,10 +18,6 @@ ACLOCAL_AMFLAGS = -I build ${ACLOCAL_FLAGS}
+
+ DIST_SUBDIRS = src doc util boilerplate test perf
+ SUBDIRS = src doc util
+-# libpng is required for our test programs
+-if CAIRO_HAS_PNG_FUNCTIONS
+-SUBDIRS += boilerplate test perf
+-endif
+
+ configure: cairo-version.h
+
diff --git a/x11-libs/cairo/files/cairo-respect-fontconfig.patch b/x11-libs/cairo/files/cairo-respect-fontconfig.patch
new file mode 100644
index 000000000000..b0a1b2963502
--- /dev/null
+++ b/x11-libs/cairo/files/cairo-respect-fontconfig.patch
@@ -0,0 +1,13 @@
+--- cairo-1.7.6-orig/src/cairo-ft-font.c 2008-09-29 21:43:13.000000000 +0100
++++ cairo-1.7.6/src/cairo-ft-font.c 2008-09-29 21:52:19.000000000 +0100
+@@ -1705,7 +1705,9 @@
+ options->base.subpixel_order = other->base.subpixel_order;
+ }
+
+- if (options->base.hint_style == CAIRO_HINT_STYLE_DEFAULT)
++ options->base.hint_style = CAIRO_HINT_STYLE_DEFAULT;
++
++ if (other->base.hint_style != CAIRO_HINT_STYLE_DEFAULT)
+ options->base.hint_style = other->base.hint_style;
+
+ if (other->base.hint_style == CAIRO_HINT_STYLE_NONE)
diff --git a/x11-libs/cairo/metadata.xml b/x11-libs/cairo/metadata.xml
new file mode 100644
index 000000000000..38e0470af0c2
--- /dev/null
+++ b/x11-libs/cairo/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tetromino@gentoo.org</email>
+ <name>Alexandre Rostovtsev</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>x11@gentoo.org</email>
+ <name>X11</name>
+ </maintainer>
+ <use>
+ <flag name="opengl" restrict="&gt;=x11-libs/cairo-1.10.0">Build the OpenGL backend</flag>
+ <flag name="gles2">Build the OpenGL ES 2 backend</flag>
+ <flag name="glib">Compile with GLib Object System support</flag>
+ <flag name="utils">Build support for Cairo script and trace utilities</flag>
+ <flag name="valgrind">Built-in support to mark memory regions</flag>
+ </use>
+ <upstream>
+ <remote-id type="cpe">cpe:/a:cairographics:cairo</remote-id>
+ </upstream>
+</pkgmetadata>