From 68869136557badbb6ffe5ebf5b33558adf552ae2 Mon Sep 17 00:00:00 2001
From: Britney Fransen <brfransen@gmail.com>
Date: Tue, 10 Sep 2013 17:26:28 -0500
Subject: pygobject2: update to 2.28.6 git maintence branch. refs #901

---
 abs/core/python_modules/pygobject2/PKGBUILD        | 95 ++++++++++------------
 .../pygobject2/python2-fix-type.patch              | 50 ------------
 .../pygobject2/python3-fix-build.patch             | 34 --------
 .../pygobject2/python3-fix-maketrans.patch         | 36 --------
 4 files changed, 42 insertions(+), 173 deletions(-)
 delete mode 100644 abs/core/python_modules/pygobject2/python2-fix-type.patch
 delete mode 100644 abs/core/python_modules/pygobject2/python3-fix-build.patch
 delete mode 100644 abs/core/python_modules/pygobject2/python3-fix-maketrans.patch

diff --git a/abs/core/python_modules/pygobject2/PKGBUILD b/abs/core/python_modules/pygobject2/PKGBUILD
index 0f03bda..f4e921e 100644
--- a/abs/core/python_modules/pygobject2/PKGBUILD
+++ b/abs/core/python_modules/pygobject2/PKGBUILD
@@ -1,86 +1,75 @@
-# $Id: PKGBUILD 158678 2012-05-06 22:44:32Z bisson $
+# $Id$
 # Maintainer: Jan de Groot <jgc@archlinux.org>
 
 pkgbase=pygobject2
 pkgname=(python2-gobject2 pygobject2-devel)
 pkgver=2.28.6
-pkgrel=6
-arch=('i686' 'x86_64')
+pkgrel=9
+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)
+license=(LGPL)
+makedepends=(python2 git)
 options=('!libtool')
-sha256sums=('fb8a1d4f665130a125011659bd347c7339c944232163dbb9a34fd0686577adb8'
-            'b7b415499ffc0817cf551edf76a3fe47938db2c9f6240046eae681e6ef9b37ea'
-            'feafd4664f8455edf0bf8407ac45e219bb550df806ce0d601baae951e8c188ca'
-            '4bff9adcea13a824c45d14ec501c927df47d23c22507a2456d8b5ec885924c0a')
 
-build() {
-  cd "${srcdir}"
-  cp -a "pygobject-${pkgver}" python2-build
-  mkdir devel
+# pygobject-2-28 branch: https://git.gnome.org/browse/pygobject/log/?h=pygobject-2-28
+source=('git://git.gnome.org/pygobject#commit=9456ba7')
+sha256sums=('SKIP')
+
+prepare() {
+  cd pygobject
+  autoreconf -fi
 
-  (
-    cd python2-build
-    export PYTHON=/usr/bin/python2
-    ./configure --prefix=/usr --disable-introspection
-    make
-  )
+  cd ..
+  cp -a pygobject python2-build
+}
 
-  (
-    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"
+build() {
+  cd python2-build
+  ./configure --prefix=/usr --disable-introspection \
+    PYTHON=/usr/bin/python2
+  make
 
-    ./configure --prefix=/usr --disable-introspection
-    make
-  )
+  cd ../pygobject
+  ./configure --prefix=/usr --disable-introspection
+  make
 }
 
 package_python-gobject2() {
   pkgdesc="Python 3 bindings for GObject2"
-#  depends=('glib2' 'pygobject2-devel' 'python')
-  replaces=('py3gobject')
+  depends=(glib2 pygobject2-devel python)
+  replaces=(py3gobject)
   provides=("py3gobject=$pkgver")
 
-  cd "${srcdir}/pygobject-${pkgver}"
-  make DESTDIR="${pkgdir}" install
+  cd pygobject
+  make DESTDIR="$pkgdir" install
 
   # Delete devel stuff
-  rm -r "$pkgdir"/usr/{bin,include,lib/pkgconfig,share/{gtk-doc,pygobject/{2.0/codegen,xsl}}}
+  rm -r "$pkgdir"/usr/{include,lib/pkgconfig,share/{gtk-doc,pygobject/xsl}}
 }
 
 package_python2-gobject2() {
   pkgdesc="Python 2 bindings for GObject2"
-  depends=('glib2' 'pygobject2-devel' 'python2')
-  replaces=('pygobject')
+  depends=(glib2 pygobject2-devel python2)
+  replaces=(pygobject)
   provides=("pygobject=$pkgver")
 
-  cd "${srcdir}/python2-build"
-  make DESTDIR="${pkgdir}" install
+  cd 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|"
+  find "$pkgdir"/usr/share/pygobject -name '*.py' -exec \
+    sed -i '1s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|' {} +
+
+  rm -r "$pkgdir"/usr/share/gtk-doc
 
   # Split devel stuff
-  mv "$pkgdir"/usr/{include,lib/pkgconfig,share/{gtk-doc,pygobject/xsl}} \
-    "$srcdir/devel/"
+  cd ..
+  mkdir -p devel/usr/{lib,share/pygobject}
+  mv {"$pkgdir",devel}/usr/include
+  mv {"$pkgdir",devel}/usr/lib/pkgconfig
+  mv {"$pkgdir",devel}/usr/share/pygobject/xsl
 }
 
 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/"
+  mv devel/* "$pkgdir"
 }
diff --git a/abs/core/python_modules/pygobject2/python2-fix-type.patch b/abs/core/python_modules/pygobject2/python2-fix-type.patch
deleted file mode 100644
index 78e7ddf..0000000
--- a/abs/core/python_modules/pygobject2/python2-fix-type.patch
+++ /dev/null
@@ -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: 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
deleted file mode 100644
index 4cb8cfe..0000000
--- a/abs/core/python_modules/pygobject2/python3-fix-build.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-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
deleted file mode 100644
index f5bc0e7..0000000
--- a/abs/core/python_modules/pygobject2/python3-fix-maketrans.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-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
-- 
cgit v0.12

