summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Rostovtsev <tetromino@gentoo.org>2013-01-05 14:11:46 +0000
committerAlexandre Rostovtsev <tetromino@gentoo.org>2013-01-05 14:11:46 +0000
commit597bb0f24bca131446cf35de5b0d979f00d04e14 (patch)
tree52ff943067c4ee1b378a9129b34a1d17b569b857 /x11-libs
parentcolord is now stable on ia64. (diff)
downloadhistorical-597bb0f24bca131446cf35de5b0d979f00d04e14.tar.gz
historical-597bb0f24bca131446cf35de5b0d979f00d04e14.tar.bz2
historical-597bb0f24bca131446cf35de5b0d979f00d04e14.zip
Fix crash when opening printing dilog (bug #450370, thanks to poncho).
Package-Manager: portage-2.2.0_alpha149/cvs/Linux x86_64 Manifest-Sign-Key: 0xCF0ADD61
Diffstat (limited to 'x11-libs')
-rw-r--r--x11-libs/gtk+/ChangeLog8
-rw-r--r--x11-libs/gtk+/Manifest18
-rw-r--r--x11-libs/gtk+/files/gtk+-3.6.3-revert-recompute-font.patch43
-rw-r--r--x11-libs/gtk+/gtk+-3.6.3-r1.ebuild219
4 files changed, 279 insertions, 9 deletions
diff --git a/x11-libs/gtk+/ChangeLog b/x11-libs/gtk+/ChangeLog
index 5505eff86d2e..3145705bfeda 100644
--- a/x11-libs/gtk+/ChangeLog
+++ b/x11-libs/gtk+/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for x11-libs/gtk+
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.628 2013/01/04 02:59:00 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/ChangeLog,v 1.629 2013/01/05 14:11:40 tetromino Exp $
+
+*gtk+-3.6.3-r1 (05 Jan 2013)
+
+ 05 Jan 2013; Alexandre Rostovtsev <tetromino@gentoo.org>
+ +gtk+-3.6.3-r1.ebuild, +files/gtk+-3.6.3-revert-recompute-font.patch:
+ Fix crash when opening printing dilog (bug #450370, thanks to poncho).
*gtk+-3.6.3 (04 Jan 2013)
diff --git a/x11-libs/gtk+/Manifest b/x11-libs/gtk+/Manifest
index 114a112cd1a6..30deefc81497 100644
--- a/x11-libs/gtk+/Manifest
+++ b/x11-libs/gtk+/Manifest
@@ -18,6 +18,7 @@ AUX gtk+-3.2.4-fallback-theme.patch 2880 SHA256 d021df0cc77b7033b57b62e0a3585c2f
AUX gtk+-3.3.18-fallback-theme.patch 2841 SHA256 a552218132b903835a480881803e29be678a311d3a653b8111eba1fd0ea04922 SHA512 2be5cd482625292780e88c6be5ec3e2932a1b3187ac57f2a0bbb37ebdeb9b34e56481a4ca74fc7af088389fb68dbb748e8e2cffc984052695fa6032bff0556cb WHIRLPOOL 8ae2ea9175a6ad5e0cfa6f8e018bd9ddb580548f496a81360ca302cc9d4d7cf70f5cb86f52967ee770e71f530b238d7b070b8aa61ffd040990ef0cb7b1811804
AUX gtk+-3.3.20-wayland-xkbcommon-headers.patch 1347 SHA256 9876be3bf2ef19413248e5de51e285aa1545b3d94751e840692b811c7b4bd9a9 SHA512 8397530f85a0b8e611ab30fd4ea6a3421c7862a8aeb05ba1eaea951a2e82738bc4482e8c04be620cc03690e413190cce63f0efe0cd39aecb62e70e754e8d240c WHIRLPOOL 0a1f78b076166af3727740fb736471304124dfcf1544a0452ebd6551cd0fe00a02d09ce2c44863c6df51d1b5030cfa849e89226662cc4f633ac820c4d5d2ef78
AUX gtk+-3.4.4-isnan.patch 1507 SHA256 5219d12c27fa6deba8da1530c504288ec8cb9629fbcdc7a9c1e2890bc82c6fd8 SHA512 1bbae03def87a92167fcde8800ec5554b240174c07d7f434e45f5ffc7ae64092cbbc04d428d786c001c0efba071f5a6e2f7db5da161fdb2cd94459b58a6e98a3 WHIRLPOOL e27c9d8d8f69a81e693df85576a29e3ef8d0badfa5b0c7325c185699fc4a70790ac3a5c20406c5d1ddd5756bcb6d1dadf8af8cde0ed43f4d931072af6f4a6190
+AUX gtk+-3.6.3-revert-recompute-font.patch 1594 SHA256 406dfec289aa5c97235b9f051e095af5a356550ecdcbe3250caabfbcd3e62246 SHA512 ff02d98c5d86884d354b4dbe09fa7d3ffcc6b878d2b465b66a1d0cf693bdaef0947194879717a420e43ba5253f84b6ff01df55a25c7b1e49ab6ab1a222d86468 WHIRLPOOL f242aaa6246cfabbde13a173be4a8a4bdb0cd8c8add98efb22e10191b4d5a280399f32d1158ce94aa4a9fca99aec7d9c9e780bc9b16f02526f49e60b19078a83
AUX gtkrc 627 SHA256 22e4197e5976ed623233399049082383033b613176d77126d246a1f6cb747294 SHA512 9fb246b8e483cfb5f8d3666397d50547ad0cdaa8bdf5737e67e14dd100952438ac93396f0d752306c02aa4934453a43eb360093c4e323e99bbe0706c40171dc4 WHIRLPOOL fdb1c72ce448e867dd8d591455103fb7790919e1d7e77d6c5aa46e9a3fbc590ad6a189c50d2bc958896471a31b975940960307dc80a2d88416b77fca581b4dfb
AUX settings.ini 96 SHA256 a42c86c26b5bfa0da806961e28cdff21da6e2f7c35febf67c67d7f2667658163 SHA512 76eff45e3413ed7b2fb6bb557c363cd6d8a65ae505709cf5ce26d579470e38968d51e72615779f47fac2994937a3c64ac4143c6cbd2cf5a2db23a01bcd9b6418 WHIRLPOOL 64a2c11ef1a6eda0bca40555a182023229202bcf15d527e6da8c52703be2fca26629b78ed677522eb626de7b7f456a7c37ab7fc3fe41907f1a46d770edb1fd67
DIST gtk+-1.2.10-r8-gentoo.diff.bz2 81223 SHA256 517bdadbaa0e13285b2d72a667b311219342306d4f68d838c3c1dbc5bfbf1684 SHA512 aaef9275ff6330a9fe1cbe1e40def181329d79cd33eb2b2ff5ae9cba5fa57e706716233ac7515f621d913f81343eb8244c6669e6411f7d50ca69187bf8d4fd86 WHIRLPOOL 2aacaa61e3291ff3c96a724e02a1fd250fa1574a69c730fa8635c28926c4134b780e9695e3aec3a6fd27b6e25848fcaee4075e17cd47bed2851bdcf311f19020
@@ -37,18 +38,19 @@ EBUILD gtk+-2.24.14.ebuild 8395 SHA256 dbc956990101408216e2f0e79e11d8157cb186619
EBUILD gtk+-3.2.4-r1.ebuild 6922 SHA256 a5a138e1243cc1a25f6d6a29f9a1f3fcffabc939b4c12cb4c6fbfd46f1059299 SHA512 0a67fb5b8114ad8fedcc54dbc0d0ab9db1ec7252d7cc4f6bd092f770fa8c85de9bd743738d1da2824c18382e065dab95e27f1acd8b1347203777ee6a22ef65af WHIRLPOOL ffabadedaea7bbc5807ec2304c45d758156f9c40e3319a1c88eea4600221f3cbe35e27b1d4a1d05f0985117b715152c46da8bbb9b7f20cfef6c3fba726bf6178
EBUILD gtk+-3.4.4.ebuild 7094 SHA256 928b0f6acf86fba5109d8e8f4d5bc1b365d19ec8092b2b7103f5c8ff005cda27 SHA512 2df2bf8b4c9d1535a2c4ca3a27f2324de4eff6ec79f712ff4cef72849fdb0b0fc6a7cb8a5084483881d97e55032c177e3c59f92f60444d0701c53b76224b1ac5 WHIRLPOOL 745c204b2459e94a6fa225a4d19a99581ff3f71713a3559cdd9a6871f8fff80c6c7e5c673059a2377145b16dda5ffb1371ad0c9bb0bf0eb806000a3e49d1f6bb
EBUILD gtk+-3.6.2.ebuild 6925 SHA256 af197eece03f09038608ba677cffab72f039d4d2a29a94bde92518508bee48e9 SHA512 a1524689e9d2dd9b334e4bf1be452aa6f6e00611444a30aa62426c0fe7e6c0d74037c37ea80a65e2409037701816810a112a2c679c996dbba9ad64eb8b5c9562 WHIRLPOOL c42d2e1ea314072c1c0810c549b6cf9c69dbb67668b7353694f9d18ac2e9814198d397df1f0d76bd23eab977fb468dbaa9f6e7b6b28ad931f51cb51e8eff9ecf
+EBUILD gtk+-3.6.3-r1.ebuild 7095 SHA256 1a4c92fa24d28dbfd6a5a817f7649f7ce8cebe56b7a5441f60fba6ae7f7fb483 SHA512 b52e7ea1f704b88b4da72bd23f1cacde599716bfeae1306cbc5fb7422f334229192d9914076354ae22f9c214a1bdce021d336d8a39fde781323c6fac37952686 WHIRLPOOL c1fdb52b9ed594c1bdbbecd51c8608ecf7cce4b255900200ad449764a03a87f170b95ca8c4b7a42e36d2f613eed105938e5c84aa8bc6ec13a9df34cc05996529
EBUILD gtk+-3.6.3.ebuild 6930 SHA256 e804b05698c99cd41e3ceb9c833bb078a72a8ce99de9a5d8e328a526432f7c62 SHA512 a22020dab398c32fb9399df07b1e1abda1c5481f19a3c8b3d636de7f928c2b7d78c115eda1cfa1e22f7fa4f52e441a9509bad11079c129b108ca77db11450acd WHIRLPOOL deba6c163edc06b51045a30878fd6d1e6887cbbc3ad0251676752d8fdcb8fbd3106a053318343e2b226b426e4949e5319bf8fdff2e0e9c2ed203e3afd40c03ad
-MISC ChangeLog 495 SHA256 7016f5cd84704b8554d22c3cc373baca0f320da079f74d5d0ebe782455027ab9 SHA512 dacacefa932d02e2ac7f9d824e30ad3ea95d2877b96513a59c44b05488d63d286c684ab0a1d3da6fefd5cb0c278c218c45e202efc8dfa942dd5392554303c84c WHIRLPOOL e31fdf17b6e154db7ec7ef83462ee900ad5388a873fa37b5d85788eeb6417eff5dede6ce3841f0b74879a8b2303b77060bc149e72f48cc9733c3c29a5465b491
+MISC ChangeLog 730 SHA256 adeeb9daf592ea7ebc7c447e480b55a873f42d6e7310bb20c83374fbb600678a SHA512 5752e50d8424e367cdd7437579dbac5d74c6ab2487635373bbdf01006a8603405b0af7f8af1858a8bd2c060e99b02edb06eab0c4c44e3725553643646d09b606 WHIRLPOOL 95d79b985eca16f159f7ccc0bfbef6b2455c50e3cd103f40ca2d7cfd0dbfdc80dc20595d4cad2cb35f3506e53a5087a19f32874b05b5978168bfab689093f5f4
MISC ChangeLog-2012 98793 SHA256 cace01db369f8f0e2902b3893738711adaf7f92ce43ad566b1a38d73b2a90633 SHA512 98499bb7fc111d86c5bc87b5ca415d0d3e73c3a1b3655a14e164e28e45e5f4141a8f0e1c259177141abf9861aecf47e48bddd4b3dfd5b902e5ab01cd9ab24a34 WHIRLPOOL 618327a12a938e54f1e3f86299d51f1721d8be69b12c8ea33fc0061df3020d83dd20025feb658a3ca26a5e05338102e0a37a62ecf8224e3e492bb4e3b571ceec
MISC metadata.xml 819 SHA256 209dfda45798143d24e44a476d11c0c1b6d714069cbdb45e1eda91384d316266 SHA512 2c67e6ef20846e825c2b9f90a4f1d8d69d20bcaeae0b27b4d318944653259e4f0afe4107ed457471f36cb832eefed007bde17f4aa59d8c97062fb641f4adc9d0 WHIRLPOOL cb99e984950e6144a68886606962b66004dc2b97e6930fe350ddb7a0a5bb0e2f4af671f9c9292be803629a05ce7fe4dc2a9ebef422951568e8c2f20aa53b378a
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
-iQEcBAEBCAAGBQJQ5kV2AAoJEJ0WA1zPCt1hsxoH/jcWJQ6k5j/ELEYa7scmxYbC
-CtYy2g//P2UuZ1f2Bje1+Ay4rCYI3DHjHr3C1bfTqACy5xUndkACwG6EOrNQ17UR
-AkMJKCb6ydq6WBGNMo5j3UzA5eKzsw09KzlIj1u5aUfaVNjifucx01INmUGZqO4S
-Q9+PPQsQGbsH1EWm+D1q3Mu8CPBIDpdQ9G698y/Ys8sR2u/y35nxndAKcnqBY/Q9
-te9mH1eeVJhuU8UsuD/nmnNhCoOqOoPPfx26QhdWRxrnh+4zKanzLvGneXXblRkC
-aRnyFEU+8B7Ihv4IrpyDJbNky+o7NW7oqjzGmCjhGbkD8xvDnw/hbGgZLz+rGLE=
-=Ry3g
+iQEcBAEBCAAGBQJQ6DSeAAoJEJ0WA1zPCt1hRM8H/3nzmOKCkvw28I1/twX6MKa6
+EyzLe55Bt9hpH8h3NaJ37chFFEzC4KgEYl7rGH/+QMDfbQnakWE7lZcJS8TX0XrQ
+mCB1RDyXcxjbXmoxrgYVK08bFEDa3umrUbbRwyc4cx48Y237NeIfaoE5jR3ZL0iL
+d/z0fDQ8sdwUWZvsohKhNUttm9lyuhwMoHaRSl3n5Udfbc0/7iv+UuaYjbiSun2D
+0GklKuxV67mAv/kQOSC6RE2Tv663tiHdtjIksRTDhTpr1AkpGQNT4SqiUei2MiZr
+PnuXuQVXQ/5HUmQqLmr/Iv3cniEb+ZaKD0L4dg9tIsv7ejsAmqkmF2sebZ5YC4I=
+=/pY5
-----END PGP SIGNATURE-----
diff --git a/x11-libs/gtk+/files/gtk+-3.6.3-revert-recompute-font.patch b/x11-libs/gtk+/files/gtk+-3.6.3-revert-recompute-font.patch
new file mode 100644
index 000000000000..6713d474cf61
--- /dev/null
+++ b/x11-libs/gtk+/files/gtk+-3.6.3-revert-recompute-font.patch
@@ -0,0 +1,43 @@
+From 0ac6138fe5d501258a552f7de0e3aad1420d204a Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Sat, 5 Jan 2013 08:43:28 -0500
+Subject: [PATCH] Revert "stylecontext: Always recompute font"
+
+This reverts commit c3508c9fa3854a158c16da4b50e4cbcc321333b9.
+
+Causes segfaults when opening printing dialog.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=691186
+---
+ gtk/gtkstylecontext.c | 15 +++++++++------
+ 1 file changed, 9 insertions(+), 6 deletions(-)
+
+diff --git a/gtk/gtkstylecontext.c b/gtk/gtkstylecontext.c
+index bcbea77..9604c42 100644
+--- a/gtk/gtkstylecontext.c
++++ b/gtk/gtkstylecontext.c
+@@ -3519,12 +3519,15 @@ gtk_style_context_get_font (GtkStyleContext *context,
+
+ /* Yuck, fonts are created on-demand but we don't return a ref.
+ * Do bad things to achieve this requirement */
+- gtk_style_context_get (context, state, "font", &description, NULL);
+- g_object_set_data_full (G_OBJECT (data->store),
+- "font-cache-for-get_font",
+- description,
+- (GDestroyNotify) pango_font_description_free);
+-
++ description = g_object_get_data (G_OBJECT (data->store), "font-cache-for-get_font");
++ if (description == NULL)
++ {
++ gtk_style_context_get (context, state, "font", &description, NULL);
++ g_object_set_data_full (G_OBJECT (data->store),
++ "font-cache-for-get_font",
++ description,
++ (GDestroyNotify) pango_font_description_free);
++ }
+ return description;
+ }
+
+--
+1.8.1
+
diff --git a/x11-libs/gtk+/gtk+-3.6.3-r1.ebuild b/x11-libs/gtk+/gtk+-3.6.3-r1.ebuild
new file mode 100644
index 000000000000..643749c37b28
--- /dev/null
+++ b/x11-libs/gtk+/gtk+-3.6.3-r1.ebuild
@@ -0,0 +1,219 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-3.6.3-r1.ebuild,v 1.1 2013/01/05 14:11:40 tetromino Exp $
+
+EAPI="5"
+
+inherit eutils flag-o-matic gnome.org gnome2-utils 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 colord cups debug egl examples +introspection packagekit test vim-syntax wayland X xinerama"
+REQUIRED_USE="
+ || ( aqua wayland X )
+ xinerama? ( X )"
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-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="X? (
+ >=app-accessibility/at-spi2-atk-2.5.3
+ x11-libs/libXrender
+ x11-libs/libX11
+ >=x11-libs/libXi-1.3
+ x11-libs/libXt
+ x11-libs/libXext
+ >=x11-libs/libXrandr-1.3
+ x11-libs/libXcursor
+ x11-libs/libXfixes
+ x11-libs/libXcomposite
+ x11-libs/libXdamage
+ xinerama? ( x11-libs/libXinerama )
+ )
+ wayland? (
+ >=dev-libs/wayland-1.0
+ media-libs/mesa[egl?,wayland]
+ >=x11-libs/libxkbcommon-0.2
+ egl? ( x11-libs/cairo[opengl] )
+ )
+ >=dev-libs/glib-2.33.1
+ >=x11-libs/pango-1.30[introspection?]
+ >=dev-libs/atk-2.5.3[introspection?]
+ >=x11-libs/cairo-1.10.0:=[aqua?,glib,svg,X?]
+ >=x11-libs/gdk-pixbuf-2.26:2[introspection?,X?]
+ >=x11-libs/gtk+-2.24:2
+ media-libs/fontconfig
+ x11-misc/shared-mime-info
+ colord? ( >=x11-misc/colord-0.1.9 )
+ cups? ( >=net-print/cups-1.2:= )
+ introspection? ( >=dev-libs/gobject-introspection-1.32 )"
+DEPEND="${COMMON_DEPEND}
+ app-text/docbook-xsl-stylesheets
+ app-text/docbook-xml-dtd:4.1.2
+ dev-libs/libxslt
+ virtual/pkgconfig
+ X? (
+ x11-proto/xextproto
+ x11-proto/xproto
+ x11-proto/inputproto
+ x11-proto/damageproto
+ xinerama? ( x11-proto/xineramaproto )
+ )
+ >=dev-util/gtk-doc-am-1.11
+ 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
+ packagekit? ( app-admin/packagekit-base )
+ 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
+
+ # https://bugzilla.gnome.org/show_bug.cgi?id=654108
+ epatch "${FILESDIR}/${PN}-3.3.18-fallback-theme.patch"
+
+ # Crashes when opening printing dialog, bug #450370
+ # https://bugzilla.gnome.org/show_bug.cgi?id=691186
+ epatch "${FILESDIR}/${P}-revert-recompute-font.patch"
+
+ # Non-working test in gentoo's env
+ sed 's:\(g_test_add_func ("/ui-tests/keys-events.*\):/*\1*/:g' \
+ -i gtk/tests/testing.c || die "sed 1 failed"
+ sed '\%/recent-manager/add%,/recent_manager_purge/ d' \
+ -i gtk/tests/recentmanager.c || die "sed 2 failed"
+
+ # FIXME: multiple reftests fail when run from portage (but succeed when
+ # run from a manual compile in a temp directory)
+ sed -e 's:\(SUBDIRS.*\)reftests:\1:' \
+ -i tests/Makefile.* || die "sed 3 failed"
+
+ # Test results depend on the list of mounted filesystems!
+ rm -v tests/a11y/pickers.{ui,txt} || die "rm failed"
+
+ if ! use test; then
+ # don't waste time building tests
+ strip_builddir SRC_SUBDIRS tests Makefile.am
+ [[ ${PV} != 9999 ]] && 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
+ [[ ${PV} != 9999 ]] && strip_builddir SRC_SUBDIRS demos Makefile.in
+ fi
+
+ epatch_user
+
+ [[ ${PV} = 9999 ]] && 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 ...)
+ econf \
+ $(use_enable aqua quartz-backend) \
+ $(usex wayland $(use_enable egl wayland-cairo-gl) "") \
+ $(use_enable colord) \
+ $(use_enable cups cups auto) \
+ $(usex debug --enable-debug=yes "") \
+ $(use_enable introspection) \
+ $(use_enable packagekit) \
+ $(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 \
+ --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
+ unset DBUS_SESSION_BUS_ADDRESS
+ # Exporting HOME fixes tests using XDG directories spec since all defaults
+ # are based on $HOME. It is also backward compatible with functions not
+ # yet ported to this spec.
+ XDG_DATA_HOME="${T}" HOME="${T}" Xemake check || die "tests failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ insinto /etc/gtk-3.0
+ doins "${FILESDIR}"/settings.ini
+
+ dodoc AUTHORS ChangeLog* HACKING NEWS* README*
+
+ # Remove unneeded *.la files
+ prune_libtool_files --all
+
+ # add -framework Carbon to the .pc files
+ use aqua && for i in gtk+-3.0.pc gtk+-quartz-3.0.pc gtk+-unix-print-3.0.pc; do
+ sed -i -e "s:Libs\: :Libs\: -framework Carbon :" "${ED}"usr/$(get_libdir)/pkgconfig/$i || die "sed failed"
+ done
+}
+
+pkg_preinst() {
+ gnome2_schemas_savelist
+}
+
+pkg_postinst() {
+ gnome2_schemas_update
+
+ local GTK3_MODDIR="${EROOT}usr/$(get_libdir)/gtk-3.0/3.0.0"
+ gtk-query-immodules-3.0 > "${GTK3_MODDIR}/immodules.cache" \
+ || ewarn "Failed to run gtk-query-immodules-3.0"
+
+ 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_schemas_update
+}