# ChangeLog for dev-python/pygobject
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/ChangeLog,v 1.131 2011/12/24 11:35:43 maksbotan Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/ChangeLog,v 1.132 2011/12/26 06:29:55 tetromino Exp $
+
+*pygobject-3.0.3 (26 Dec 2011)
+
+ 26 Dec 2011; Alexandre Rostovtsev (tetromino) <tetromino@gmail.com>
+ pygobject-2.26.0-r1.ebuild, pygobject-2.28.6.ebuild,
+ pygobject-2.28.6-r50.ebuild, pygobject-2.28.6-r51.ebuild,
+ pygobject-3.0.1.ebuild, pygobject-3.0.2.ebuild, +pygobject-3.0.3.ebuild,
+ +files/pygobject-3.0.3-disable-new-gi-tests.patch,
+ +files/pygobject-3.0.3-gobject-property-min-max.patch,
+ +files/pygobject-3.0.3-tests-python3.patch:
+ Version bump with assorted bugfixes. Fix example installation directory (bug
+ #392449 comment 3, thanks to Arfrever). Also, restrict pypy for all versions
+ of pygobject and improve use of python eclass in 3.0.3 (bug #321879 comment
+ 8, thanks to Arfrever).
*pygobject-2.28.6-r51 (24 Dec 2011)
AUX pygobject-2.90.1-make_check.patch 2572 RMD160 15fa252864308469a9d84ed3d0195fe38b329127 SHA1 a3daba6e1cd7b15663c6cae862236abd876a50aa SHA256 e665baf786eb565cd095ca1651a696264b112dcbc534593c4fa3da2d4e3b2ddf
AUX pygobject-3.0.0-support_multiple_python_versions.patch 2794 RMD160 3dd6dfc06063d7eca37c02a08b15c7d3c5615a12 SHA1 56311e3c80ff768d1f88ef635cae34441532cc1e SHA256 ee1e3182dadd4e585179916e4cff3836d2e4464663667a8f5afcf5949d3c000c
AUX pygobject-3.0.2-disable-new-gi-tests.patch 1078 RMD160 d49ab860e2e3f4ee939ec34b6d69157f6f44cccc SHA1 b8c55b5850373db399a61a3f5ee1b8b38bd4b66c SHA256 00d2ff216da8f26d57c1a9238f308a02fa77f4d9dcfbd931b238cddd9b99bccd
+AUX pygobject-3.0.3-disable-new-gi-tests.patch 2825 RMD160 ca269ff563a6c49bf70517274bddc0c3d4aef8a4 SHA1 3ba5f141f764b407f787e6afdeeac951e142f1b8 SHA256 eec3f3cacfa7655d9dd0755cb5c9a1a235b5351990dfc0d39f646d5ba2e2deda
+AUX pygobject-3.0.3-gobject-property-min-max.patch 2505 RMD160 6bd1c482426102669f91cf86dff7a6cbb5cfcd7c SHA1 460b0a2932cedb150f668e21ababe74fc56f61b4 SHA256 9f79c7a7f163323d3d72b2c2758fba4fd4c712869e5f8c7ba10364466a30d9c3
+AUX pygobject-3.0.3-tests-python3.patch 953 RMD160 da11f5e7541a44d69639a9cb2fb1c845bae5864b SHA1 83f864613330148cc4a58c56f6190a6db6beb3a1 SHA256 e9b9da15e44239a85b71d5dde5ae112780c9527b81bddf4edfa9d620bf371d00
DIST pygobject-2.26.0.tar.bz2 808427 RMD160 dd164d29232509f729fe7f766b18d1985eca73f6 SHA1 d091412760d44477e76ae995125c8fc5a15eae74 SHA256 5554acff9c27b647144143b0459359864e4a6f2ff62c7ba21cf310ad755cf7c7
DIST pygobject-2.28.6.tar.xz 747248 RMD160 4bc5e8546a5029d3d6b154629ab3fa4023d96bef SHA1 b1749ba806499f4c2780dbd1cbb363aaf1f41e78 SHA256 fb8a1d4f665130a125011659bd347c7339c944232163dbb9a34fd0686577adb8
DIST pygobject-3.0.1.tar.xz 543732 RMD160 304e569d428197bbf3770a9dd9e14cba6437c3e9 SHA1 fb8ad95378d5d479545a9796f99fe94d28bc76e6 SHA256 ccb2cc765c11724fd3025569a7a7a72bf7c981365107ff5bd15499640d6adda1
DIST pygobject-3.0.2.tar.xz 545072 RMD160 afb2479933c047025ee8d467efda163915c074ce SHA1 6bb3cd5977d6992792cbfabc919b5b46bb8c2a8f SHA256 e1eccc37afd2d4cbeb329b92ce3d71287d662dc2fec430c08a0471153e52a462
-EBUILD pygobject-2.26.0-r1.ebuild 3830 RMD160 6db1713d6596915de44239c5c6d5d9c44afb51d9 SHA1 4fc1689b121dd155f5157470b4e2891de14b4b82 SHA256 113ab87b63626714b579f49dc79bfc737dc944ef9042db4991a883f411cb391d
-EBUILD pygobject-2.28.6-r50.ebuild 4150 RMD160 99b9d6f95c45dc4cfff9333d0fb2e61a5809b7b5 SHA1 36f5959604ff9962926f01047659b4e020c8f80a SHA256 248c4828e1a5ece8a32ac1f18aa2a30d96feaafbd60058bd2deb2d0b6d0d3f1a
-EBUILD pygobject-2.28.6-r51.ebuild 4158 RMD160 a9ce8275c7b77784308b6ac86a4bfe88583e6301 SHA1 527dc609c624a7195bbaa675056c8b6cc5ed4066 SHA256 11dd63e82c51740a2c8adc036a57cf8cb37771c17c1b596898fca9fdcfdbf050
-EBUILD pygobject-2.28.6.ebuild 3824 RMD160 ef6d826a91364b81146ad747ea4e80b2175a99bf SHA1 6c49e563e4815aa50468c016d24fef03b932b4e7 SHA256 b04e06df9a5ee43c5e24dc70056f23b6afe2dc3dac530deff21e1fa760736b00
-EBUILD pygobject-3.0.1.ebuild 3120 RMD160 57b9bd613c89c27f459d688696a4f102cf8ec919 SHA1 99d2f8fcbabc7a483fc7dc0cff83867b4ad9b9d0 SHA256 6885c1c802b3b927db8a37515a6d083b4aebea6561e9072fab22dc449226eadb
-EBUILD pygobject-3.0.2.ebuild 3234 RMD160 c11d9efbed2402c376cd040b40ac07212a5fe1bc SHA1 2b6d212e90f0fdb5d1a81990e8e424ba90cdd9ac SHA256 0681c4ff1abc5d46ba087d2fbd57ca336990b81779f5f326be721e365f4e8df9
-MISC ChangeLog 20529 RMD160 a43344e15fff33ee6e086b254aefd63885d99a7c SHA1 afba958779fd9b0769d46e8260a13806144d601b SHA256 d604820395bc7d49095cfafc2a7ad6275370fc1ff82ca9e9b9141b02b20e027b
+DIST pygobject-3.0.3.tar.xz 546420 RMD160 33e29224696db50025198351e80991a78d841a6a SHA1 763d84eb295ec6917deb1132731b2bfabd5e201c SHA256 088b1e682be02a969a0a3f2e650e4fe72bb3638ee8229819841d3e8f4cde2d7c
+EBUILD pygobject-2.26.0-r1.ebuild 3839 RMD160 cab6c111f91844e4a43971cd399451fd33578f55 SHA1 92dfed76cc821734fff230cb2b8465128e03793e SHA256 481cb4a249feb83382ec047ec8bd10df8f515ccd23eacf593e465ee902b8bd80
+EBUILD pygobject-2.28.6-r50.ebuild 4165 RMD160 1f737c666d834da0117373feaaa864672f37bfc0 SHA1 9de091814c35fef569f3bfbf671c3716b42623eb SHA256 583d7691524500dbcd2badb6cfb3394faa10b3148664ec4b1229fc8ad7f0c85e
+EBUILD pygobject-2.28.6-r51.ebuild 4167 RMD160 54cf0f946a58d31799ad1b95f925937655ab744a SHA1 7c482c07977499cfc90e0d834dd6e025a0970431 SHA256 362817fd7c465f66e112942e724f70d6a2da4818ba4b8bf2897162a79019720b
+EBUILD pygobject-2.28.6.ebuild 3834 RMD160 ad1db069d3203df615b761057d2202e7e396b45a SHA1 a22f1b9e7584d9c8a2a89337e82e94b8b2db2cb3 SHA256 54080ef611b99d468fe7e4810fbaa1b7925d0f0e02590a3ca1540d74c3b7b3b3
+EBUILD pygobject-3.0.1.ebuild 3129 RMD160 0f6f6ddfb5f5163f4df0368b0530e674fbaed53e SHA1 07285bfe5476046f1bea7aef46b2afcf90deb5d3 SHA256 7148bbbdab51c8a021a9a4e8f2459d60313e17e5121117ca0f8b090296d9b0e1
+EBUILD pygobject-3.0.2.ebuild 3249 RMD160 3d68ad756d3e49b385ba178829596fdd3e4c2c17 SHA1 0ad74b32204afd79d0a360e856826aa30f715b8b SHA256 3c6c1a629ad4a4a1ccd57c9b0382d43ffd3ea1489e163c7a7376e7283d897923
+EBUILD pygobject-3.0.3.ebuild 3577 RMD160 6a5332564f2ddbd3fc602a137ac7a5c0ba26d7e9 SHA1 c421d4a047174a03d28ba7427bc2431a8a5082d7 SHA256 c1c2ec1bcd2442b01cc5cffe40550543259709d46ee24890d0686d86abe3ee0d
+MISC ChangeLog 21240 RMD160 fc49cc61d8cdb1d9637864f20f076149b540964e SHA1 55c3395e859d72c3eb379fe13b5c2e019bbc948d SHA256 f2e7503ca6d28772751a1dfae4fbeccc70e05c1c282c1c6f0db35053f9613365
MISC metadata.xml 291 RMD160 2226a820b502bdd20583331e1601bb9cd04f96be SHA1 f5d19f3ae1f337179858f1818fc195a20ad7e4d9 SHA256 5a3c7fa667eaf9da2744f966afc82db0a4a45cc642157b8224104f17bdb4af5c
--- /dev/null
+Disable tests requiring >=gobject-introspection-1.31
+
+diff --git a/tests/test_everything.py b/tests/test_everything.py
+index 43735e5..ecfdef4 100644
+--- a/tests/test_everything.py
++++ b/tests/test_everything.py
+@@ -507,22 +507,3 @@ class TestAdvancedInterfaces(unittest.TestCase):
+ self.assertEquals(ret[0], 51);
+ self.assertEquals(ret[1], 61);
+ self.assertEquals(ret[2], 32);
+-
+- def test_obj_skip_return_val_no_out(self):
+- obj = Everything.TestObj();
+- # raises an error for 0, succeeds for any other value
+- self.assertRaises(GLib.GError, obj.skip_return_val_no_out, 0)
+-
+- ret = obj.skip_return_val_no_out(1)
+- self.assertEquals(ret, None)
+-
+-class TestSignals(unittest.TestCase):
+- def test_object_param_signal(self):
+- obj = Everything.TestObj();
+-
+- def callback (obj_param):
+- self.assertEquals(obj_param.props.int, 3)
+- self.assertEquals(obj_param.__grefcount__, 2)
+-
+- obj.connect('sig-with-obj', callback)
+- obj.emit_sig_with_obj()
+diff --git a/tests/test_gi.py b/tests/test_gi.py
+index 0a9b1b2..7e24778 100644
+--- a/tests/test_gi.py
++++ b/tests/test_gi.py
+@@ -770,18 +770,6 @@ class TestArray(unittest.TestCase):
+ def test_gstrv_inout(self):
+ self.assertEquals(['-1', '0', '1', '2'], GIMarshallingTests.gstrv_inout(['0', '1', '2']))
+
+- def test_array_gvariant_none_in(self):
+- v = [GLib.Variant("i", 27), GLib.Variant("s", "Hello")]
+- self.assertEquals([27, "Hello"], map(GLib.Variant.unpack, GIMarshallingTests.array_gvariant_none_in(v)))
+-
+- def test_array_gvariant_container_in(self):
+- v = [GLib.Variant("i", 27), GLib.Variant("s", "Hello")]
+- self.assertEquals([27, "Hello"], map(GLib.Variant.unpack, GIMarshallingTests.array_gvariant_none_in(v)))
+-
+- def test_array_gvariant_full_in(self):
+- v = [GLib.Variant("i", 27), GLib.Variant("s", "Hello")]
+- self.assertEquals([27, "Hello"], map(GLib.Variant.unpack, GIMarshallingTests.array_gvariant_none_in(v)))
+-
+ def test_bytearray_gvariant(self):
+ v = GLib.Variant.new_bytestring("foo")
+ self.assertEquals(v.get_bytestring(), "foo")
+@@ -1651,16 +1639,6 @@ class TestPythonGObject(unittest.TestCase):
+ def do_method_not_a_vfunc(self):
+ pass
+
+- def test_subsubobject(self):
+- class SubSubSubObject(GIMarshallingTests.SubSubObject):
+- def do_method_deep_hierarchy(self, num):
+- self.props.int = num * 2
+-
+- sub_sub_sub_object = SubSubSubObject()
+- GIMarshallingTests.SubSubObject.do_method_deep_hierarchy(sub_sub_sub_object, 5)
+- self.assertEqual(sub_sub_sub_object.props.int, 5)
+-
+-
+ class TestMultiOutputArgs(unittest.TestCase):
+
+ def test_int_out_out(self):
--- /dev/null
+From 00030bc6f0fb961c716ed692144cd8e4bb9be7d0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Sebastian=20P=C3=B6lsterl?= <sebp@k-d-w.org>
+Date: Sat, 10 Dec 2011 12:51:45 +0100
+Subject: [PATCH] Fixed bug where GObject.property did not respect minimum and
+ maximum values
+
+https://bugzilla.gnome.org/show_bug.cgi?id=664864
+---
+ gi/_gobject/propertyhelper.py | 2 +-
+ tests/test_properties.py | 31 +++++++++++++++++++++++++++++++
+ 2 files changed, 32 insertions(+), 1 deletions(-)
+
+diff --git a/gi/_gobject/propertyhelper.py b/gi/_gobject/propertyhelper.py
+index 4635350..9208a0b 100644
+--- a/gi/_gobject/propertyhelper.py
++++ b/gi/_gobject/propertyhelper.py
+@@ -298,7 +298,7 @@ class property(object):
+ ptype = self.type
+ if ptype in [TYPE_INT, TYPE_UINT, TYPE_LONG, TYPE_ULONG,
+ TYPE_INT64, TYPE_UINT64, TYPE_FLOAT, TYPE_DOUBLE]:
+- args = self._get_minimum(), self._get_maximum(), self.default
++ args = self.minimum, self.maximum, self.default
+ elif (ptype == TYPE_STRING or ptype == TYPE_BOOLEAN or
+ ptype.is_a(TYPE_ENUM)):
+ args = (self.default,)
+diff --git a/tests/test_properties.py b/tests/test_properties.py
+index 3521647..75aacff 100644
+--- a/tests/test_properties.py
++++ b/tests/test_properties.py
+@@ -367,6 +367,37 @@ class TestProperty(unittest.TestCase):
+ GObject.property, type=gtype, minimum=min,
+ maximum=max+1)
+
++ def testMinMax(self):
++ class C(GObject.GObject):
++ prop_int = GObject.property(type=int, minimum=1, maximum=100, default=1)
++ prop_float = GObject.property(type=float, minimum=0.1, maximum=10.5, default=1.1)
++
++ def __init__(self):
++ GObject.GObject.__init__(self)
++
++ o = C()
++ self.assertEqual(o.prop_int, 1)
++
++ o.prop_int = 5
++ self.assertEqual(o.prop_int, 5)
++
++ o.prop_int = 0
++ self.assertEqual(o.prop_int, 5)
++
++ o.prop_int = 101
++ self.assertEqual(o.prop_int, 5)
++
++ self.assertEqual(o.prop_float, 1.1)
++
++ o.prop_float = 7.75
++ self.assertEqual(o.prop_float, 7.75)
++
++ o.prop_float = 0.09
++ self.assertEqual(o.prop_float, 7.75)
++
++ o.prop_float = 10.51
++ self.assertEqual(o.prop_float, 7.75)
++
+ def testMultipleInstances(self):
+ class C(GObject.GObject):
+ prop = GObject.property(type=str, default='default')
+--
+1.7.8.1
+
--- /dev/null
+From 8d88283688797b8fc70a7cbccd42a71b8518098d Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Mon, 26 Dec 2011 00:44:56 -0500
+Subject: [PATCH] Fix bytearray test compatibility with python3
+
+https://bugs.gentoo.org/show_bug.cgi?id=321879
+---
+ tests/test_gi.py | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tests/test_gi.py b/tests/test_gi.py
+index 0a9b1b2..8726187 100644
+--- a/tests/test_gi.py
++++ b/tests/test_gi.py
+@@ -783,8 +783,8 @@ class TestArray(unittest.TestCase):
+ self.assertEquals([27, "Hello"], map(GLib.Variant.unpack, GIMarshallingTests.array_gvariant_none_in(v)))
+
+ def test_bytearray_gvariant(self):
+- v = GLib.Variant.new_bytestring("foo")
+- self.assertEquals(v.get_bytestring(), "foo")
++ v = GLib.Variant.new_bytestring(b"foo")
++ self.assertEquals(v.get_bytestring(), b"foo")
+
+ class TestGArray(unittest.TestCase):
+
+--
+1.7.8.1
+
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-2.26.0-r1.ebuild,v 1.14 2011/11/15 05:40:32 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-2.26.0-r1.ebuild,v 1.15 2011/12/26 06:29:55 tetromino Exp $
EAPI="2"
GCONF_DEBUG="no"
SUPPORT_PYTHON_ABIS="1"
PYTHON_DEPEND="2:2.5"
-RESTRICT_PYTHON_ABIS="2.4 3.* *-jython"
+RESTRICT_PYTHON_ABIS="2.4 3.* *-jython *-pypy-*"
PYTHON_USE_WITH="threads="
inherit alternatives autotools gnome2 python virtualx
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-2.28.6-r50.ebuild,v 1.3 2011/12/20 21:29:40 jer Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-2.28.6-r50.ebuild,v 1.4 2011/12/26 06:29:55 tetromino Exp $
EAPI="3"
GCONF_DEBUG="no"
# PYTHON_DEPEND="2:2.6 3:3.1"
# RESTRICT_PYTHON_ABIS="2.4 2.5 3.0 *-jython"
PYTHON_DEPEND="2:2.6"
-RESTRICT_PYTHON_ABIS="2.4 2.5 3.* *-jython"
+RESTRICT_PYTHON_ABIS="2.4 2.5 3.* *-jython *-pypy-*"
# XXX: Is the alternatives stuff needed anymore?
inherit alternatives autotools gnome2 python virtualx
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-2.28.6-r51.ebuild,v 1.1 2011/12/24 11:35:43 maksbotan Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-2.28.6-r51.ebuild,v 1.2 2011/12/26 06:29:55 tetromino Exp $
EAPI="3"
GCONF_DEBUG="no"
# PYTHON_DEPEND="2:2.6 3:3.1"
# RESTRICT_PYTHON_ABIS="2.4 2.5 3.0 *-jython"
PYTHON_DEPEND="2:2.6"
-RESTRICT_PYTHON_ABIS="2.4 2.5 3.* *-jython"
+RESTRICT_PYTHON_ABIS="2.4 2.5 3.* *-jython *-pypy-*"
# XXX: Is the alternatives stuff needed anymore?
inherit alternatives autotools gnome2 python virtualx
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-2.28.6.ebuild,v 1.9 2011/11/15 05:40:32 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-2.28.6.ebuild,v 1.10 2011/12/26 06:29:55 tetromino Exp $
EAPI="3"
GCONF_DEBUG="no"
# PYTHON_DEPEND="2:2.6 3:3.1"
# RESTRICT_PYTHON_ABIS="2.4 2.5 3.0 *-jython"
PYTHON_DEPEND="2:2.6"
-RESTRICT_PYTHON_ABIS="2.4 2.5 3.* *-jython"
+RESTRICT_PYTHON_ABIS="2.4 2.5 3.* *-jython *-pypy-*"
# XXX: Is the alternatives stuff needed anymore?
inherit alternatives autotools gnome2 python virtualx
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-3.0.1.ebuild,v 1.2 2011/11/15 05:40:32 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-3.0.1.ebuild,v 1.3 2011/12/26 06:29:55 tetromino Exp $
EAPI="3"
GCONF_DEBUG="no"
GNOME2_LA_PUNT="yes"
SUPPORT_PYTHON_ABIS="1"
PYTHON_DEPEND="2:2.6 3:3.1"
-RESTRICT_PYTHON_ABIS="2.4 2.5 3.0 *-jython"
+RESTRICT_PYTHON_ABIS="2.4 2.5 3.0 *-jython *-pypy-*"
# XXX: Is the alternatives stuff needed anymore?
inherit alternatives autotools gnome2 python virtualx
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-3.0.2.ebuild,v 1.4 2011/12/20 21:29:40 jer Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-3.0.2.ebuild,v 1.5 2011/12/26 06:29:55 tetromino Exp $
EAPI="4"
GCONF_DEBUG="no"
GNOME2_LA_PUNT="yes"
SUPPORT_PYTHON_ABIS="1"
PYTHON_DEPEND="2:2.6 3:3.1"
-RESTRICT_PYTHON_ABIS="2.4 2.5 3.0 *-jython"
+RESTRICT_PYTHON_ABIS="2.4 2.5 3.0 *-jython *-pypy-*"
# XXX: Is the alternatives stuff needed anymore?
inherit alternatives autotools gnome2 python virtualx
--- /dev/null
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-python/pygobject/pygobject-3.0.3.ebuild,v 1.1 2011/12/26 06:29:55 tetromino Exp $
+
+EAPI="4"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+SUPPORT_PYTHON_ABIS="1"
+PYTHON_DEPEND="2:2.6 3:3.1"
+RESTRICT_PYTHON_ABIS="2.4 2.5 3.0 *-jython *-pypy-*"
+
+# XXX: Is the alternatives stuff needed anymore?
+inherit alternatives autotools gnome2 python virtualx
+
+DESCRIPTION="GLib's GObject library bindings for Python"
+HOMEPAGE="http://www.pygtk.org/"
+
+LICENSE="LGPL-2.1"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="+cairo examples test +threads" # doc
+
+COMMON_DEPEND=">=dev-libs/glib-2.24.0:2
+ >=dev-libs/gobject-introspection-1.29
+ virtual/libffi
+ cairo? ( >=dev-python/pycairo-1.10.0 )"
+DEPEND="${COMMON_DEPEND}
+ test? (
+ media-fonts/font-cursor-misc
+ media-fonts/font-misc-misc
+ >=dev-libs/gobject-introspection-1.29.17 )
+ >=dev-util/pkgconfig-0.12"
+# docs disabled for now per upstream default since they are very out of date
+# doc? (
+# app-text/docbook-xml-dtd:4.1.2
+# dev-libs/libxslt
+# >=app-text/docbook-xsl-stylesheets-1.70.1 )
+
+# We now disable introspection support in slot 2 per upstream recommendation
+# (see https://bugzilla.gnome.org/show_bug.cgi?id=642048#c9); however,
+# older versions of slot 2 installed their own site-packages/gi, and
+# slot 3 will collide with them.
+RDEPEND="${COMMON_DEPEND}
+ !<dev-python/pygtk-2.13
+ !<dev-python/pygobject-2.28.6-r50:2[introspection]"
+
+pkg_setup() {
+ DOCS="AUTHORS ChangeLog* NEWS README"
+ # Hard-enable libffi support since both gobject-introspection and
+ # glib-2.29.x rdepend on it anyway
+ G2CONF="${G2CONF}
+ --disable-dependency-tracking
+ --with-ffi
+ $(use_enable cairo)
+ $(use_enable threads thread)"
+
+ python_pkg_setup
+}
+
+src_prepare() {
+ # Do not build tests if unneeded, bug #226345
+ epatch "${FILESDIR}/${PN}-2.90.1-make_check.patch"
+
+ # Support installation for multiple Python versions, upstream bug #648292
+ epatch "${FILESDIR}/${PN}-3.0.0-support_multiple_python_versions.patch"
+
+ # Disable tests that fail
+ #epatch "${FILESDIR}/${PN}-2.28.3-disable-failing-tests.patch"
+
+ # FIXME: disable tests that require >=gobject-introspection-1.31
+ epatch "${FILESDIR}/${P}-disable-new-gi-tests.patch"
+
+ # Upstream patch to fix GObject.property min/max values; in next release
+ epatch "${FILESDIR}/${P}-gobject-property-min-max.patch"
+
+ # https://bugzilla.gnome.org/show_bug.cgi?id=666852
+ epatch "${FILESDIR}/${PN}-3.0.3-tests-python3.patch"
+
+ # disable pyc compiling
+ ln -sfn $(type -P true) py-compile
+
+ eautoreconf
+ gnome2_src_prepare
+
+ python_copy_sources
+}
+
+src_configure() {
+ python_execute_function -s gnome2_src_configure
+}
+
+src_compile() {
+ python_src_compile
+}
+
+# FIXME: With python multiple ABI support, tests return 1 even when they pass
+src_test() {
+ unset DBUS_SESSION_BUS_ADDRESS
+ export GIO_USE_VFS="local" # prevents odd issues with deleting ${T}/.gvfs
+
+ testing() {
+ export XDG_CACHE_HOME="${T}/$(PYTHON --ABI)"
+ Xemake check PYTHON=$(PYTHON -a)
+ unset XDG_CACHE_HOME
+ }
+ python_execute_function -s testing
+ unset GIO_USE_VFS
+}
+
+src_install() {
+ python_execute_function -s gnome2_src_install
+ python_clean_installation_image
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r examples
+ fi
+}
+
+pkg_postinst() {
+ python_mod_optimize gi
+}
+
+pkg_postrm() {
+ python_mod_cleanup gi
+}