summaryrefslogtreecommitdiff
path: root/extra/pygobject
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2011-08-02 04:35:55 +0000
committerroot <root@rshg054.dnsready.net>2011-08-02 04:35:55 +0000
commitbf35116f9d203dcafce808a6c7b3dd5a0db8afbc (patch)
treef9551a1d3c67d2113cc5fc5c3f8816bcbaad0540 /extra/pygobject
parent1173ff2dba7d0fd3c45f170a5e353a76b7a5da2f (diff)
Tue Aug 2 04:35:55 UTC 2011
Diffstat (limited to 'extra/pygobject')
-rw-r--r--extra/pygobject/PKGBUILD16
-rw-r--r--extra/pygobject/python3-fix-build.patch34
-rw-r--r--extra/pygobject/python3-fix-maketrans.patch36
3 files changed, 82 insertions, 4 deletions
diff --git a/extra/pygobject/PKGBUILD b/extra/pygobject/PKGBUILD
index 7222d82f8..388e9fb69 100644
--- a/extra/pygobject/PKGBUILD
+++ b/extra/pygobject/PKGBUILD
@@ -1,18 +1,22 @@
-# $Id: PKGBUILD 120090 2011-04-19 21:33:57Z ibiru $
+# $Id: PKGBUILD 133523 2011-07-28 20:25:13Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgbase=pygobject
pkgname=(pygobject py3gobject pygobject-devel)
-pkgver=2.28.4
+pkgver=2.28.6
pkgrel=1
arch=('i686' 'x86_64')
license=('LGPL')
depends=('glib2' 'gobject-introspection')
makedepends=(python python2 python-cairo python2-cairo)
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/${pkgver%.*}/${pkgbase}-${pkgver}.tar.bz2)
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/${pkgver%.*}/${pkgbase}-${pkgver}.tar.xz
+ python3-fix-build.patch
+ python3-fix-maketrans.patch)
options=('!libtool')
url="http://www.pygtk.org/"
-sha256sums=('70e3a05dd5f688e68b5dafa2412cd4fdbc0af83792a5752ef6353c4accf2022c')
+sha256sums=('fb8a1d4f665130a125011659bd347c7339c944232163dbb9a34fd0686577adb8'
+ 'feafd4664f8455edf0bf8407ac45e219bb550df806ce0d601baae951e8c188ca'
+ '4bff9adcea13a824c45d14ec501c927df47d23c22507a2456d8b5ec885924c0a')
build() {
cd "${srcdir}"
@@ -28,6 +32,10 @@ build() {
(
cd "${pkgbase}-${pkgver}"
+ #patches available in 2.28 branch but unreleased.
+ patch -Np1 -i "${srcdir}/python3-fix-build.patch"
+ patch -Np1 -i "${srcdir}/python3-fix-maketrans.patch"
+
./configure --prefix=/usr
make
)
diff --git a/extra/pygobject/python3-fix-build.patch b/extra/pygobject/python3-fix-build.patch
new file mode 100644
index 000000000..4cb8cfe57
--- /dev/null
+++ b/extra/pygobject/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/extra/pygobject/python3-fix-maketrans.patch b/extra/pygobject/python3-fix-maketrans.patch
new file mode 100644
index 000000000..f5bc0e77c
--- /dev/null
+++ b/extra/pygobject/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