[dev-python/pygobject:2] drop, not needed, will use from Portage

This commit is contained in:
Sławomir Nizio
2015-01-30 20:15:52 +01:00
parent ae8c8153a0
commit 69ee1d1d54
11 changed files with 0 additions and 634 deletions
-1
View File
@@ -1 +0,0 @@
DIST pygobject-2.28.6.tar.xz 747248 SHA256 fb8a1d4f665130a125011659bd347c7339c944232163dbb9a34fd0686577adb8 SHA512 37544ea2377258758169b25a2969d5ee1c9ffb9b6e63e05bc7a0471a49ac9169c51ec587d4489172c7d256f53df878a81c1992a08059aa7e43dbbb69f799545c WHIRLPOOL 402f764d6ca73f238784738a1e09832858fd95af5a633e825412e9e6a21e89ab6b2090d3995902ed404fc4fde445cf970c76fcd93f8f64cf9def742452776c00
@@ -1,55 +0,0 @@
From df94ec3795c1efaf3eab9207c957e3ea5744971b Mon Sep 17 00:00:00 2001
From: Gilles Dartiguelongue <eva@gentoo.org>
Date: Fri, 8 Apr 2011 16:23:37 +0200
Subject: [PATCH 4/4] Disable tests that fail
---
tests/test_gio.py | 4 ++--
tests/test_overrides.py | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/test_gio.py b/tests/test_gio.py
index e14eddf..9c645f5 100644
--- a/tests/test_gio.py
+++ b/tests/test_gio.py
@@ -1007,7 +1007,7 @@ class TestVfs(unittest.TestCase):
class TestVolume(unittest.TestCase):
def setUp(self):
self.monitor = gio.volume_monitor_get()
-
+"""
def testVolumeEnumerate(self):
volumes = self.monitor.get_volumes()
self.failUnless(isinstance(volumes, list))
@@ -1018,7 +1018,7 @@ class TestVolume(unittest.TestCase):
for id in ids:
if id is not None:
self.failUnless(isinstance(id, str))
-
+"""
class TestFileInputStream(unittest.TestCase):
def setUp(self):
self._f = open("file.txt", "w+")
diff --git a/tests/test_overrides.py b/tests/test_overrides.py
index 3421c3a..9de1a7f 100644
--- a/tests/test_overrides.py
+++ b/tests/test_overrides.py
@@ -322,13 +322,13 @@ class TestPango(unittest.TestCase):
desc = Pango.FontDescription('monospace')
self.assertEquals(desc.get_family(), 'monospace')
self.assertEquals(desc.get_variant(), Pango.Variant.NORMAL)
-
+"""
def test_layout(self):
self.assertRaises(TypeError, Pango.Layout)
context = Pango.Context()
layout = Pango.Layout(context)
self.assertEquals(layout.get_context(), context)
-
+"""
class TestGdk(unittest.TestCase):
def test_constructor(self):
--
1.7.4.1
@@ -1,64 +0,0 @@
From b3e852d29bfd1e90f7e0da409fd0ae36cc01675a Mon Sep 17 00:00:00 2001
From: Gilles Dartiguelongue <eva@gentoo.org>
Date: Fri, 8 Apr 2011 15:36:35 +0200
Subject: [PATCH 1/3] Move codegen to a non-private directory
---
codegen/Makefile.am | 2 +-
codegen/pygobject-codegen-2.0.in | 3 ++-
pygobject-2.0.pc.in | 3 ++-
3 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/codegen/Makefile.am b/codegen/Makefile.am
index f9886eb..d714ff2 100644
--- a/codegen/Makefile.am
+++ b/codegen/Makefile.am
@@ -2,7 +2,7 @@ PLATFORM_VERSION = 2.0
bin_SCRIPTS = pygobject-codegen-$(PLATFORM_VERSION)
-codegendir = $(pkgdatadir)/$(PLATFORM_VERSION)/codegen
+codegendir = $(pyexecdir)/gtk-2.0/codegen
codegen_SCRIPTS = \
code-coverage.py \
diff --git a/codegen/pygobject-codegen-2.0.in b/codegen/pygobject-codegen-2.0.in
index c5c912e..c04451b 100644
--- a/codegen/pygobject-codegen-2.0.in
+++ b/codegen/pygobject-codegen-2.0.in
@@ -1,9 +1,10 @@
#!/bin/sh
prefix=@prefix@
+exec_prefix=@exec_prefix@
datarootdir=@datarootdir@
datadir=@datadir@
-codegendir=${datadir}/pygobject/2.0/codegen
+codegendir=@pyexecdir@/gtk-2.0/codegen
PYTHONPATH=$codegendir
export PYTHONPATH
diff --git a/pygobject-2.0.pc.in b/pygobject-2.0.pc.in
index a47b685..0d1a811 100644
--- a/pygobject-2.0.pc.in
+++ b/pygobject-2.0.pc.in
@@ -4,6 +4,7 @@ includedir=@includedir@
datarootdir=@datarootdir@
datadir=@datadir@
libdir=@libdir@
+pyexecdir=@pyexecdir@
# you can use the --variable=pygtkincludedir argument to
# pkg-config to get this value. You might want to use this to
@@ -12,7 +13,7 @@ pygtkincludedir=${includedir}/pygtk-2.0
fixxref=${datadir}/pygobject/xsl/fixxref.py
pygdocs=${datadir}/gtk-doc/html/pygobject
defsdir=${datadir}/pygobject/2.0/defs
-codegendir=${datadir}/pygobject/2.0/codegen
+codegendir=${pyexecdir}/gtk-2.0/codegen
overridesdir=@pyexecdir@/gi/overrides
Name: PyGObject
--
1.7.4.1
@@ -1,76 +0,0 @@
From b5c4b8b97a1ccb9a4c63ab726ea9c84d81ef51ca Mon Sep 17 00:00:00 2001
From: Gilles Dartiguelongue <eva@gentoo.org>
Date: Fri, 5 Nov 2010 23:39:08 +0100
Subject: [PATCH 2/3] Do not build tests unless needed
---
tests/Makefile.am | 12 +++++-------
tests/runtests.py | 2 ++
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/tests/Makefile.am b/tests/Makefile.am
index bad15f0..5b0859a 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,7 +1,7 @@
CLEANFILES =
-noinst_LTLIBRARIES =
+check_LTLIBRARIES =
if ENABLE_INTROSPECTION
-noinst_LTLIBRARIES += libregress.la libgimarshallingtests.la
+check_LTLIBRARIES += libregress.la libgimarshallingtests.la
nodist_libregress_la_SOURCES = $(GI_DATADIR)/tests/regress.c $(GI_DATADIR)/tests/regress.h
libregress_la_CFLAGS = $(GIO_CFLAGS) $(PYCAIRO_CFLAGS)
@@ -46,7 +46,7 @@ gschemas.compiled: org.gnome.test.gschema.xml
CLEANFILES += Regress-1.0.gir Regress-1.0.typelib GIMarshallingTests-1.0.gir GIMarshallingTests-1.0.typelib gschemas.compiled
endif
-noinst_LTLIBRARIES += testhelper.la
+check_LTLIBRARIES += testhelper.la
testhelper_la_CFLAGS = -I$(top_srcdir)/gobject -I$(top_srcdir)/glib $(PYTHON_INCLUDES) $(GLIB_CFLAGS)
testhelper_la_LDFLAGS = -module -avoid-version
@@ -66,8 +66,6 @@ testhelper.la: $(testhelper_la_OBJECTS) $(testhelper_la_DEPENDENCIES)
test -L $@ || $(LN_S) .libs/$@ $@
-all: $(LTLIBRARIES:.la=.so)
-
TEST_FILES_STATIC = \
test_gobject.py \
test_interface.py \
@@ -109,7 +107,7 @@ EXTRA_DIST = \
EXTRA_DIST += $(TEST_FILES_STATIC) $(TEST_FILES_GI) $(TEST_FILES_GIO)
clean-local:
- rm -f $(LTLIBRARIES:.la=.so) file.txt~
+ rm -f $(check_LTLIBRARIES:.la=.so) file.txt~
DBUS_LAUNCH=$(shell which dbus-launch)
RUN_TESTS_ENV_VARS= \
@@ -121,7 +119,7 @@ RUN_TESTS_ENV_VARS= \
RUN_TESTS_LAUNCH=$(RUN_TESTS_ENV_VARS) $(DBUS_LAUNCH) $(EXEC_NAME) $(PYTHON) $(srcdir)/runtests.py
# run tests in separately to avoid loading static and introspection bindings in the same process
-check-local: $(LTLIBRARIES:.la=.so) Regress-1.0.typelib GIMarshallingTests-1.0.typelib gschemas.compiled
+check-local: $(check_LTLIBRARIES:.la=.so) Regress-1.0.typelib GIMarshallingTests-1.0.typelib gschemas.compiled
TEST_FILES="$(TEST_FILES_STATIC)" $(RUN_TESTS_LAUNCH)
TEST_FILES="$(TEST_FILES_GI)" $(RUN_TESTS_LAUNCH)
if BUILD_GIO
diff --git a/tests/runtests.py b/tests/runtests.py
index 2bb8637..4107bcf 100644
--- a/tests/runtests.py
+++ b/tests/runtests.py
@@ -6,6 +6,8 @@ import sys
import unittest
+# Some tests fail with translated messages.
+os.environ["LC_ALL"] = "C"
# force untranslated messages, as we check for them in some tests
os.environ['LC_MESSAGES'] = 'C'
--
1.7.4.1
@@ -1,103 +0,0 @@
From 2f75378f3c56f245cabdcd2c52b561dbb878db2d Mon Sep 17 00:00:00 2001
From: Gilles Dartiguelongue <eva@gentoo.org>
Date: Fri, 8 Apr 2011 15:43:39 +0200
Subject: [PATCH 3/3] Enable support to build against multiple version of python
---
codegen/pygobject-codegen-2.0.in | 2 +-
gi/Makefile.am | 2 +-
gio/Makefile.am | 2 +-
glib/Makefile.am | 10 +++++-----
gobject/Makefile.am | 2 +-
5 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/codegen/pygobject-codegen-2.0.in b/codegen/pygobject-codegen-2.0.in
index c04451b..194e5ba 100644
--- a/codegen/pygobject-codegen-2.0.in
+++ b/codegen/pygobject-codegen-2.0.in
@@ -4,7 +4,7 @@ prefix=@prefix@
exec_prefix=@exec_prefix@
datarootdir=@datarootdir@
datadir=@datadir@
-codegendir=@pyexecdir@/gtk-2.0/codegen
+codegendir=$(@PYTHON@ -c "from distutils import sysconfig; print sysconfig.get_python_lib(1, 0, prefix='@exec_prefix@')")/gtk-2.0/codegen
PYTHONPATH=$codegendir
export PYTHONPATH
diff --git a/gi/Makefile.am b/gi/Makefile.am
index 31f6c79..8690522 100644
--- a/gi/Makefile.am
+++ b/gi/Makefile.am
@@ -25,7 +25,7 @@ _gi_la_LDFLAGS = \
-export-symbols-regex "init_gi|PyInit__gi"
_gi_la_LIBADD = \
$(GI_LIBS) \
- $(top_builddir)/glib/libpyglib-2.0-@PYTHON_BASENAME@.la
+ $(top_builddir)/glib/libpyglib-2.0-@PYTHON_BASENAME@@PYTHON_VERSION@.la
_gi_la_SOURCES = \
pygi-repository.c \
pygi-repository.h \
diff --git a/gio/Makefile.am b/gio/Makefile.am
index 6b3eb57..00e1c54 100644
--- a/gio/Makefile.am
+++ b/gio/Makefile.am
@@ -67,7 +67,7 @@ EXTRA_DIST += $(GIO_DEFS) $(GIO_OVERRIDES)
gio.c: $(GIO_DEFS) $(GIO_OVERRIDES)
_gio_la_CFLAGS = $(GIO_CFLAGS)
_gio_la_LDFLAGS = $(common_ldflags) -export-symbols-regex init_gio
-_gio_la_LIBADD = $(GIO_LIBS) $(top_builddir)/glib/libpyglib-2.0-@PYTHON_BASENAME@.la
+_gio_la_LIBADD = $(GIO_LIBS) $(top_builddir)/glib/libpyglib-2.0-@PYTHON_BASENAME@@PYTHON_VERSION@.la
_gio_la_SOURCES = \
giomodule.c \
pygio-utils.c \
diff --git a/glib/Makefile.am b/glib/Makefile.am
index e210318..df39687 100644
--- a/glib/Makefile.am
+++ b/glib/Makefile.am
@@ -4,7 +4,7 @@ INCLUDES = $(PYTHON_INCLUDES) $(GLIB_CFLAGS) -DPY_SSIZE_T_CLEAN
pkgincludedir = $(includedir)/pygtk-2.0
pkginclude_HEADERS = pyglib.h
-lib_LTLIBRARIES = libpyglib-2.0-@PYTHON_BASENAME@.la
+lib_LTLIBRARIES = libpyglib-2.0-@PYTHON_BASENAME@@PYTHON_VERSION@.la
pkgpyexecdir = $(pyexecdir)
@@ -19,9 +19,9 @@ if PLATFORM_WIN32
common_ldflags += -no-undefined
endif
-libpyglib_2_0_@PYTHON_BASENAME@_la_CFLAGS = $(GLIB_CFLAGS)
-libpyglib_2_0_@PYTHON_BASENAME@_la_LIBADD = $(GLIB_LIBS) $(FFI_LIBS)
-libpyglib_2_0_@PYTHON_BASENAME@_la_SOURCES = \
+libpyglib_2_0_@PYTHON_BASENAME@@PYTHON_VERSION@_la_CFLAGS = $(GLIB_CFLAGS)
+libpyglib_2_0_@PYTHON_BASENAME@@PYTHON_VERSION@_la_LIBADD = $(GLIB_LIBS) $(FFI_LIBS)
+libpyglib_2_0_@PYTHON_BASENAME@@PYTHON_VERSION@_la_SOURCES = \
pyglib.c \
pyglib.h \
pyglib-private.h \
@@ -29,7 +29,7 @@ libpyglib_2_0_@PYTHON_BASENAME@_la_SOURCES = \
_glib_la_CFLAGS = $(GLIB_CFLAGS)
_glib_la_LDFLAGS = $(common_ldflags) -export-symbols-regex "_glib|PyInit__glib"
-_glib_la_LIBADD = $(GLIB_LIBS) libpyglib-2.0-@PYTHON_BASENAME@.la
+_glib_la_LIBADD = $(GLIB_LIBS) libpyglib-2.0-@PYTHON_BASENAME@@PYTHON_VERSION@.la
_glib_la_SOURCES = \
glibmodule.c \
pygiochannel.c \
diff --git a/gobject/Makefile.am b/gobject/Makefile.am
index 7208329..3f9ad8e 100644
--- a/gobject/Makefile.am
+++ b/gobject/Makefile.am
@@ -35,7 +35,7 @@ _gobject_la_LDFLAGS = $(common_ldflags) -export-symbols-regex "_gobject|PyInit__
_gobject_la_LIBADD = \
$(GLIB_LIBS) \
$(FFI_LIBS) \
- $(top_builddir)/glib/libpyglib-2.0-@PYTHON_BASENAME@.la
+ $(top_builddir)/glib/libpyglib-2.0-@PYTHON_BASENAME@@PYTHON_VERSION@.la
_gobject_la_SOURCES = \
gobjectmodule.c \
pygboxed.c \
--
1.7.4.1
@@ -1,98 +0,0 @@
From 9d8867a7c67a14d055a0dd8db5f6a9aae5762a04 Mon Sep 17 00:00:00 2001
From: Alexandre Rostovtsev <tetromino@gentoo.org>
Date: Sun, 13 Jan 2013 19:50:14 -0500
Subject: [PATCH] Disable failing tests
---
tests/test_gio.py | 13 ++++++++-----
tests/test_overrides.py | 4 ++--
2 files changed, 10 insertions(+), 7 deletions(-)
diff --git a/tests/test_gio.py b/tests/test_gio.py
index e14eddf..a4d1bc7 100644
--- a/tests/test_gio.py
+++ b/tests/test_gio.py
@@ -650,10 +650,11 @@ class TestInputStream(unittest.TestCase):
else:
return read_data
+ """
def testReadAsync(self):
def callback(stream, result):
- self.assertEquals(result.get_op_res_gssize(), 7)
try:
+ self.assertEquals(result.get_op_res_gssize(), 7)
data = stream.read_finish(result)
self.assertEquals(data, "testing")
stream.close()
@@ -694,7 +695,7 @@ class TestInputStream(unittest.TestCase):
self.assertRaises(TypeError, self.stream.read_async, 1024,
priority=1, cancellable="bar")
self.assertRaises(TypeError, self.stream.read_async, 1024, 1, "bar")
-
+ """
# FIXME: this makes 'make check' freeze
def _testCloseAsync(self):
@@ -822,10 +823,11 @@ class TestOutputStream(unittest.TestCase):
self.assertEquals(stream.get_contents(), some_data)
+ """
def testWriteAsync(self):
def callback(stream, result):
- self.assertEquals(result.get_op_res_gssize(), 7)
try:
+ self.assertEquals(result.get_op_res_gssize(), 7)
self.assertEquals(stream.write_finish(result), 7)
self.failUnless(os.path.exists("outputstream.txt"))
self.assertEquals(open("outputstream.txt").read(), "testing")
@@ -861,6 +863,7 @@ class TestOutputStream(unittest.TestCase):
self.assertRaises(TypeError, self.stream.write_async, "foo",
priority=1, cancellable="bar")
self.assertRaises(TypeError, self.stream.write_async, "foo", 1, "bar")
+ """
# FIXME: this makes 'make check' freeze
def _testCloseAsync(self):
@@ -1007,7 +1010,7 @@ class TestVfs(unittest.TestCase):
class TestVolume(unittest.TestCase):
def setUp(self):
self.monitor = gio.volume_monitor_get()
-
+"""
def testVolumeEnumerate(self):
volumes = self.monitor.get_volumes()
self.failUnless(isinstance(volumes, list))
@@ -1018,7 +1021,7 @@ class TestVolume(unittest.TestCase):
for id in ids:
if id is not None:
self.failUnless(isinstance(id, str))
-
+"""
class TestFileInputStream(unittest.TestCase):
def setUp(self):
self._f = open("file.txt", "w+")
diff --git a/tests/test_overrides.py b/tests/test_overrides.py
index 47f38a3..063792d 100644
--- a/tests/test_overrides.py
+++ b/tests/test_overrides.py
@@ -337,13 +337,13 @@ class TestPango(unittest.TestCase):
desc = Pango.FontDescription('monospace')
self.assertEquals(desc.get_family(), 'monospace')
self.assertEquals(desc.get_variant(), Pango.Variant.NORMAL)
-
+"""
def test_layout(self):
self.assertRaises(TypeError, Pango.Layout)
context = Pango.Context()
layout = Pango.Layout(context)
self.assertEquals(layout.get_context(), context)
-
+"""
class TestGdk(unittest.TestCase):
def test_constructor(self):
--
1.8.1
@@ -1,50 +0,0 @@
From 42d01f060c5d764baa881d13c103d68897163a49 Mon Sep 17 00:00:00 2001
From: Ryan Lortie <desrt@desrt.ca>
Date: Mon, 12 Mar 2012 16:44:14 -0400
Subject: [PATCH] gio-types.defs: change some enums to flags
These flags types were originally incorrectly handled in glib as being
enums. That bug was fixed, but they're still enums here, leading to
warnings about the mismatch.
Change them to flags.
https://bugzilla.gnome.org/show_bug.cgi?id=668522
---
gio/gio-types.defs | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/gio/gio-types.defs b/gio/gio-types.defs
index 331e0bc..7eee5c8 100644
--- a/gio/gio-types.defs
+++ b/gio/gio-types.defs
@@ -526,7 +526,7 @@
)
)
-(define-enum MountMountFlags
+(define-flags MountMountFlags
(in-module "gio")
(c-name "GMountMountFlags")
(gtype-id "G_TYPE_MOUNT_MOUNT_FLAGS")
@@ -545,7 +545,7 @@
)
)
-(define-enum DriveStartFlags
+(define-flags DriveStartFlags
(in-module "gio")
(c-name "GDriveStartFlags")
(gtype-id "G_TYPE_DRIVE_START_FLAGS")
@@ -770,7 +770,7 @@
)
)
-(define-enum SocketMsgFlags
+(define-flags SocketMsgFlags
(in-module "gio")
(c-name "GSocketMsgFlags")
(gtype-id "G_TYPE_SOCKET_MSG_FLAGS")
--
1.7.8.5
@@ -1,28 +0,0 @@
From 42d871eb0b08ee6d55e95cc7e4b90844919555b9 Mon Sep 17 00:00:00 2001
From: Ivan Stankovic <ivan.stankovic@avl.com>
Date: Tue, 21 Feb 2012 12:24:58 +0100
Subject: [PATCH] Fix set_qdata warning on accessing NULL gobject property
https://bugzilla.gnome.org/show_bug.cgi?id=661155
---
gobject/pygobject.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/gobject/pygobject.c b/gobject/pygobject.c
index 6c2f06c..70dc89a 100644
--- a/gobject/pygobject.c
+++ b/gobject/pygobject.c
@@ -991,7 +991,9 @@ pygobject_new(GObject *obj)
PyObject *
pygobject_new_sunk(GObject *obj)
{
- g_object_set_qdata (obj, pygobject_ref_sunk_key, GINT_TO_POINTER (1));
+ if (obj)
+ g_object_set_qdata (obj, pygobject_ref_sunk_key, GINT_TO_POINTER (1));
+
return pygobject_new_full(obj, TRUE, NULL);
}
--
1.7.8.5
@@ -1,33 +0,0 @@
From 9c8ec7495e9e73855dc284be293828572f408c92 Mon Sep 17 00:00:00 2001
From: Alexandre Rostovtsev <tetromino@gentoo.org>
Date: Tue, 25 Dec 2012 00:26:05 -0500
Subject: [PATCH] Do not run introspection tests when building with
introspection disabled
---
tests/Makefile.am | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/tests/Makefile.am b/tests/Makefile.am
index e60bad5..3a0d1b7 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -120,9 +120,14 @@ RUN_TESTS_ENV_VARS= \
RUN_TESTS_LAUNCH=$(RUN_TESTS_ENV_VARS) $(DBUS_LAUNCH) $(EXEC_NAME) $(PYTHON) $(srcdir)/runtests.py
# run tests in separately to avoid loading static and introspection bindings in the same process
-check-local: $(check_LTLIBRARIES:.la=.so) Regress-1.0.typelib GIMarshallingTests-1.0.typelib gschemas.compiled
+if ENABLE_INTROSPECTION
+CHECK_LOCAL_INTROSPECTION_REQ = Regress-1.0.typelib GIMarshallingTests-1.0.typelib gschemas.compiled
+endif
+check-local: $(check_LTLIBRARIES:.la=.so) $(CHECK_LOCAL_INTROSPECTION_REQ)
TEST_FILES="$(TEST_FILES_STATIC)" $(RUN_TESTS_LAUNCH)
+if ENABLE_INTROSPECTION
TEST_FILES="$(TEST_FILES_GI)" $(RUN_TESTS_LAUNCH)
+endif
if BUILD_GIO
TEST_FILES="$(TEST_FILES_GIO)" $(RUN_TESTS_LAUNCH)
endif
--
1.8.0.2
-4
View File
@@ -3,8 +3,4 @@
<pkgmetadata>
<herd>gnome</herd>
<herd>python</herd>
<use>
<flag name="introspection">Use <pkg>dev-libs/gobject-introspection</pkg> for
introspection</flag>
</use>
</pkgmetadata>
@@ -1,122 +0,0 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="5"
GCONF_DEBUG="no"
GNOME2_LA_PUNT="yes"
PYTHON_COMPAT=( python{2_6,2_7} )
inherit autotools eutils gnome2 python-r1 virtualx
DESCRIPTION="GLib's GObject library bindings for Python"
HOMEPAGE="http://www.pygtk.org/"
LICENSE="LGPL-2.1+"
SLOT="2"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="examples libffi test"
COMMON_DEPEND=">=dev-libs/glib-2.24.0:2
libffi? ( virtual/libffi:= )
${PYTHON_DEPS}
"
DEPEND="${COMMON_DEPEND}
dev-util/gtk-doc-am
virtual/pkgconfig
test? (
media-fonts/font-cursor-misc
media-fonts/font-misc-misc )
"
RDEPEND="${COMMON_DEPEND}
!<dev-python/pygtk-2.23"
src_prepare() {
# Fix FHS compliance, see upstream bug #535524
epatch "${FILESDIR}/${PN}-2.28.3-fix-codegen-location.patch"
# Do not build tests if unneeded, bug #226345
epatch "${FILESDIR}/${PN}-2.28.3-make_check.patch"
# Support installation for multiple Python versions, upstream bug #648292
epatch "${FILESDIR}/${PN}-2.28.3-support_multiple_python_versions.patch"
# Disable tests that fail
epatch "${FILESDIR}/${P}-disable-failing-tests.patch"
# Disable introspection tests when we build with --disable-introspection
epatch "${FILESDIR}/${P}-tests-no-introspection.patch"
# Fix warning spam
epatch "${FILESDIR}/${P}-set_qdata.patch"
epatch "${FILESDIR}/${P}-gio-types-2.32.patch"
eautoreconf
gnome2_src_prepare
python_copy_sources
prepare_shebangs() {
# Make a backup with unconverted shebangs to keep python_doscript happy
cp codegen/codegen.py pygobject-codegen-2.0
sed -e "s%#! \?/usr/bin/env python%#!${PYTHON}%" \
-i codegen/*.py || die "shebang convertion failed"
}
python_foreach_impl run_in_build_dir prepare_shebangs
}
src_configure() {
DOCS="AUTHORS ChangeLog* NEWS README"
# --disable-introspection and --disable-cairo because we use pygobject:3
# for introspection support
G2CONF="${G2CONF}
--disable-introspection
--disable-cairo
$(use_with libffi ffi)"
python_foreach_impl run_in_build_dir gnome2_src_configure
}
src_compile() {
python_foreach_impl run_in_build_dir gnome2_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}/${EPYTHON}"
run_in_build_dir Xemake -j1 check
unset XDG_CACHE_HOME
}
python_foreach_impl testing
unset GIO_USE_VFS
}
src_install() {
installing() {
local f prefixed_sitedir
gnome2_src_install
python_doscript pygobject-codegen-2.0
# Don't keep multiple copies of pygobject-codegen-2.0 script
prefixed_sitedir=$(python_get_sitedir)
dosym "${prefixed_sitedir#${EPREFIX}}/gtk-2.0/codegen/codegen.py" /usr/bin/pygobject-codegen-2.0-${EPYTHON}
}
python_foreach_impl run_in_build_dir installing
if use examples; then
insinto /usr/share/doc/${PF}
doins -r examples
fi
}
run_in_build_dir() {
pushd "${BUILD_DIR}" > /dev/null || die
"$@"
popd > /dev/null
}