[arch-commits] Commit in python-notify/trunk (3 files)

Ionut Biru ibiru at archlinux.org
Tue Mar 8 08:49:12 UTC 2011


    Date: Tuesday, March 8, 2011 @ 03:49:12
  Author: ibiru
Revision: 113112

upgpkg: python-notify 0.1.1-10
really rebuild against libnotify 0.7

Added:
  python-notify/trunk/libnotify07.patch
  python-notify/trunk/notify-python-0.1.1-fix-GTK-symbols.patch
Modified:
  python-notify/trunk/PKGBUILD

-------------------------------------------+
 PKGBUILD                                  |   21 +++++++++++++---
 libnotify07.patch                         |   36 ++++++++++++++++++++++++++++
 notify-python-0.1.1-fix-GTK-symbols.patch |   25 +++++++++++++++++++
 3 files changed, 78 insertions(+), 4 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2011-03-08 08:47:50 UTC (rev 113111)
+++ PKGBUILD	2011-03-08 08:49:12 UTC (rev 113112)
@@ -6,20 +6,33 @@
 # Contributor: Daniel J Griffiths <ghost1227 at archlinux.us>
 pkgname=python-notify
 pkgver=0.1.1
-pkgrel=9
+pkgrel=10
 pkgdesc="Python bindings for libnotify"
 arch=('i686' 'x86_64')
 url="http://www.galago-project.org/"
 license=('GPL')
-depends=('pygtk>=2.22.0' 'libnotify>=0.4.5')
+depends=('pygtk>=2.22.0' 'libnotify>=0.7.1')
 makedepends=('pkgconfig' 'python2')
 options=(!libtool)
-source=(http://www.galago-project.org/files/releases/source/notify-python/notify-python-${pkgver}.tar.gz)
-md5sums=('8f0ef0939cc8edd2efd896ce5ba80cf4')
+source=(http://www.galago-project.org/files/releases/source/notify-python/notify-python-${pkgver}.tar.gz
+        libnotify07.patch
+        notify-python-0.1.1-fix-GTK-symbols.patch)
+md5sums=('8f0ef0939cc8edd2efd896ce5ba80cf4'
+         'b40c4542575d5aef559908fe60a21634'
+         'c6922028da5951e69a6a0167bdb4461c')
 
 build() {
     cd ${srcdir}/notify-python-${pkgver}
+
+    patch -Np1 -i ${srcdir}/libnotify07.patch
+    patch -Np1 -i ${srcdir}/notify-python-0.1.1-fix-GTK-symbols.patch
+
     ./configure --prefix=/usr
+
+    # WARNING - we touch src/pynotify.override in build because upstream did not rebuild pynotify.c
+    # from the input definitions, this forces pynotify.c to be regenerated, at some point this can be removed
+    touch src/pynotify.override
+
     make clean
     make
 }

Added: libnotify07.patch
===================================================================
--- libnotify07.patch	                        (rev 0)
+++ libnotify07.patch	2011-03-08 08:49:12 UTC (rev 113112)
@@ -0,0 +1,36 @@
+diff -up notify-python-0.1.1/src/pynotify.defs.notify070 notify-python-0.1.1/src/pynotify.defs
+--- notify-python-0.1.1/src/pynotify.defs.notify070	2010-11-02 17:11:14.928179237 -0400
++++ notify-python-0.1.1/src/pynotify.defs	2010-11-02 17:11:51.153180231 -0400
+@@ -38,7 +38,6 @@
+     '("const-gchar*" "summary")
+     '("const-gchar*" "message" (null-ok) (default "NULL"))
+     '("const-gchar*" "icon" (null-ok) (default "NULL"))
+-    '("GtkWidget*" "attach" (null-ok) (default "NULL"))
+   )
+ )
+ 
+@@ -53,24 +52,6 @@
+   )
+ )
+ 
+-(define-method attach_to_widget
+-  (of-object "NotifyNotification")
+-  (c-name "notify_notification_attach_to_widget")
+-  (return-type "none")
+-  (parameters
+-    '("GtkWidget*" "attach")
+-  )
+-)
+-
+-(define-method attach_to_status_icon
+-  (of-object "NotifyNotification")
+-  (c-name "notify_notification_attach_to_status_icon")
+-  (return-type "none")
+-  (parameters
+-    '("GtkStatusIcon*" "attach")
+-  )
+-)
+-
+ (define-method show
+   (of-object "NotifyNotification")
+   (c-name "notify_notification_show")

Added: notify-python-0.1.1-fix-GTK-symbols.patch
===================================================================
--- notify-python-0.1.1-fix-GTK-symbols.patch	                        (rev 0)
+++ notify-python-0.1.1-fix-GTK-symbols.patch	2011-03-08 08:49:12 UTC (rev 113112)
@@ -0,0 +1,25 @@
+diff -up notify-python-0.1.1/src/__init__.py.BAD notify-python-0.1.1/src/__init__.py
+--- notify-python-0.1.1/src/__init__.py.BAD	2010-08-31 09:04:45.353844005 -0400
++++ notify-python-0.1.1/src/__init__.py	2010-08-31 09:04:49.281844300 -0400
+@@ -1 +1,21 @@
++"""
++Fedora's libnotify.so is not linked against GTK2 or GTK3. The idea
++was to support being linked against different parallel-installable
++GTK stacks.
++
++Unfortunately, python needs to jump through some special hoops in order
++to share symbols with extension modules, specifically, pygtk, which does
++link against GTK2.
++
++Without using sys.setdlopenflags(sys.getdlopenflags() | ctypes.RTLD_GLOBAL),
++the result is:
++libnotify-WARNING **: Missing symbol 'gdk_screen_make_display_name'
++
++Thanks to David Malcolm for figuring out the workaround.
++"""
++import ctypes
++import sys
++sys.setdlopenflags(sys.getdlopenflags() | ctypes.RTLD_GLOBAL)
++import gtk
++
+ from _pynotify import *




More information about the arch-commits mailing list