commit:     bef2c5dce907da4a40a6496d5268e6794564de16
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 23 08:41:25 2014 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Sat Aug 23 08:42:51 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=dev/leio.git;a=commit;h=bef2c5dc

Add x11-libs/gtk+:3 modified to accept raspberrypi-userland[wayland] as a 
wayland wsys provider

---
 x11-libs/gtk+/Manifest           |   1 +
 x11-libs/gtk+/files/settings.ini |   4 +
 x11-libs/gtk+/gtk+-3.12.2.ebuild | 221 +++++++++++++++++++++++++++++++++++++++
 x11-libs/gtk+/metadata.xml       |  21 ++++
 4 files changed, 247 insertions(+)

diff --git a/x11-libs/gtk+/Manifest b/x11-libs/gtk+/Manifest
new file mode 100644
index 0000000..4fa8c24
--- /dev/null
+++ b/x11-libs/gtk+/Manifest
@@ -0,0 +1 @@
+DIST gtk+-3.12.2.tar.xz 15015024 SHA256 
61d74eea74231b1ea4b53084a9d6fc9917ab0e1d71b69d92cbf60a4b4fb385d0 SHA512 
4a8d2f52328587d73e30f363bdbbd91322dae0198f5581a2da3ebbe96ef0a0635193d2537e8fc127dc0950a24df42862233edd3a873dcbd166dc675bae849c9e
 WHIRLPOOL 
26328632d78f986d25e40d8773ff3cc90a0b3a5bafb4f21224504bd1c8c78995df556e8337d7b374f047bfff2bd0b9e0082ec163591f7a0a035260b8a2db2932

diff --git a/x11-libs/gtk+/files/settings.ini b/x11-libs/gtk+/files/settings.ini
new file mode 100644
index 0000000..a65c0a8
--- /dev/null
+++ b/x11-libs/gtk+/files/settings.ini
@@ -0,0 +1,4 @@
+[Settings]
+gtk-theme-name = Adwaita
+gtk-icon-theme-name = gnome
+gtk-cursor-theme-name = Adwaita

