diff options
Diffstat (limited to 'dev-python')
26 files changed, 1379 insertions, 0 deletions
diff --git a/dev-python/pygobject-base/Manifest b/dev-python/pygobject-base/Manifest new file mode 100644 index 00000000..541286cb --- /dev/null +++ b/dev-python/pygobject-base/Manifest @@ -0,0 +1,3 @@ +DIST pygobject-3.12.1.tar.xz 701872 SHA256 da5fe04759e862d347b26b53a6aea0affa7cbe858b7004475fa8c7929496da35 SHA512 095754d06507bb5c5d802603d8fd97fabcc3057172f1fe6f34138e9553281cc7b474a0dd9f235678718eccc4f7adee38b10ec1365d5fd8c4c61a47e4a24fd5a1 WHIRLPOOL 3cc3c96f7f644c17ef9c9704107af3ff0577da3a54258de208b048eee1cf8e329ed572b4d8cea6e336a9757d6f60a969ce9c84fdd9987abf114b3e79a4ee3c18 +DIST pygobject-3.13.3.tar.xz 710452 SHA256 28c4d28c4083ce9c249cf7a8621a1452ecc557951650810a09bf946b21df7452 SHA512 3e8aca047f95d903e89bdfe0e24daf226a10a2bdf783142164fa22a11e6047da528d004711d289067b8cbd80d247c517b2a029cd4df11e54df7f6e6b907833a3 WHIRLPOOL b709d55b93986d7067c65be737c5824d9a26bf1d8ee3ab4c2a0193e24cfb29dea378407d4dbc41772d7ffa259bea1fbda43787a4aef68feafb1f27c416acdf0b +DIST pygobject-3.14.0.tar.xz 720128 SHA256 779effa93f4b59cdb72f4ab0128fb3fd82900bf686193b570fd3a8ce63392d54 SHA512 f6e1e5826a6afe81eb0a37bb554b433769622f8a0d17ac9836498425d70c4583cf8157027a555c21fd7a0d6686863c7803a350550665a375a906fccdabca2090 WHIRLPOOL 0a665504b792691238b89d2704ce1cc024f89ddf96fd6b626f1f5b05dbccfd633e61f9b45b0ca09873029c576b9804edcfa77e1bceae9e995be44a3fd60852ca diff --git a/dev-python/pygobject-base/files/pygobject-3.7.90-make_check.patch b/dev-python/pygobject-base/files/pygobject-3.7.90-make_check.patch new file mode 100755 index 00000000..74db7757 --- /dev/null +++ b/dev-python/pygobject-base/files/pygobject-3.7.90-make_check.patch @@ -0,0 +1,86 @@ +From 319d6d68a398d326ef95e39f494da7c514facf81 Mon Sep 17 00:00:00 2001 +From: Sobhan Mohammadpour <sobhanmohammadpour1@yahoo.fr> +Date: Fri, 8 Mar 2013 08:25:58 +0330 +Subject: [PATCH] pygobject-3.7.90-make check + +originaly by [Alexandre Rostovtsev <tetromino@gmail.com> +don't build tests unless it's needed + +--- + tests/Makefile.am | 12 ++++++------ + tests/runtests.py | 3 +++ + 2 files changed, 9 insertions(+), 6 deletions(-) + +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 287542d..2cc0da9 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -1,5 +1,5 @@ + CLEANFILES = +-noinst_LTLIBRARIES = libgimarshallingtests.la ++check_LTLIBRARIES = libgimarshallingtests.la + test_typelibs = GIMarshallingTests-1.0.typelib + + nodist_libgimarshallingtests_la_SOURCES = $(GI_DATADIR)/tests/gimarshallingtests.c $(GI_DATADIR)/tests/gimarshallingtests.h +@@ -23,7 +23,7 @@ GIMarshallingTests-1.0.typelib: GIMarshallingTests-1.0.gir Makefile + + # regress.c needs cairo + if ENABLE_CAIRO +-noinst_LTLIBRARIES += libregress.la ++check_LTLIBRARIES += libregress.la + test_typelibs += Regress-1.0.typelib + nodist_libregress_la_SOURCES = $(GI_DATADIR)/tests/regress.c $(GI_DATADIR)/tests/regress.h + libregress_la_CFLAGS = $(GIO_CFLAGS) $(CAIRO_CFLAGS) +@@ -52,7 +52,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 + +-noinst_LTLIBRARIES += testhelper.la ++check_LTLIBRARIES += testhelper.la + + testhelper_la_CFLAGS = -I$(top_srcdir)/gi/_gobject -I$(top_srcdir)/gi/_glib $(PYTHON_INCLUDES) $(GLIB_CFLAGS) + testhelper_la_LDFLAGS = -module -avoid-version +@@ -72,7 +72,7 @@ testhelper.la: $(testhelper_la_OBJECTS) $(testhelper_la_DEPENDENCIES) + test -L $@ || $(LN_S) .libs/$@ $@ + + +-all: $(LTLIBRARIES:.la=.so) ++all: $(check_LTLIBRARIES:.la=.so) + + EXTRA_DIST = \ + compathelper.py \ +@@ -116,7 +116,7 @@ EXTRA_DIST = \ + $(NULL) + + 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= \ +@@ -130,7 +130,7 @@ RUN_TESTS_ENV_VARS= \ + + # pygtkcompat tests need to be run in a separate process as they + # clobber global name space +-check-local: $(LTLIBRARIES:.la=.so) $(test_typelibs) gschemas.compiled ++check-local: $(check_LTLIBRARIES:.la=.so) $(test_typelibs) gschemas.compiled + @echo " CHECK Pyflakes" + @if type pyflakes >/dev/null 2>&1; then pyflakes $(top_srcdir); else echo "skipped, pyflakes not installed"; fi + @if test -z "$$SKIP_PEP8"; then \ +diff --git a/tests/runtests.py b/tests/runtests.py +index d3a4f47..5a53d3f 100755 +--- a/tests/runtests.py ++++ b/tests/runtests.py +@@ -54,6 +54,9 @@ if sys.version_info[:2] == (2, 6): + if sys.version_info[:2] == (2, 7): + unittest.TestCase.assertRaisesRegex = unittest.TestCase.assertRaisesRegexp + ++# Some tests fail with translated messages. ++os.environ["LC_ALL"] = "C" ++ + if '--help' in sys.argv: + print("Usage: ./runtests.py <testfiles>") + sys.exit(0) +-- +1.8.1.2 + diff --git a/dev-python/pygobject-base/metadata.xml b/dev-python/pygobject-base/metadata.xml new file mode 100644 index 00000000..9b1bc26a --- /dev/null +++ b/dev-python/pygobject-base/metadata.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>gnome</herd> +<herd>python</herd> +</pkgmetadata> diff --git a/dev-python/pygobject-base/pygobject-base-3.12.1.ebuild b/dev-python/pygobject-base/pygobject-base-3.12.1.ebuild new file mode 100644 index 00000000..f2259a38 --- /dev/null +++ b/dev-python/pygobject-base/pygobject-base-3.12.1.ebuild @@ -0,0 +1,91 @@ +# 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_7,3_2,3_3} ) + +REAL_PN="${PN/-base}" +GNOME_ORG_MODULE="${REAL_PN}" + +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="3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~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="+cairo examples test +threads" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND=" + >=dev-libs/glib-2.38:2 + >=dev-libs/gobject-introspection-1.38 + virtual/libffi:= + ${PYTHON_DEPS} +" +DEPEND="${COMMON_DEPEND} + virtual/pkgconfig + test? ( + dev-libs/atk[introspection] + media-fonts/font-cursor-misc + media-fonts/font-misc-misc + virtual/python-unittest2[${PYTHON_USEDEP}] + x11-libs/gdk-pixbuf:2[introspection] + x11-libs/gtk+:3[introspection] + x11-libs/pango[introspection] ) +" + +# 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]" + +src_prepare() { + gnome2_src_prepare + python_copy_sources +} + +src_configure() { + # docs disabled by upstream default since they are very out of date + python_foreach_impl run_in_build_dir \ + gnome2_src_configure \ + --disable-cairo \ + $(use_enable threads thread) +} + +src_compile() { + python_foreach_impl run_in_build_dir gnome2_src_compile +} + +src_test() { + unset DBUS_SESSION_BUS_ADDRESS + export GIO_USE_VFS="local" # prevents odd issues with deleting ${T}/.gvfs + export GIO_USE_VOLUME_MONITOR="unix" # prevent udisks-related failures in chroots, bug #449484 + + testing() { + export XDG_CACHE_HOME="${T}/${EPYTHON}" + run_in_build_dir Xemake check + unset XDG_CACHE_HOME + } + python_foreach_impl testing + unset GIO_USE_VFS +} + +src_install() { + DOCS="AUTHORS ChangeLog* NEWS README" + + python_foreach_impl run_in_build_dir gnome2_src_install + + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + fi +} diff --git a/dev-python/pygobject-base/pygobject-base-3.13.3.ebuild b/dev-python/pygobject-base/pygobject-base-3.13.3.ebuild new file mode 100644 index 00000000..1590677f --- /dev/null +++ b/dev-python/pygobject-base/pygobject-base-3.13.3.ebuild @@ -0,0 +1,92 @@ +# 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_7,3_2,3_3,3_4} ) + +REAL_PN="${PN/-base}" +GNOME_ORG_MODULE="${REAL_PN}" + +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="3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~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="+cairo examples test +threads" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND=" + >=dev-libs/glib-2.38:2 + >=dev-libs/gobject-introspection-1.38 + virtual/libffi:= + ${PYTHON_DEPS} +" +DEPEND="${COMMON_DEPEND} + virtual/pkgconfig + test? ( + dev-libs/atk[introspection] + media-fonts/font-cursor-misc + media-fonts/font-misc-misc + x11-libs/gdk-pixbuf:2[introspection] + x11-libs/gtk+:3[introspection] + x11-libs/pango[introspection] ) +" + +# 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]" + +src_prepare() { + gnome2_src_prepare + python_copy_sources +} + +src_configure() { + # Hard-enable libffi support since both gobject-introspection and + # glib-2.29.x rdepend on it anyway + # docs disabled by upstream default since they are very out of date + python_foreach_impl run_in_build_dir \ + gnome2_src_configure \ + --disable-cairo \ + $(use_enable threads thread) +} + +src_compile() { + python_foreach_impl run_in_build_dir gnome2_src_compile +} + +src_test() { + unset DBUS_SESSION_BUS_ADDRESS + export GIO_USE_VFS="local" # prevents odd issues with deleting ${T}/.gvfs + export GIO_USE_VOLUME_MONITOR="unix" # prevent udisks-related failures in chroots, bug #449484 + + testing() { + export XDG_CACHE_HOME="${T}/${EPYTHON}" + run_in_build_dir Xemake check + unset XDG_CACHE_HOME + } + python_foreach_impl testing + unset GIO_USE_VFS +} + +src_install() { + DOCS="AUTHORS ChangeLog* NEWS README" + + python_foreach_impl run_in_build_dir gnome2_src_install + + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + fi +} diff --git a/dev-python/pygobject-base/pygobject-base-3.14.0.ebuild b/dev-python/pygobject-base/pygobject-base-3.14.0.ebuild new file mode 100644 index 00000000..66df9c38 --- /dev/null +++ b/dev-python/pygobject-base/pygobject-base-3.14.0.ebuild @@ -0,0 +1,94 @@ +# 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_7,3_3,3_4} ) + +REAL_PN="${PN/-base}" +GNOME_ORG_MODULE="${REAL_PN}" + +inherit autotools eutils gnome2 python-r1 virtualx + +DESCRIPTION="GLib's GObject library bindings for Python" +HOMEPAGE="https://wiki.gnome.org/Projects/PyGObject" + +LICENSE="LGPL-2.1+" +SLOT="3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~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="+cairo examples test +threads" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND=" + >=dev-libs/glib-2.38:2 + >=dev-libs/gobject-introspection-1.39 + virtual/libffi:= + ${PYTHON_DEPS} +" +DEPEND="${COMMON_DEPEND} + virtual/pkgconfig + test? ( + dev-libs/atk[introspection] + media-fonts/font-cursor-misc + media-fonts/font-misc-misc + x11-libs/gdk-pixbuf:2[introspection] + x11-libs/gtk+:3[introspection] + x11-libs/pango[introspection] ) +" +# gnome-base/gnome-common required by eautoreconf + +# 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] +" + +src_prepare() { + gnome2_src_prepare + python_copy_sources +} + +src_configure() { + # Hard-enable libffi support since both gobject-introspection and + # glib-2.29.x rdepend on it anyway + # docs disabled by upstream default since they are very out of date + python_foreach_impl run_in_build_dir \ + gnome2_src_configure \ + --disable-cairo \ + $(use_enable threads thread) +} + +src_compile() { + python_foreach_impl run_in_build_dir gnome2_src_compile +} + +src_test() { + unset DBUS_SESSION_BUS_ADDRESS + export GIO_USE_VFS="local" # prevents odd issues with deleting ${T}/.gvfs + export GIO_USE_VOLUME_MONITOR="unix" # prevent udisks-related failures in chroots, bug #449484 + + testing() { + export XDG_CACHE_HOME="${T}/${EPYTHON}" + run_in_build_dir Xemake check + unset XDG_CACHE_HOME + } + python_foreach_impl testing + unset GIO_USE_VFS +} + +src_install() { + DOCS="AUTHORS ChangeLog* NEWS README" + + python_foreach_impl run_in_build_dir gnome2_src_install + + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + fi +} diff --git a/dev-python/pygobject-cairo/Manifest b/dev-python/pygobject-cairo/Manifest new file mode 100644 index 00000000..541286cb --- /dev/null +++ b/dev-python/pygobject-cairo/Manifest @@ -0,0 +1,3 @@ +DIST pygobject-3.12.1.tar.xz 701872 SHA256 da5fe04759e862d347b26b53a6aea0affa7cbe858b7004475fa8c7929496da35 SHA512 095754d06507bb5c5d802603d8fd97fabcc3057172f1fe6f34138e9553281cc7b474a0dd9f235678718eccc4f7adee38b10ec1365d5fd8c4c61a47e4a24fd5a1 WHIRLPOOL 3cc3c96f7f644c17ef9c9704107af3ff0577da3a54258de208b048eee1cf8e329ed572b4d8cea6e336a9757d6f60a969ce9c84fdd9987abf114b3e79a4ee3c18 +DIST pygobject-3.13.3.tar.xz 710452 SHA256 28c4d28c4083ce9c249cf7a8621a1452ecc557951650810a09bf946b21df7452 SHA512 3e8aca047f95d903e89bdfe0e24daf226a10a2bdf783142164fa22a11e6047da528d004711d289067b8cbd80d247c517b2a029cd4df11e54df7f6e6b907833a3 WHIRLPOOL b709d55b93986d7067c65be737c5824d9a26bf1d8ee3ab4c2a0193e24cfb29dea378407d4dbc41772d7ffa259bea1fbda43787a4aef68feafb1f27c416acdf0b +DIST pygobject-3.14.0.tar.xz 720128 SHA256 779effa93f4b59cdb72f4ab0128fb3fd82900bf686193b570fd3a8ce63392d54 SHA512 f6e1e5826a6afe81eb0a37bb554b433769622f8a0d17ac9836498425d70c4583cf8157027a555c21fd7a0d6686863c7803a350550665a375a906fccdabca2090 WHIRLPOOL 0a665504b792691238b89d2704ce1cc024f89ddf96fd6b626f1f5b05dbccfd633e61f9b45b0ca09873029c576b9804edcfa77e1bceae9e995be44a3fd60852ca diff --git a/dev-python/pygobject-cairo/files/pygobject-3.7.90-make_check.patch b/dev-python/pygobject-cairo/files/pygobject-3.7.90-make_check.patch new file mode 100755 index 00000000..74db7757 --- /dev/null +++ b/dev-python/pygobject-cairo/files/pygobject-3.7.90-make_check.patch @@ -0,0 +1,86 @@ +From 319d6d68a398d326ef95e39f494da7c514facf81 Mon Sep 17 00:00:00 2001 +From: Sobhan Mohammadpour <sobhanmohammadpour1@yahoo.fr> +Date: Fri, 8 Mar 2013 08:25:58 +0330 +Subject: [PATCH] pygobject-3.7.90-make check + +originaly by [Alexandre Rostovtsev <tetromino@gmail.com> +don't build tests unless it's needed + +--- + tests/Makefile.am | 12 ++++++------ + tests/runtests.py | 3 +++ + 2 files changed, 9 insertions(+), 6 deletions(-) + +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 287542d..2cc0da9 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -1,5 +1,5 @@ + CLEANFILES = +-noinst_LTLIBRARIES = libgimarshallingtests.la ++check_LTLIBRARIES = libgimarshallingtests.la + test_typelibs = GIMarshallingTests-1.0.typelib + + nodist_libgimarshallingtests_la_SOURCES = $(GI_DATADIR)/tests/gimarshallingtests.c $(GI_DATADIR)/tests/gimarshallingtests.h +@@ -23,7 +23,7 @@ GIMarshallingTests-1.0.typelib: GIMarshallingTests-1.0.gir Makefile + + # regress.c needs cairo + if ENABLE_CAIRO +-noinst_LTLIBRARIES += libregress.la ++check_LTLIBRARIES += libregress.la + test_typelibs += Regress-1.0.typelib + nodist_libregress_la_SOURCES = $(GI_DATADIR)/tests/regress.c $(GI_DATADIR)/tests/regress.h + libregress_la_CFLAGS = $(GIO_CFLAGS) $(CAIRO_CFLAGS) +@@ -52,7 +52,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 + +-noinst_LTLIBRARIES += testhelper.la ++check_LTLIBRARIES += testhelper.la + + testhelper_la_CFLAGS = -I$(top_srcdir)/gi/_gobject -I$(top_srcdir)/gi/_glib $(PYTHON_INCLUDES) $(GLIB_CFLAGS) + testhelper_la_LDFLAGS = -module -avoid-version +@@ -72,7 +72,7 @@ testhelper.la: $(testhelper_la_OBJECTS) $(testhelper_la_DEPENDENCIES) + test -L $@ || $(LN_S) .libs/$@ $@ + + +-all: $(LTLIBRARIES:.la=.so) ++all: $(check_LTLIBRARIES:.la=.so) + + EXTRA_DIST = \ + compathelper.py \ +@@ -116,7 +116,7 @@ EXTRA_DIST = \ + $(NULL) + + 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= \ +@@ -130,7 +130,7 @@ RUN_TESTS_ENV_VARS= \ + + # pygtkcompat tests need to be run in a separate process as they + # clobber global name space +-check-local: $(LTLIBRARIES:.la=.so) $(test_typelibs) gschemas.compiled ++check-local: $(check_LTLIBRARIES:.la=.so) $(test_typelibs) gschemas.compiled + @echo " CHECK Pyflakes" + @if type pyflakes >/dev/null 2>&1; then pyflakes $(top_srcdir); else echo "skipped, pyflakes not installed"; fi + @if test -z "$$SKIP_PEP8"; then \ +diff --git a/tests/runtests.py b/tests/runtests.py +index d3a4f47..5a53d3f 100755 +--- a/tests/runtests.py ++++ b/tests/runtests.py +@@ -54,6 +54,9 @@ if sys.version_info[:2] == (2, 6): + if sys.version_info[:2] == (2, 7): + unittest.TestCase.assertRaisesRegex = unittest.TestCase.assertRaisesRegexp + ++# Some tests fail with translated messages. ++os.environ["LC_ALL"] = "C" ++ + if '--help' in sys.argv: + print("Usage: ./runtests.py <testfiles>") + sys.exit(0) +-- +1.8.1.2 + diff --git a/dev-python/pygobject-cairo/metadata.xml b/dev-python/pygobject-cairo/metadata.xml new file mode 100644 index 00000000..9b1bc26a --- /dev/null +++ b/dev-python/pygobject-cairo/metadata.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>gnome</herd> +<herd>python</herd> +</pkgmetadata> diff --git a/dev-python/pygobject-cairo/pygobject-cairo-3.12.1.ebuild b/dev-python/pygobject-cairo/pygobject-cairo-3.12.1.ebuild new file mode 100644 index 00000000..e0e553ce --- /dev/null +++ b/dev-python/pygobject-cairo/pygobject-cairo-3.12.1.ebuild @@ -0,0 +1,66 @@ +# Copyright 1999-2014 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_7,3_2,3_3} ) + +REAL_PN="${PN/-cairo}" +GNOME_ORG_MODULE="${REAL_PN}" + +inherit autotools eutils gnome2 python-r1 virtualx + +DESCRIPTION="GLib's GObject library bindings for Python, Cairo Libraries" +HOMEPAGE="http://www.pygtk.org/" + +LICENSE="LGPL-2.1+" +SLOT="3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~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="+threads" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND=" + ~dev-python/pygobject-base-${PV}[threads=] + >=dev-python/pycairo-1.10.0[${PYTHON_USEDEP}] + ${PYTHON_DEPS}" +DEPEND="${COMMON_DEPEND} + x11-libs/cairo[glib] + gnome-base/gnome-common" +RDEPEND="${COMMON_DEPEND} + !<dev-python/pygtk-2.13 + !<dev-python/pygobject-2.28.6-r50:2[introspection]" + +# gnome-base/gnome-common required by eautoreconf + +src_prepare() { + gnome2_src_prepare + python_copy_sources +} + +src_configure() { + # Hard-enable libffi support since both gobject-introspection and + # glib-2.29.x rdepend on it anyway + # docs disabled by upstream default since they are very out of date + python_foreach_impl run_in_build_dir \ + gnome2_src_configure \ + --enable-cairo \ + $(use_enable threads thread) +} + +src_compile() { + python_foreach_impl run_in_build_dir gnome2_src_compile +} + +src_install() { + DOCS="AUTHORS ChangeLog* NEWS README" + + python_foreach_impl run_in_build_dir gnome2_src_install + # just keep /usr/$(get_libdir)/*/site-packages/gi/_gi_cairo.so + # discard the rest + rm $(find "${ED}" -type f | grep -v "gi/_gi_cairo.so") \ + $(find "${ED}" -type l | grep -v "gi/_gi_cairo.so") || die + find "${ED}" -depth -type d -empty -exec rmdir {} \; || die +} diff --git a/dev-python/pygobject-cairo/pygobject-cairo-3.13.3.ebuild b/dev-python/pygobject-cairo/pygobject-cairo-3.13.3.ebuild new file mode 100644 index 00000000..b503386f --- /dev/null +++ b/dev-python/pygobject-cairo/pygobject-cairo-3.13.3.ebuild @@ -0,0 +1,66 @@ +# Copyright 1999-2014 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_7,3_2,3_3,3_4} ) + +REAL_PN="${PN/-cairo}" +GNOME_ORG_MODULE="${REAL_PN}" + +inherit autotools eutils gnome2 python-r1 virtualx + +DESCRIPTION="GLib's GObject library bindings for Python, Cairo Libraries" +HOMEPAGE="http://www.pygtk.org/" + +LICENSE="LGPL-2.1+" +SLOT="3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~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="+threads" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND=" + ~dev-python/pygobject-base-${PV}[threads=] + >=dev-python/pycairo-1.10.0[${PYTHON_USEDEP}] + ${PYTHON_DEPS}" +DEPEND="${COMMON_DEPEND} + x11-libs/cairo[glib] + gnome-base/gnome-common" +RDEPEND="${COMMON_DEPEND} + !<dev-python/pygtk-2.13 + !<dev-python/pygobject-2.28.6-r50:2[introspection]" + +# gnome-base/gnome-common required by eautoreconf + +src_prepare() { + gnome2_src_prepare + python_copy_sources +} + +src_configure() { + # Hard-enable libffi support since both gobject-introspection and + # glib-2.29.x rdepend on it anyway + # docs disabled by upstream default since they are very out of date + python_foreach_impl run_in_build_dir \ + gnome2_src_configure \ + --enable-cairo \ + $(use_enable threads thread) +} + +src_compile() { + python_foreach_impl run_in_build_dir gnome2_src_compile +} + +src_install() { + DOCS="AUTHORS ChangeLog* NEWS README" + + python_foreach_impl run_in_build_dir gnome2_src_install + # just keep /usr/$(get_libdir)/*/site-packages/gi/_gi_cairo.so + # discard the rest + rm $(find "${ED}" -type f | grep -v "gi/_gi_cairo.so") \ + $(find "${ED}" -type l | grep -v "gi/_gi_cairo.so") || die + find "${ED}" -depth -type d -empty -exec rmdir {} \; || die +} diff --git a/dev-python/pygobject-cairo/pygobject-cairo-3.14.0.ebuild b/dev-python/pygobject-cairo/pygobject-cairo-3.14.0.ebuild new file mode 100644 index 00000000..112f2051 --- /dev/null +++ b/dev-python/pygobject-cairo/pygobject-cairo-3.14.0.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2014 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_7,3_3,3_4} ) + +REAL_PN="${PN/-cairo}" +GNOME_ORG_MODULE="${REAL_PN}" + +inherit autotools eutils gnome2 python-r1 virtualx + +DESCRIPTION="GLib's GObject library bindings for Python" +HOMEPAGE="https://wiki.gnome.org/Projects/PyGObject" + +LICENSE="LGPL-2.1+" +SLOT="3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~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="+threads" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND=" + ~dev-python/pygobject-base-${PV}[threads=] + >=dev-python/pycairo-1.10.0[${PYTHON_USEDEP}] + ${PYTHON_DEPS}" +DEPEND="${COMMON_DEPEND} + x11-libs/cairo[glib] + gnome-base/gnome-common" +RDEPEND="${COMMON_DEPEND} + !<dev-python/pygtk-2.13 + !<dev-python/pygobject-2.28.6-r50:2[introspection] +" + +src_prepare() { + gnome2_src_prepare + python_copy_sources +} + +src_configure() { + # Hard-enable libffi support since both gobject-introspection and + # glib-2.29.x rdepend on it anyway + # docs disabled by upstream default since they are very out of date + python_foreach_impl run_in_build_dir \ + gnome2_src_configure \ + --enable-cairo \ + $(use_enable threads thread) +} + +src_compile() { + python_foreach_impl run_in_build_dir gnome2_src_compile +} + +src_install() { + DOCS="AUTHORS ChangeLog* NEWS README" + + python_foreach_impl run_in_build_dir gnome2_src_install + # just keep /usr/$(get_libdir)/*/site-packages/gi/_gi_cairo.so + # discard the rest + rm $(find "${ED}" -type f | grep -v "gi/_gi_cairo.so") \ + $(find "${ED}" -type l | grep -v "gi/_gi_cairo.so") || die + find "${ED}" -depth -type d -empty -exec rmdir {} \; || die +} diff --git a/dev-python/pygobject/Manifest b/dev-python/pygobject/Manifest new file mode 100644 index 00000000..6f3784fa --- /dev/null +++ b/dev-python/pygobject/Manifest @@ -0,0 +1 @@ +DIST pygobject-2.28.6.tar.xz 747248 SHA256 fb8a1d4f665130a125011659bd347c7339c944232163dbb9a34fd0686577adb8 SHA512 37544ea2377258758169b25a2969d5ee1c9ffb9b6e63e05bc7a0471a49ac9169c51ec587d4489172c7d256f53df878a81c1992a08059aa7e43dbbb69f799545c WHIRLPOOL 402f764d6ca73f238784738a1e09832858fd95af5a633e825412e9e6a21e89ab6b2090d3995902ed404fc4fde445cf970c76fcd93f8f64cf9def742452776c00 diff --git a/dev-python/pygobject/files/pygobject-2.28.3-disable-failing-tests.patch b/dev-python/pygobject/files/pygobject-2.28.3-disable-failing-tests.patch new file mode 100644 index 00000000..86a66ddf --- /dev/null +++ b/dev-python/pygobject/files/pygobject-2.28.3-disable-failing-tests.patch @@ -0,0 +1,55 @@ +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 + diff --git a/dev-python/pygobject/files/pygobject-2.28.3-fix-codegen-location.patch b/dev-python/pygobject/files/pygobject-2.28.3-fix-codegen-location.patch new file mode 100644 index 00000000..44440a52 --- /dev/null +++ b/dev-python/pygobject/files/pygobject-2.28.3-fix-codegen-location.patch @@ -0,0 +1,64 @@ +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 + diff --git a/dev-python/pygobject/files/pygobject-2.28.3-make_check.patch b/dev-python/pygobject/files/pygobject-2.28.3-make_check.patch new file mode 100644 index 00000000..45c04b96 --- /dev/null +++ b/dev-python/pygobject/files/pygobject-2.28.3-make_check.patch @@ -0,0 +1,76 @@ +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 + diff --git a/dev-python/pygobject/files/pygobject-2.28.3-support_multiple_python_versions.patch b/dev-python/pygobject/files/pygobject-2.28.3-support_multiple_python_versions.patch new file mode 100644 index 00000000..65d881a4 --- /dev/null +++ b/dev-python/pygobject/files/pygobject-2.28.3-support_multiple_python_versions.patch @@ -0,0 +1,103 @@ +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 + diff --git a/dev-python/pygobject/files/pygobject-2.28.6-disable-failing-tests.patch b/dev-python/pygobject/files/pygobject-2.28.6-disable-failing-tests.patch new file mode 100644 index 00000000..f9d396dc --- /dev/null +++ b/dev-python/pygobject/files/pygobject-2.28.6-disable-failing-tests.patch @@ -0,0 +1,98 @@ +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 + diff --git a/dev-python/pygobject/files/pygobject-2.28.6-gio-types-2.32.patch b/dev-python/pygobject/files/pygobject-2.28.6-gio-types-2.32.patch new file mode 100644 index 00000000..fa0adf54 --- /dev/null +++ b/dev-python/pygobject/files/pygobject-2.28.6-gio-types-2.32.patch @@ -0,0 +1,50 @@ +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 + diff --git a/dev-python/pygobject/files/pygobject-2.28.6-set_qdata.patch b/dev-python/pygobject/files/pygobject-2.28.6-set_qdata.patch new file mode 100644 index 00000000..55376b59 --- /dev/null +++ b/dev-python/pygobject/files/pygobject-2.28.6-set_qdata.patch @@ -0,0 +1,28 @@ +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 + diff --git a/dev-python/pygobject/files/pygobject-2.28.6-tests-no-introspection.patch b/dev-python/pygobject/files/pygobject-2.28.6-tests-no-introspection.patch new file mode 100644 index 00000000..d7e0c68e --- /dev/null +++ b/dev-python/pygobject/files/pygobject-2.28.6-tests-no-introspection.patch @@ -0,0 +1,33 @@ +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 + diff --git a/dev-python/pygobject/metadata.xml b/dev-python/pygobject/metadata.xml new file mode 100644 index 00000000..ea70bd5c --- /dev/null +++ b/dev-python/pygobject/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>gnome</herd> +<herd>python</herd> +<use> + <flag name="introspection">Use <pkg>dev-libs/gobject-introspection</pkg> for + introspection</flag> +</use> +</pkgmetadata> diff --git a/dev-python/pygobject/pygobject-2.28.6-r53.ebuild b/dev-python/pygobject/pygobject-2.28.6-r53.ebuild new file mode 100644 index 00000000..fe0c9796 --- /dev/null +++ b/dev-python/pygobject/pygobject-2.28.6-r53.ebuild @@ -0,0 +1,122 @@ +# 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 +} diff --git a/dev-python/pygobject/pygobject-3.12.1.ebuild b/dev-python/pygobject/pygobject-3.12.1.ebuild new file mode 100644 index 00000000..0182d1d8 --- /dev/null +++ b/dev-python/pygobject/pygobject-3.12.1.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="5" +PYTHON_COMPAT=( python{2_7,3_2,3_3} ) + +inherit python-r1 + +DESCRIPTION="GLib's GObject library bindings for Python, meta package" +HOMEPAGE="http://www.pygtk.org/" + +LICENSE="LGPL-2.1+" +SLOT="3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~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="+cairo examples test +threads" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND=" + ~dev-python/pygobject-base-${PV}[threads=,examples=,test=,${PYTHON_USEDEP}] + cairo? ( ~dev-python/pygobject-cairo-${PV}[threads=,${PYTHON_USEDEP}] ) +" +DEPEND="${COMMON_DEPEND}" +RDEPEND="${COMMON_DEPEND}" diff --git a/dev-python/pygobject/pygobject-3.13.3.ebuild b/dev-python/pygobject/pygobject-3.13.3.ebuild new file mode 100644 index 00000000..b055cd56 --- /dev/null +++ b/dev-python/pygobject/pygobject-3.13.3.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="5" +PYTHON_COMPAT=( python{2_7,3_2,3_3,3_4} ) + +inherit python-r1 + +DESCRIPTION="GLib's GObject library bindings for Python, meta package" +HOMEPAGE="http://www.pygtk.org/" + +LICENSE="LGPL-2.1+" +SLOT="3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~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="+cairo examples test +threads" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND=" + ~dev-python/pygobject-base-${PV}[threads=,examples=,test=,${PYTHON_USEDEP}] + cairo? ( ~dev-python/pygobject-cairo-${PV}[threads=,${PYTHON_USEDEP}] ) +" +DEPEND="${COMMON_DEPEND}" +RDEPEND="${COMMON_DEPEND}" diff --git a/dev-python/pygobject/pygobject-3.14.0.ebuild b/dev-python/pygobject/pygobject-3.14.0.ebuild new file mode 100644 index 00000000..a80d203c --- /dev/null +++ b/dev-python/pygobject/pygobject-3.14.0.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="5" +PYTHON_COMPAT=( python{2_7,3_3,3_4} ) + +inherit python-r1 + +DESCRIPTION="GLib's GObject library bindings for Python, meta package" +HOMEPAGE="https://wiki.gnome.org/Projects/PyGObject" + +LICENSE="LGPL-2.1+" +SLOT="3" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~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="+cairo examples test +threads" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND=" + ~dev-python/pygobject-base-${PV}[threads=,examples=,test=,${PYTHON_USEDEP}] + cairo? ( ~dev-python/pygobject-cairo-${PV}[threads=,${PYTHON_USEDEP}] ) +" +DEPEND="${COMMON_DEPEND}" +RDEPEND="${COMMON_DEPEND}" |