diff options
Diffstat (limited to 'abs/core/python_modules/pygobject2')
5 files changed, 207 insertions, 0 deletions
diff --git a/abs/core/python_modules/pygobject2/PKGBUILD b/abs/core/python_modules/pygobject2/PKGBUILD new file mode 100644 index 0000000..0f03bda --- /dev/null +++ b/abs/core/python_modules/pygobject2/PKGBUILD @@ -0,0 +1,86 @@ +# $Id: PKGBUILD 158678 2012-05-06 22:44:32Z bisson $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgbase=pygobject2 +pkgname=(python2-gobject2 pygobject2-devel) +pkgver=2.28.6 +pkgrel=6 +arch=('i686' 'x86_64') +url="http://www.pygtk.org/" +license=('LGPL') +makedepends=( 'python2') +source=(http://ftp.gnome.org/pub/gnome/sources/pygobject/${pkgver%.*}/pygobject-${pkgver}.tar.xz +        python2-fix-type.patch +        python3-fix-build.patch +        python3-fix-maketrans.patch) +options=('!libtool') +sha256sums=('fb8a1d4f665130a125011659bd347c7339c944232163dbb9a34fd0686577adb8' +            'b7b415499ffc0817cf551edf76a3fe47938db2c9f6240046eae681e6ef9b37ea' +            'feafd4664f8455edf0bf8407ac45e219bb550df806ce0d601baae951e8c188ca' +            '4bff9adcea13a824c45d14ec501c927df47d23c22507a2456d8b5ec885924c0a') + +build() { +  cd "${srcdir}" +  cp -a "pygobject-${pkgver}" python2-build +  mkdir devel + +  ( +    cd python2-build +    export PYTHON=/usr/bin/python2 +    ./configure --prefix=/usr --disable-introspection +    make +  ) + +  ( +    cd "pygobject-${pkgver}" +    #patches available in 2.28 branch but unreleased. +    patch -Np1 -i "${srcdir}/python2-fix-type.patch" +    patch -Np1 -i "${srcdir}/python3-fix-build.patch" +    patch -Np1 -i "${srcdir}/python3-fix-maketrans.patch" + +    ./configure --prefix=/usr --disable-introspection +    make +  ) +} + +package_python-gobject2() { +  pkgdesc="Python 3 bindings for GObject2" +#  depends=('glib2' 'pygobject2-devel' 'python') +  replaces=('py3gobject') +  provides=("py3gobject=$pkgver") + +  cd "${srcdir}/pygobject-${pkgver}" +  make DESTDIR="${pkgdir}" install + +  # Delete devel stuff +  rm -r "$pkgdir"/usr/{bin,include,lib/pkgconfig,share/{gtk-doc,pygobject/{2.0/codegen,xsl}}} +} + +package_python2-gobject2() { +  pkgdesc="Python 2 bindings for GObject2" +  depends=('glib2' 'pygobject2-devel' 'python2') +  replaces=('pygobject') +  provides=("pygobject=$pkgver") + +  cd "${srcdir}/python2-build" +  make DESTDIR="${pkgdir}" install + +  find "$pkgdir"/usr/share/pygobject -name '*.py' | \ +    xargs sed -i "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" + +  # Split devel stuff +  mv "$pkgdir"/usr/{include,lib/pkgconfig,share/{gtk-doc,pygobject/xsl}} \ +    "$srcdir/devel/" +} + +package_pygobject2-devel() { +  pkgdesc="Development files for the pygobject bindings" + +  cd "${srcdir}/devel" +  mkdir -p "$pkgdir"/usr/{include,lib,share/pygobject} + +  mv include   "$pkgdir/usr/" +  mv pkgconfig "$pkgdir/usr/lib/" +  mv gtk-doc   "$pkgdir/usr/share/" +  mv xsl       "$pkgdir/usr/share/pygobject/" +} diff --git a/abs/core/python_modules/pygobject2/__changelog b/abs/core/python_modules/pygobject2/__changelog new file mode 100644 index 0000000..92b1ef7 --- /dev/null +++ b/abs/core/python_modules/pygobject2/__changelog @@ -0,0 +1 @@ +remove python3 diff --git a/abs/core/python_modules/pygobject2/python2-fix-type.patch b/abs/core/python_modules/pygobject2/python2-fix-type.patch new file mode 100644 index 0000000..78e7ddf --- /dev/null +++ b/abs/core/python_modules/pygobject2/python2-fix-type.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: 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.9.1 + diff --git a/abs/core/python_modules/pygobject2/python3-fix-build.patch b/abs/core/python_modules/pygobject2/python3-fix-build.patch new file mode 100644 index 0000000..4cb8cfe --- /dev/null +++ b/abs/core/python_modules/pygobject2/python3-fix-build.patch @@ -0,0 +1,34 @@ +From e2dc4ac346a16b6976b92e84819c7203629beb4a Mon Sep 17 00:00:00 2001 +From: Ignacio Casal Quinteiro <icq@gnome.org> +Date: Thu, 21 Apr 2011 14:52:20 +0000 +Subject: [python3] fix build. PYcairo_IMPORT doesn't exists anymore + +--- +diff --git a/gi/pygi-foreign-cairo.c b/gi/pygi-foreign-cairo.c +index 81b9865..edf52d7 100644 +--- a/gi/pygi-foreign-cairo.c ++++ b/gi/pygi-foreign-cairo.c +@@ -30,7 +30,7 @@ + #include <pycairo/py3cairo.h> + #endif +  +-Pycairo_CAPI_t *Pycairo_CAPI; ++static Pycairo_CAPI_t *Pycairo_CAPI; +  + #include "pygi-foreign.h" +  +@@ -117,7 +117,12 @@ cairo_surface_release (GIBaseInfo *base_info, + static PyMethodDef _gi_cairo_functions[] = {0,}; + PYGLIB_MODULE_START(_gi_cairo, "_gi_cairo") + { ++#if PY_VERSION_HEX < 0x03000000 +     Pycairo_IMPORT; ++#else ++    Pycairo_CAPI = (Pycairo_CAPI_t*) PyCObject_Import("cairo", "CAPI"); ++#endif ++ +     if (Pycairo_CAPI == NULL) +         return PYGLIB_MODULE_ERROR_RETURN; +  +-- +cgit v0.9 diff --git a/abs/core/python_modules/pygobject2/python3-fix-maketrans.patch b/abs/core/python_modules/pygobject2/python3-fix-maketrans.patch new file mode 100644 index 0000000..f5bc0e7 --- /dev/null +++ b/abs/core/python_modules/pygobject2/python3-fix-maketrans.patch @@ -0,0 +1,36 @@ +From 667bec76ccbc85cc1d54a0e68977dbda241c028c Mon Sep 17 00:00:00 2001 +From: Martin Pitt <martin.pitt@ubuntu.com> +Date: Wed, 13 Jul 2011 06:42:22 +0000 +Subject: [python3] Fix maketrans import + +Python3 moved the maketrans() function from the string module to a str method. +This unbreaks gi/module.py for Python 3 again. +--- +diff --git a/gi/module.py b/gi/module.py +index 70df76c..d56bdaf 100644 +--- a/gi/module.py ++++ b/gi/module.py +@@ -24,7 +24,11 @@ from __future__ import absolute_import +  + import os + import gobject +-import string ++try: ++    maketrans = ''.maketrans ++except AttributeError: ++    # fallback for Python 2 ++    from string import maketrans +  + import gi + from .overrides import registry +@@ -124,7 +128,7 @@ class IntrospectionModule(object): +                 # Don't use upper() here to avoid locale specific +                 # identifier conversion (e. g. in Turkish 'i'.upper() == 'i') +                 # see https://bugzilla.gnome.org/show_bug.cgi?id=649165 +-                ascii_upper_trans = string.maketrans( ++                ascii_upper_trans = maketrans( +                         'abcdefgjhijklmnopqrstuvwxyz',  +                         'ABCDEFGJHIJKLMNOPQRSTUVWXYZ') +                 for value_info in info.get_values(): +-- +cgit v0.9  | 
