summaryrefslogtreecommitdiffstats
path: root/abs/core/python_modules/pyqt
diff options
context:
space:
mode:
authorJames Meyer <james.meyer@operamail.com>2012-08-07 18:23:48 (GMT)
committerJames Meyer <james.meyer@operamail.com>2012-08-07 18:23:48 (GMT)
commit65be01bf377eb5aaf0164940661b6a88735661c6 (patch)
tree9e879ed78faa25f5480bf369df50636d680373d4 /abs/core/python_modules/pyqt
parentebeaee292a5a8e7dc402b0d21840cda1cc3d04ac (diff)
downloadlinhes_pkgbuild-65be01bf377eb5aaf0164940661b6a88735661c6.zip
linhes_pkgbuild-65be01bf377eb5aaf0164940661b6a88735661c6.tar.gz
linhes_pkgbuild-65be01bf377eb5aaf0164940661b6a88735661c6.tar.bz2
python_modules: updated a bunch
Diffstat (limited to 'abs/core/python_modules/pyqt')
-rw-r--r--abs/core/python_modules/pyqt/PKGBUILD77
-rw-r--r--abs/core/python_modules/pyqt/__changelog1
-rw-r--r--abs/core/python_modules/pyqt/fix-pyuic4.patch91
3 files changed, 141 insertions, 28 deletions
diff --git a/abs/core/python_modules/pyqt/PKGBUILD b/abs/core/python_modules/pyqt/PKGBUILD
index 8488d62..669bc4c 100644
--- a/abs/core/python_modules/pyqt/PKGBUILD
+++ b/abs/core/python_modules/pyqt/PKGBUILD
@@ -1,34 +1,39 @@
-# $Id$
-# Maintainer:
-# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# $Id: PKGBUILD 163679 2012-07-17 18:11:04Z andrea $
+# Maintainer: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Douglas Soares de Andrade <douglas@archlinux.org>
# Contributor: riai <riai@bigfoot.com> Ben <ben@benmazer.net>
pkgbase=pyqt
-pkgname=('pyqt' 'python2-pyqt')
-pkgver=4.8.6
+pkgname=('pyqt-common' 'python2-pyqt')
+pkgver=4.9.4
pkgrel=2
arch=('i686' 'x86_64')
url="http://riverbankcomputing.co.uk/software/pyqt/intro"
license=('GPL')
-makedepends=('qt' 'python-sip' 'dbus-python' 'python2-sip' 'phonon'
- 'python-opengl' 'qt-assistant-compat' 'qtwebkit')
-source=("http://riverbankcomputing.co.uk/static/Downloads/PyQt4/PyQt-x11-gpl-${pkgver}.tar.gz")
-md5sums=('9bfd7b08b8e438b83cc50d5c58191f97')
+makedepends=('qt' 'python2-sip'
+ 'python-opengl' 'qt-assistant-compat' 'qtwebkit' 'python2-dbus')
+source=("http://riverbankcomputing.co.uk/static/Downloads/PyQt4/PyQt-x11-gpl-${pkgver}.tar.gz"
+ 'fix-pyuic4.patch')
+md5sums=('a0b6a820633366365af5124ddbd059c7'
+ '097651aea0bafded5abdfd6d62afd2ad')
build() {
- cd "${srcdir}"
+ # FS#30728
+ cd "${srcdir}"/PyQt-x11-gpl-${pkgver}
+ patch -p1 -i "${srcdir}"/fix-pyuic4.patch
+ cd ..
+
cp -r PyQt-x11-gpl-${pkgver} Py2Qt-x11-gpl-${pkgver}
- cd "${srcdir}/PyQt-x11-gpl-${pkgver}"
- python configure.py \
- --confirm-license \
- --qsci-api
+ #cd "${srcdir}/PyQt-x11-gpl-${pkgver}"
+ #python configure.py \
+ # --confirm-license \
+ # --qsci-api
# Thanks Gerardo for the rpath fix
- find -name 'Makefile' | xargs sed -i 's|-Wl,-rpath,/usr/lib||g;s|-Wl,-rpath,.* ||g'
+ #find -name 'Makefile' | xargs sed -i 's|-Wl,-rpath,/usr/lib||g;s|-Wl,-rpath,.* ||g'
- make
+ #make
### Python2 version ###
cd "${srcdir}/Py2Qt-x11-gpl-${pkgver}"
@@ -43,36 +48,52 @@ build() {
make
}
+package_pyqt-common(){
+ pkgdesc="Common PyQt files shared between pyqt and python2-pyqt"
+
+ cd "${srcdir}/Py2Qt-x11-gpl-${pkgver}"
+ make -C pyrcc DESTDIR="${pkgdir}" install
+ make -C pylupdate DESTDIR="${pkgdir}" install
+ make -C designer INSTALL_ROOT="${pkgdir}" install
+
+ install -Dm644 PyQt4.api "${pkgdir}"/usr/share/qt/qsci/api/python/PyQt4.api
+}
+
package_pyqt(){
- pkgdesc="A set of Python bindings for the Qt toolkit"
- depends=('qtwebkit' 'python-sip')
+ pkgdesc="A set of Python 3.x bindings for the Qt toolkit"
+ depends=('qtwebkit' 'python-sip' 'python-dbus' 'pyqt-common')
optdepends=('phonon: enable audio and video in PyQt applications'
'qscintilla: QScintilla API'
'qt-assistant-compat: add PyQt online help in Qt Assistant')
- replaces=('python-qt')
- provides=('python-qt')
-
+
cd "${srcdir}/PyQt-x11-gpl-${pkgver}"
# INSTALL_ROOT is needed for the QtDesigner module, the other Makefiles use DESTDIR
make DESTDIR="${pkgdir}" INSTALL_ROOT="${pkgdir}" install
+
+ # Provided by pyqt-common
+ rm "${pkgdir}"/usr/bin/{pylupdate4,pyrcc4}
+ rm "${pkgdir}"/usr/lib/qt/plugins/designer/libpythonplugin.so
+ rm "${pkgdir}"/usr/share/qt/qsci/api/python/PyQt4.api
}
package_python2-pyqt(){
- pkgdesc="PyQt: A set of Python2 bindings for the Qt toolkit"
- depends=('pyqt' 'python2-sip' 'dbus-python')
+ pkgdesc="A set of Python 2.x bindings for the Qt toolkit"
+ depends=('qtwebkit' 'python2-sip' 'python2-dbus' 'pyqt-common')
optdepends=('phonon: enable audio and video in PyQt applications'
'python-opengl: enable OpenGL 3D graphics in PyQt applications'
'qscintilla: QScintilla API'
'qt-assistant-compat: add PyQt online help in Qt Assistant')
- replaces=('python2-qt')
provides=('python2-qt')
cd "${srcdir}/Py2Qt-x11-gpl-${pkgver}"
# INSTALL_ROOT is needed for the QtDesigner module, the other Makefiles use DESTDIR
make DESTDIR="${pkgdir}" INSTALL_ROOT="${pkgdir}" install
- # Provided by pyqt
- rm ${pkgdir}/usr/bin/{pylupdate4,pyrcc4,pyuic4}
- rm ${pkgdir}/usr/lib/qt/plugins/designer/libpythonplugin.so
- rm ${pkgdir}/usr/share/qt/qsci/api/python/PyQt4.api
+ # Fix conflicts with pyqt
+ mv "${pkgdir}"/usr/bin/{,python2-}pyuic4
+
+ # Provided by pyqt-common
+ rm "${pkgdir}"/usr/bin/{pylupdate4,pyrcc4}
+ rm "${pkgdir}"/usr/lib/qt/plugins/designer/libpythonplugin.so
+ rm "${pkgdir}"/usr/share/qt/qsci/api/python/PyQt4.api
}
diff --git a/abs/core/python_modules/pyqt/__changelog b/abs/core/python_modules/pyqt/__changelog
new file mode 100644
index 0000000..9731eb3
--- /dev/null
+++ b/abs/core/python_modules/pyqt/__changelog
@@ -0,0 +1 @@
+removed python3
diff --git a/abs/core/python_modules/pyqt/fix-pyuic4.patch b/abs/core/python_modules/pyqt/fix-pyuic4.patch
new file mode 100644
index 0000000..2173443
--- /dev/null
+++ b/abs/core/python_modules/pyqt/fix-pyuic4.patch
@@ -0,0 +1,91 @@
+# HG changeset patch
+# User Phil Thompson <phil at riverbankcomputing.com>
+# Date 2012-07-13 13:39:28 +0100
+# Node ID 29b668ada14c1428a3bbfe8f0324c6626bd5ac9a
+# Parent fd0f3da9d79ca9858d10a20c15fb85456cb832d7
+Fixed a regression in pyuic's handling of custom widgets.
+
+diff --git a/pyuic/uic/Compiler/qobjectcreator.py b/pyuic/uic/Compiler/qobjectcreator.py
+--- a/pyuic/uic/Compiler/qobjectcreator.py
++++ b/pyuic/uic/Compiler/qobjectcreator.py
+@@ -1,6 +1,6 @@
+ #############################################################################
+ ##
+-## Copyright (C) 2011 Riverbank Computing Limited.
++## Copyright (C) 2012 Riverbank Computing Limited.
+ ## Copyright (C) 2006 Thorsten Marek.
+ ## All right reserved.
+ ##
+@@ -100,7 +100,6 @@
+ assert widgetClass not in self._widgets
+ self._widgets[widgetClass] = (baseClass, module)
+
+-
+ def _resolveBaseclass(self, baseClass):
+ try:
+ for x in range(0, 10):
+@@ -114,19 +113,17 @@
+ except KeyError:
+ raise ValueError("unknown baseclass %s" % baseClass)
+
+-
+ def search(self, cls):
+ try:
+- self._usedWidgets.add(cls)
+ baseClass = self._resolveBaseclass(self._widgets[cls][0])
+ DEBUG("resolved baseclass of %s: %s" % (cls, baseClass))
+-
+- return type(cls, (baseClass,),
+- {"module" : ""})
+-
+ except KeyError:
+ return None
+
++ self._usedWidgets.add(cls)
++
++ return type(cls, (baseClass, ), {"module" : ""})
++
+ def _writeImportCode(self):
+ imports = {}
+ for widget in self._usedWidgets:
+diff --git a/pyuic/uic/objcreator.py b/pyuic/uic/objcreator.py
+--- a/pyuic/uic/objcreator.py
++++ b/pyuic/uic/objcreator.py
+@@ -102,19 +102,26 @@
+ self._modules.append(self._customWidgets)
+
+ def createQObject(self, classname, *args, **kwargs):
+- # Handle scoped names, typically static factory methods.
+- parts = classname.split('.')
+- factory = self.findQObjectType(parts[0])
++ # Handle regular and custom widgets.
++ factory = self.findQObjectType(classname)
+
+- if factory is not None:
+- for part in parts[1:]:
+- factory = getattr(factory, part, None)
+- if factory is None:
+- break
+- else:
+- return self._cpolicy.instantiate(factory, *args, **kwargs)
++ if factory is None:
++ # Handle scoped names, typically static factory methods.
++ parts = classname.split('.')
+
+- raise NoSuchWidgetError(classname)
++ if len(parts) > 1:
++ factory = self.findQObjectType(parts[0])
++
++ if factory is not None:
++ for part in parts[1:]:
++ factory = getattr(factory, part, None)
++ if factory is None:
++ break
++
++ if factory is None:
++ raise NoSuchWidgetError(classname)
++
++ return self._cpolicy.instantiate(factory, *args, **kwargs)
+
+ def invoke(self, rname, method, args=()):
+ return self._cpolicy.invoke(rname, method, args)