diff --git a/x11-libs/gtk+/gtk+-3.12.2.ebuild b/x11-libs/gtk+/gtk+-3.12.2.ebuild
new file mode 100644
index 0000000..210357d
--- /dev/null
+++ b/x11-libs/gtk+/gtk+-3.12.2.ebuild
@@ -0,0 +1,221 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-3.12.2.ebuild,v 1.6 
2014/08/21 10:46:39 ago Exp $
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+
+inherit flag-o-matic gnome2 multilib virtualx
+
+DESCRIPTION="Gimp ToolKit +"
+HOMEPAGE="http://www.gtk.org/";
+
+LICENSE="LGPL-2+"
+SLOT="3"
+# NOTE: This gtk+ has multi-gdk-backend support, see:
+#  * http://blogs.gnome.org/kris/2010/12/29/gdk-3-0-on-mac-os-x/
+#  * http://mail.gnome.org/archives/gtk-devel-list/2010-November/msg00099.html
+# I tried this and got it all compiling, but the end result is unusable as it
+# horribly mixes up the backends -- grobian
+IUSE="aqua cloudprint colord cups debug examples +introspection test 
vim-syntax wayland X xinerama"
+REQUIRED_USE="
+       || ( aqua wayland X )
+       xinerama? ( X )
+"
+
+KEYWORDS="~alpha amd64 ~arm hppa ~ia64 ~mips ppc ppc64 ~s390 ~sh ~sparc x86 
~amd64-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux 
~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris 
~x86-solaris"
+
+# FIXME: introspection data is built against system installation of gtk+:3
+# NOTE: cairo[svg] dep is due to bug 291283 (not patched to avoid eautoreconf)
+# Use gtk+:2 for gtk-update-icon-cache
+COMMON_DEPEND="
+       >=dev-libs/atk-2.7.5[introspection?]
+       >=dev-libs/glib-2.39.5:2
+       media-libs/fontconfig
+       >=x11-libs/cairo-1.12[aqua?,glib,svg,X?]
+       >=x11-libs/gdk-pixbuf-2.27.1:2[introspection?,X?]
+       >=x11-libs/gtk+-2.24:2
+       >=x11-libs/pango-1.32.4[introspection?]
+       x11-misc/shared-mime-info
+
+       cloudprint? (
+               >=net-libs/rest-0.7
+               >=dev-libs/json-glib-1.0 )
+       colord? ( >=x11-misc/colord-0.1.9:0= )
+       cups? ( >=net-print/cups-1.2 )
+       introspection? ( >=dev-libs/gobject-introspection-1.39 )
+       wayland? (
+               >=dev-libs/wayland-1.3.90
+               || ( media-libs/mesa[wayland] 
media-libs/raspberrypi-userland[wayland] )
+               >=x11-libs/libxkbcommon-0.2
+       )
+       X? (
+               >=app-accessibility/at-spi2-atk-2.5.3
+               x11-libs/libXrender
+               x11-libs/libX11
+               >=x11-libs/libXi-1.3
+               x11-libs/libXext
+               >=x11-libs/libXrandr-1.3
+               x11-libs/libXcursor
+               x11-libs/libXfixes
+               x11-libs/libXcomposite
+               x11-libs/libXdamage
+               xinerama? ( x11-libs/libXinerama )
+       )
+"
+DEPEND="${COMMON_DEPEND}
+       app-text/docbook-xsl-stylesheets
+       app-text/docbook-xml-dtd:4.1.2
+       dev-libs/libxslt
+       dev-util/gdbus-codegen
+       >=dev-util/gtk-doc-am-1.20
+       sys-devel/gettext
+       virtual/pkgconfig
+       X? (
+               x11-proto/xextproto
+               x11-proto/xproto
+               x11-proto/inputproto
+               x11-proto/damageproto
+               xinerama? ( x11-proto/xineramaproto )
+       )
+       test? (
+               media-fonts/font-misc-misc
+               media-fonts/font-cursor-misc )
+"
+# gtk+-3.2.2 breaks Alt key handling in <=x11-libs/vte-0.30.1:2.90
+# gtk+-3.3.18 breaks scrolling in <=x11-libs/vte-0.31.0:2.90
+# >=xorg-server-1.11.4 needed for
+#  http://mail.gnome.org/archives/desktop-devel-list/2012-March/msg00024.html
+RDEPEND="${COMMON_DEPEND}
+       !<gnome-base/gail-1000
+       !<x11-libs/vte-0.31.0:2.90
+       X? ( !<x11-base/xorg-server-1.11.4 )
+"
+PDEPEND="vim-syntax? ( app-vim/gtk-syntax )"
+
+strip_builddir() {
+       local rule=$1
+       shift
+       local directory=$1
+       shift
+       sed -e "s/^\(${rule} =.*\)${directory}\(.*\)$/\1\2/" -i $@ \
+               || die "Could not strip director ${directory} from build."
+}
+
+src_prepare() {
+       # -O3 and company cause random crashes in applications. Bug #133469
+       replace-flags -O3 -O2
+       strip-flags
+
+       if ! use test ; then
+               # don't waste time building tests
+               strip_builddir SRC_SUBDIRS testsuite Makefile.am
+               strip_builddir SRC_SUBDIRS testsuite Makefile.in
+               strip_builddir SRC_SUBDIRS tests Makefile.am
+               strip_builddir SRC_SUBDIRS tests Makefile.in
+       fi
+
+       if ! use examples; then
+               # don't waste time building demos
+               strip_builddir SRC_SUBDIRS demos Makefile.am
+               strip_builddir SRC_SUBDIRS demos Makefile.in
+               strip_builddir SRC_SUBDIRS examples Makefile.am
+               strip_builddir SRC_SUBDIRS examples Makefile.in
+       fi
+
+       gnome2_src_prepare
+}
+
+src_configure() {
+       # Passing --disable-debug is not recommended for production use
+       # need libdir here to avoid a double slash in a path that libtool 
doesn't
+       # grok so well during install (// between $EPREFIX and usr ...)
+       gnome2_src_configure \
+               $(use_enable aqua quartz-backend) \
+               $(use_enable cloudprint) \
+               $(use_enable colord) \
+               $(use_enable cups cups auto) \
+               $(usex debug --enable-debug=yes "") \
+               $(use_enable introspection) \
+               $(use_enable wayland wayland-backend) \
+               $(use_enable X x11-backend) \
+               $(use_enable X xcomposite) \
+               $(use_enable X xdamage) \
+               $(use_enable X xfixes) \
+               $(use_enable X xkb) \
+               $(use_enable X xrandr) \
+               $(use_enable xinerama) \
+               --disable-papi \
+               --enable-man \
+               --enable-gtk2-dependency \
+               --with-xml-catalog="${EPREFIX}"/etc/xml/catalog \
+               --libdir="${EPREFIX}"/usr/$(get_libdir)
+}
+
+src_test() {
+       # Tests require a new gnome-themes-standard, but adding it to DEPEND
+       # would result in circular dependencies.
+       # https://bugzilla.gnome.org/show_bug.cgi?id=669562
+       if ! has_version '>=x11-themes/gnome-themes-standard-3.6[gtk]'; then
+               ewarn "Tests will be skipped because 
>=gnome-themes-standard-3.6[gtk]"
+               ewarn "is not installed. Please re-run tests after installing 
the"
+               ewarn "required version of gnome-themes-standard."
+               return 0
+       fi
+
+       # FIXME: this should be handled at eclass level
+       "${EROOT}${GLIB_COMPILE_SCHEMAS}" --allow-any-name "${S}/gtk" || die
+
+       unset DBUS_SESSION_BUS_ADDRESS
+       GSETTINGS_SCHEMA_DIR="${S}/gtk" Xemake check
+}
+
+src_install() {
+       gnome2_src_install
+
+       insinto /etc/gtk-3.0
+       doins "${FILESDIR}"/settings.ini
+
+       dodoc AUTHORS ChangeLog* HACKING NEWS* README*
+
+       # add -framework Carbon to the .pc files
+       if use aqua ; then
+               for i in gtk+-3.0.pc gtk+-quartz-3.0.pc gtk+-unix-print-3.0.pc; 
do
+                       sed -e "s:Libs\: :Libs\: -framework Carbon :" \
+                               -i "${ED}"usr/$(get_libdir)/pkgconfig/$i || die 
"sed failed"
+               done
+       fi
+}
+
+pkg_preinst() {
+       gnome2_pkg_preinst
+
+       # Make sure loaders.cache belongs to gdk-pixbuf alone
+       local cache="usr/$(get_libdir)/gtk-3.0/3.0.0/immodules.cache"
+
+       if [[ -e ${EROOT}${cache} ]]; then
+               cp "${EROOT}"${cache} "${ED}"/${cache} || die
+       else
+               touch "${ED}"/${cache} || die
+       fi
+}
+
+pkg_postinst() {
+       gnome2_pkg_postinst
+       gnome2_query_immodules_gtk3
+
+       if ! has_version "app-text/evince"; then
+               elog "Please install app-text/evince for print preview 
functionality."
+               elog "Alternatively, check \"gtk-print-preview-command\" 
documentation and"
+               elog "add it to your settings.ini file."
+       fi
+}
+
+pkg_postrm() {
+       gnome2_pkg_postrm
+
+       if [[ -z ${REPLACED_BY_VERSIONS} ]]; then
+               rm -f "${EROOT}"usr/$(get_libdir)/gtk-3.0/3.0.0/immodules.cache
+       fi
+}

diff --git a/x11-libs/gtk+/metadata.xml b/x11-libs/gtk+/metadata.xml
new file mode 100644
index 0000000..f29cdbe
--- /dev/null
+++ b/x11-libs/gtk+/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+  <herd>gnome</herd>
+  <longdescription>
+    GTK+ is a multi-platform toolkit for creating graphical user
+    interfaces. Offering a complete set of widgets, GTK+ is suitable
+    for projects ranging from small one-off projects to complete
+    application suites.
+  </longdescription>
+  <use>
+    <flag name="cloudprint">Enable printing via Google Cloud Print.</flag>
+    <flag name="colord">Use <pkg>x11-misc/colord</pkg> for color management
+         in printing</flag>
+    <flag name="packagekit">Enable support for the distro-neutral package
+         manager GUI <pkg>app-admin/packagekit</pkg> in application 
chooser</flag>
+  </use>
+  <upstream>
+    <remote-id type="cpe">cpe:/a:gtk:gtk%2B</remote-id>
+  </upstream>
+</pkgmetadata>

Reply via email to