From ad75ca50360f9590325f0f709c091832b70eab1d Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 8 Oct 2022 01:28:43 +0100 Subject: gentoo auto-resync : 08:10:2022 - 01:28:43 --- x11-libs/cairo/Manifest | 8 +- x11-libs/cairo/cairo-1.16.0-r5.ebuild | 134 ---------------------------------- x11-libs/cairo/cairo-1.16.0-r6.ebuild | 134 ++++++++++++++++++++++++++++++++++ x11-libs/cairo/cairo-1.17.6.ebuild | 100 +++++++++++++++++++++++++ x11-libs/cairo/cairo-9999.ebuild | 133 ++++++++++++++------------------- x11-libs/cairo/metadata.xml | 1 + 6 files changed, 296 insertions(+), 214 deletions(-) delete mode 100644 x11-libs/cairo/cairo-1.16.0-r5.ebuild create mode 100644 x11-libs/cairo/cairo-1.16.0-r6.ebuild create mode 100644 x11-libs/cairo/cairo-1.17.6.ebuild (limited to 'x11-libs/cairo') diff --git a/x11-libs/cairo/Manifest b/x11-libs/cairo/Manifest index 923b485ad932..29af98520022 100644 --- a/x11-libs/cairo/Manifest +++ b/x11-libs/cairo/Manifest @@ -6,6 +6,8 @@ AUX cairo-1.16.0-pdf-add-missing-flush.patch 914 BLAKE2B 6277dccf5e6fc70d885548b AUX cairo-1.16.0-strings.patch 1379 BLAKE2B 60b63e80ae35385a0c2cbbface46379e76ad8cbc472d76fd68803330e42c49f9c71d662b1824ebf16fbd1bde794ec12a34b8e311758d6e639411e35cd1f34f97 SHA512 d9d9e95b80a0aaee703ff4f58526455db5ac57bce35237826ef4730c54f58b6752756ab92f23e36343e056b0e84269c4b692dfc40cc7836afad3b44fc46c2e26 AUX cairo-respect-fontconfig.patch 538 BLAKE2B 7cc137277ccb2e1d641fd8ca39ee7ccd0fd4981a07a25122387c2f1b6ca4cd89a830360357953706dee62e4233126cd0630e4622f0682f6782cd27fa31f20ecc SHA512 4d4d473f956b56f11b31f513de06751dcc77342e0f04ecf37064a74b8217f9d3536c0a8a41b09e580f34576ff2d06815b4cbc2bc091c201f947965509677415e DIST cairo-1.16.0.tar.xz 41997432 BLAKE2B aa37edf7fdf0c952484fd0adc9281724227db93958d6e4919216b30e9017fab670bc2340e3b975737080f1f67dec24025fe0e4680e275ab7703cfb9235eb1fe0 SHA512 9eb27c4cf01c0b8b56f2e15e651f6d4e52c99d0005875546405b64f1132aed12fbf84727273f493d84056a13105e065009d89e94a8bfaf2be2649e232b82377f -EBUILD cairo-1.16.0-r5.ebuild 3924 BLAKE2B f41892bc51dffe2123c7b5396952cdec13396cdd8fdbfe9ebf37b9a73471da310618127720c2bac9070087667da1be089bae64a7e8604014c3e965b71e0ebcc6 SHA512 6cb1f355cb870b76615a05db47010f3ed4d80a4fcac929691cef958604e4e9ad5e75e6b82c7acbdcc005dd52525c43281efbdd5bc690102caeac2d2885ba68b2 -EBUILD cairo-9999.ebuild 3508 BLAKE2B b858786e987dfb89fb18a61222d50123d1975ce3eb9e3a324b149b771038ce8d6766bf0107e24cedabef053a812c155f3f938f5eb63ce7e7004904e71339fe5f SHA512 0d6a8991cf66279fc4e894781ba2b0cff145d56ef8ee94f952d736f0eea3751e8dfc396b3e2dcd578350191aa7d31a2c795c9da71027e9f767ff7209f284c82e -MISC metadata.xml 710 BLAKE2B 11585ec0ac0ad56eb192f84388ab9fb7ce751ae29555fb366cd8966ec38fceace4978a2b6cad310073484eae51539dcbbe68323205b2b8e97217bc1b87f62b48 SHA512 1021784a9a6db6290fa57e2e5ed356131860820a114a601c8e77fab77eb7b075b81f1288e5df97cad8fe2d86b7aeb67a712f8fd9c5ed775d607d50d6a589dc01 +DIST cairo-1.17.6.tar.bz2 43700076 BLAKE2B 05ac766d33e9bdfc5df0347e9a80611554d64886715d1620fbe6f05f36f0134e46e1e6107738d260b380fab5ef2ac609922dce9ebcac01234710d8e2a76e9724 SHA512 1537b34ca49b853f4f60a7ceac0c1b878e7e2874f1ca3a37ab6ccbb704a37872314447016ad07b82312b302bb6df86b71265232a802ccdb9fb8cd18f211ff185 +EBUILD cairo-1.16.0-r6.ebuild 3919 BLAKE2B 4d35c54d4e93fa37dbf726f524b01bc44a0eee6179b1772823f6a08bc75085688bf3d1dff318f71599e8ccc8a46e5fa51c48f13ec0dd7553ad205bed5fbcde4e SHA512 65a715633863be2a29f97786b7db63e2b160f0fe342438d4df6c4eb9ca83ace1cbc6315da229258286f7547490414339b270ad2aa047955c9be5658a694be4c3 +EBUILD cairo-1.17.6.ebuild 2843 BLAKE2B a123d14d1e6cfbe5828662026ce2da1fd2a63a9e545f6abb05038d4b078e934706cb645851595fdd793542615155f74190d32864b0acbd498e86e3023eb04ceb SHA512 455855ba076c41cc60b819c76e77faea4a35b00a91f36ce2b8531f0acdc821f0d0def76fd79edfe6b9ade345744c9786786081295be2fd1d307bd07376f693c7 +EBUILD cairo-9999.ebuild 2843 BLAKE2B a123d14d1e6cfbe5828662026ce2da1fd2a63a9e545f6abb05038d4b078e934706cb645851595fdd793542615155f74190d32864b0acbd498e86e3023eb04ceb SHA512 455855ba076c41cc60b819c76e77faea4a35b00a91f36ce2b8531f0acdc821f0d0def76fd79edfe6b9ade345744c9786786081295be2fd1d307bd07376f693c7 +MISC metadata.xml 843 BLAKE2B 699529d72773e1de0e83551581919bb7a54b7783b2103abc3f900a75f4b96fd899d55b4a996b73e9d091dc4303c2c67b76a258667d81d3cd0032b1ca2c133f69 SHA512 bc3b9ad654865cdb5907860247ccb826f4f665690ff9ef472e6c250ed1e17eb3746923cc78dcd3c594048b690859e0355aa177c60969c73e0f06456df59d57b1 diff --git a/x11-libs/cairo/cairo-1.16.0-r5.ebuild b/x11-libs/cairo/cairo-1.16.0-r5.ebuild deleted file mode 100644 index dc8e73c91275..000000000000 --- a/x11-libs/cairo/cairo-1.16.0-r5.ebuild +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic autotools multilib-minimal - -if [[ ${PV} == *9999* ]]; then - inherit git-r3 - EGIT_REPO_URI="https://gitlab.freedesktop.org/cairo/cairo.git" - SRC_URI="" -else - SRC_URI="https://www.cairographics.org/releases/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-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/ https://gitlab.freedesktop.org/cairo/cairo" -LICENSE="|| ( LGPL-2.1 MPL-1.1 )" -SLOT="0" -IUSE="X aqua debug gles2-only +glib opengl static-libs +svg utils valgrind" -# 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" - -BDEPEND=" - virtual/pkgconfig - >=sys-devel/libtool-2" -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[png,${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}] - gles2-only? ( >=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(+),X(+),${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}] - >=x11-libs/libxcb-1.9.1[${MULTILIB_USEDEP}] - )" -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto )" -#[[ ${PV} == *9999* ]] && DEPEND="${DEPEND} -# doc? ( -# >=dev-util/gtk-doc-1.6 -# ~app-text/docbook-xml-dtd-4.2 -# )" - -REQUIRED_USE=" - gles2-only? ( !opengl ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-1.12.18-disable-test-suite.patch - "${FILESDIR}"/${PN}-respect-fontconfig.patch - "${FILESDIR}"/${P}-pdf-add-missing-flush.patch - "${FILESDIR}"/${P}-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch - "${FILESDIR}"/${P}-strings.patch - "${FILESDIR}"/${P}-binutils-2.39-ptr.patch -) - -src_prepare() { - default - - if has_version ">=sys-libs/binutils-libs-2.34"; then - eapply "${FILESDIR}"/${PN}-1.16.0-binutils-2.34.patch - fi - - # 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 - - # [[ ${PV} == *9999* ]] && myopts+=" $(use_enable doc gtk-doc)" - - ECONF_SOURCE="${S}" \ - econf \ - $(use_with X x) \ - $(use_enable X tee) \ - $(use_enable X xlib) \ - $(use_enable X xlib-xrender) \ - $(use_enable X xcb) \ - $(use_enable X xcb-shm) \ - $(use_enable aqua quartz) \ - $(use_enable aqua quartz-image) \ - $(use_enable debug test-surfaces) \ - $(use_enable gles2-only glesv2) \ - $(use_enable glib gobject) \ - $(use_enable opengl gl) \ - $(use_enable static-libs static) \ - $(use_enable svg) \ - $(use_enable utils trace) \ - $(use_enable valgrind) \ - --enable-ft \ - --enable-interpreter \ - --enable-pdf \ - --enable-png \ - --enable-ps \ - --enable-script \ - --disable-drm \ - --disable-directfb \ - --disable-gallium \ - --disable-qt \ - --disable-vg \ - --disable-xlib-xcb \ - ${myopts} -} - -multilib_src_install_all() { - find "${D}" -name '*.la' -delete || die - einstalldocs -} diff --git a/x11-libs/cairo/cairo-1.16.0-r6.ebuild b/x11-libs/cairo/cairo-1.16.0-r6.ebuild new file mode 100644 index 000000000000..299a8c20e695 --- /dev/null +++ b/x11-libs/cairo/cairo-1.16.0-r6.ebuild @@ -0,0 +1,134 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit flag-o-matic autotools multilib-minimal + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.freedesktop.org/cairo/cairo.git" + SRC_URI="" +else + SRC_URI="https://www.cairographics.org/releases/${P}.tar.xz" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-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/ https://gitlab.freedesktop.org/cairo/cairo" +LICENSE="|| ( LGPL-2.1 MPL-1.1 )" +SLOT="0" +IUSE="X aqua debug gles2-only +glib opengl static-libs +svg utils valgrind" +# 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" + +BDEPEND=" + virtual/pkgconfig + >=sys-devel/libtool-2" +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[png,${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}] + gles2-only? ( >=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(+),X(+),${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}] + >=x11-libs/libxcb-1.9.1[${MULTILIB_USEDEP}] + )" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto )" +#[[ ${PV} == *9999* ]] && DEPEND="${DEPEND} +# doc? ( +# >=dev-util/gtk-doc-1.6 +# ~app-text/docbook-xml-dtd-4.2 +# )" + +REQUIRED_USE=" + gles2-only? ( !opengl ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.12.18-disable-test-suite.patch + "${FILESDIR}"/${PN}-respect-fontconfig.patch + "${FILESDIR}"/${P}-pdf-add-missing-flush.patch + "${FILESDIR}"/${P}-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch + "${FILESDIR}"/${P}-strings.patch + "${FILESDIR}"/${P}-binutils-2.39-ptr.patch +) + +src_prepare() { + default + + if has_version ">=sys-libs/binutils-libs-2.34"; then + eapply "${FILESDIR}"/${PN}-1.16.0-binutils-2.34.patch + fi + + # 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 + + # [[ ${PV} == *9999* ]] && myopts+=" $(use_enable doc gtk-doc)" + + ECONF_SOURCE="${S}" \ + econf \ + $(use_with X x) \ + $(use_enable X tee) \ + $(use_enable X xlib) \ + $(use_enable X xlib-xrender) \ + $(use_enable X xcb) \ + $(use_enable X xcb-shm) \ + $(use_enable aqua quartz) \ + $(use_enable aqua quartz-image) \ + $(use_enable debug test-surfaces) \ + $(use_enable gles2-only glesv2) \ + $(use_enable glib gobject) \ + $(use_enable opengl gl) \ + $(use_enable static-libs static) \ + --enable-svg \ + $(use_enable utils trace) \ + $(use_enable valgrind) \ + --enable-ft \ + --enable-interpreter \ + --enable-pdf \ + --enable-png \ + --enable-ps \ + --enable-script \ + --disable-drm \ + --disable-directfb \ + --disable-gallium \ + --disable-qt \ + --disable-vg \ + --disable-xlib-xcb \ + ${myopts} +} + +multilib_src_install_all() { + find "${D}" -name '*.la' -delete || die + einstalldocs +} diff --git a/x11-libs/cairo/cairo-1.17.6.ebuild b/x11-libs/cairo/cairo-1.17.6.ebuild new file mode 100644 index 000000000000..74987be53131 --- /dev/null +++ b/x11-libs/cairo/cairo-1.17.6.ebuild @@ -0,0 +1,100 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson-multilib + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://gitlab.freedesktop.org/cairo/cairo.git" + SRC_URI="" +else + SRC_URI="https://gitlab.freedesktop.org/cairo/cairo/-/archive/${PV}/cairo-${PV}.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-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/ https://gitlab.freedesktop.org/cairo/cairo" +LICENSE="|| ( LGPL-2.1 MPL-1.1 )" +SLOT="0" +IUSE="X aqua debug gles2-only gles3 +glib gtk-doc opengl test" +REQUIRED_USE=" + gles2-only? ( !opengl ) + gles3? ( gles2-only ) +" +RESTRICT="!test? ( test ) test" # Requires poppler-glib, which isn't available in multilib + +RDEPEND=" + >=dev-libs/lzo-2.06-r1:2[${MULTILIB_USEDEP}] + >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}] + >=media-libs/freetype-2.5.0.1:2[png,${MULTILIB_USEDEP}] + >=media-libs/libpng-1.6.10:0=[${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}] + >=x11-libs/pixman-0.36[${MULTILIB_USEDEP}] + debug? ( sys-libs/binutils-libs:0=[${MULTILIB_USEDEP}] ) + gles2-only? ( >=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(+),X(+),${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}] + >=x11-libs/libxcb-1.9.1:=[${MULTILIB_USEDEP}] + )" +DEPEND="${RDEPEND} + X? ( x11-base/xorg-proto )" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/${PN}-respect-fontconfig.patch +) + +multilib_src_configure() { + local emesonargs=( + -Dfontconfig=enabled + -Dfreetype=enabled + -Dpng=enabled + $(meson_feature aqua quartz) + $(meson_feature X tee) + $(meson_feature X xcb) + $(meson_feature X xlib) + -Dxlib-xcb=disabled + -Dxml=disabled + -Dzlib=enabled + + $(meson_feature test tests) + + -Dgtk2-utils=disabled + + $(meson_feature glib) + -Dspectre=disabled # only used for tests + $(meson_feature debug symbol-lookup) + + $(meson_use gtk-doc gtk_doc) + ) + + if use opengl; then + emesonargs+=(-Dgl-backend=gl) + elif use gles2-only; then + if use gles3; then + emesonargs+=(-Dgl-backend=glesv3) + else + emesonargs+=(-Dgl-backend=glesv2) + fi + else + emesonargs+=(-Dgl-backend=disabled) + fi + + meson_src_configure +} + +multilib_src_install_all() { + einstalldocs + + if use gtk-doc; then + mkdir -p "${ED}"/usr/share/gtk-doc/cairo || die + mv "${ED}"/usr/share/gtk-doc/{html/cairo,cairo/html} || die + rmdir "${ED}"/usr/share/gtk-doc/html || die + fi +} diff --git a/x11-libs/cairo/cairo-9999.ebuild b/x11-libs/cairo/cairo-9999.ebuild index 1ee8a6752f0d..74987be53131 100644 --- a/x11-libs/cairo/cairo-9999.ebuild +++ b/x11-libs/cairo/cairo-9999.ebuild @@ -1,41 +1,38 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -inherit flag-o-matic autotools multilib-minimal +inherit meson-multilib if [[ ${PV} == *9999* ]]; then inherit git-r3 EGIT_REPO_URI="https://gitlab.freedesktop.org/cairo/cairo.git" SRC_URI="" else - SRC_URI="https://www.cairographics.org/releases/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + SRC_URI="https://gitlab.freedesktop.org/cairo/cairo/-/archive/${PV}/cairo-${PV}.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-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/ https://gitlab.freedesktop.org/cairo/cairo" LICENSE="|| ( LGPL-2.1 MPL-1.1 )" SLOT="0" -IUSE="X aqua debug gles2-only +glib opengl static-libs +svg utils valgrind" -# 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" +IUSE="X aqua debug gles2-only gles3 +glib gtk-doc opengl test" +REQUIRED_USE=" + gles2-only? ( !opengl ) + gles3? ( gles2-only ) +" +RESTRICT="!test? ( test ) test" # Requires poppler-glib, which isn't available in multilib -BDEPEND=" - virtual/pkgconfig - >=sys-devel/libtool-2" RDEPEND=" - >=dev-libs/lzo-2.06-r1[${MULTILIB_USEDEP}] + >=dev-libs/lzo-2.06-r1:2[${MULTILIB_USEDEP}] >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}] >=media-libs/freetype-2.5.0.1:2[png,${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.36.0[${MULTILIB_USEDEP}] + >=x11-libs/pixman-0.36[${MULTILIB_USEDEP}] + debug? ( sys-libs/binutils-libs:0=[${MULTILIB_USEDEP}] ) gles2-only? ( >=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(+),X(+),${MULTILIB_USEDEP}] ) @@ -43,79 +40,61 @@ RDEPEND=" >=x11-libs/libXrender-0.9.8[${MULTILIB_USEDEP}] >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] - >=x11-libs/libxcb-1.9.1[${MULTILIB_USEDEP}] + >=x11-libs/libxcb-1.9.1:=[${MULTILIB_USEDEP}] )" DEPEND="${RDEPEND} X? ( x11-base/xorg-proto )" -#[[ ${PV} == *9999* ]] && DEPEND="${DEPEND} -# doc? ( -# >=dev-util/gtk-doc-1.6 -# ~app-text/docbook-xml-dtd-4.2 -# )" - -REQUIRED_USE=" - gles2-only? ( !opengl ) -" +BDEPEND="virtual/pkgconfig" 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 - - # [[ ${PV} == *9999* ]] && myopts+=" $(use_enable doc gtk-doc)" + local emesonargs=( + -Dfontconfig=enabled + -Dfreetype=enabled + -Dpng=enabled + $(meson_feature aqua quartz) + $(meson_feature X tee) + $(meson_feature X xcb) + $(meson_feature X xlib) + -Dxlib-xcb=disabled + -Dxml=disabled + -Dzlib=enabled + + $(meson_feature test tests) + + -Dgtk2-utils=disabled + + $(meson_feature glib) + -Dspectre=disabled # only used for tests + $(meson_feature debug symbol-lookup) + + $(meson_use gtk-doc gtk_doc) + ) + + if use opengl; then + emesonargs+=(-Dgl-backend=gl) + elif use gles2-only; then + if use gles3; then + emesonargs+=(-Dgl-backend=glesv3) + else + emesonargs+=(-Dgl-backend=glesv2) + fi + else + emesonargs+=(-Dgl-backend=disabled) + fi - ECONF_SOURCE="${S}" \ - econf \ - $(use_with X x) \ - $(use_enable X tee) \ - $(use_enable X xlib) \ - $(use_enable X xlib-xrender) \ - $(use_enable X xcb) \ - $(use_enable X xcb-shm) \ - $(use_enable aqua quartz) \ - $(use_enable aqua quartz-image) \ - $(use_enable debug test-surfaces) \ - $(use_enable gles2-only glesv2) \ - $(use_enable glib gobject) \ - $(use_enable opengl gl) \ - $(use_enable static-libs static) \ - $(use_enable svg) \ - $(use_enable utils trace) \ - $(use_enable valgrind) \ - --enable-ft \ - --enable-interpreter \ - --enable-pdf \ - --enable-png \ - --enable-ps \ - --enable-script \ - --disable-xlib-xcb \ - ${myopts} + meson_src_configure } multilib_src_install_all() { - find "${D}" -name '*.la' -delete || die einstalldocs + + if use gtk-doc; then + mkdir -p "${ED}"/usr/share/gtk-doc/cairo || die + mv "${ED}"/usr/share/gtk-doc/{html/cairo,cairo/html} || die + rmdir "${ED}"/usr/share/gtk-doc/html || die + fi } diff --git a/x11-libs/cairo/metadata.xml b/x11-libs/cairo/metadata.xml index 367ff5bc5dfa..d4c30a5b0bff 100644 --- a/x11-libs/cairo/metadata.xml +++ b/x11-libs/cairo/metadata.xml @@ -8,6 +8,7 @@ Build the OpenGL backend Build the OpenGL ES 2 backend + Use OpenGL ES 3.0 features (instead of ES 2.0; requires USE=gles2-only) Compile with GLib Object System support Build support for Cairo script and trace utilities Built-in support to mark memory regions -- cgit v1.2.3