diff --git a/srcpkgs/python-PyQt4-devel b/srcpkgs/python-PyQt4-devel new file mode 120000 index 0000000000..fe02248dee --- /dev/null +++ b/srcpkgs/python-PyQt4-devel @@ -0,0 +1 @@ +python-PyQt4 \ No newline at end of file diff --git a/srcpkgs/python-PyQt4-devel-tools b/srcpkgs/python-PyQt4-devel-tools new file mode 120000 index 0000000000..fe02248dee --- /dev/null +++ b/srcpkgs/python-PyQt4-devel-tools @@ -0,0 +1 @@ +python-PyQt4 \ No newline at end of file diff --git a/srcpkgs/python-PyQt4-doc b/srcpkgs/python-PyQt4-doc new file mode 120000 index 0000000000..fe02248dee --- /dev/null +++ b/srcpkgs/python-PyQt4-doc @@ -0,0 +1 @@ +python-PyQt4 \ No newline at end of file diff --git a/srcpkgs/python-PyQt4/files/pyuic4 b/srcpkgs/python-PyQt4/files/pyuic4 new file mode 100644 index 0000000000..228ee0ce8e --- /dev/null +++ b/srcpkgs/python-PyQt4/files/pyuic4 @@ -0,0 +1,3 @@ +#!/usr/bin/env python +# there's no main function, so just import the module +import PyQt4.uic.pyuic diff --git a/srcpkgs/python-PyQt4/patches/disable-pyuic4-wrapper.patch b/srcpkgs/python-PyQt4/patches/disable-pyuic4-wrapper.patch new file mode 100644 index 0000000000..7607d8f18a --- /dev/null +++ b/srcpkgs/python-PyQt4/patches/disable-pyuic4-wrapper.patch @@ -0,0 +1,53 @@ +--- configure-ng.py.orig 2014-09-11 19:36:11.000000000 +0200 ++++ configure-ng.py 2014-10-21 00:47:10.948729709 +0200 +@@ -1355,9 +1355,6 @@ + generate_application_makefile(target_config, verbose, tool) + subdirs.append(tool) + +- # Generate the pyuic4 wrapper. +- pyuic_wrapper = generate_pyuic4_wrapper(target_config) +- + # Generate the Qt Designer plugin. + if not target_config.no_designer_plugin and 'QtDesigner' in target_config.pyqt_modules: + if generate_plugin_makefile(target_config, verbose, 'designer', target_config.designer_plugin_dir, "Qt Designer"): +@@ -1412,20 +1409,13 @@ + INSTALLS += init_py + ''' % (' '.join(subdirs), source_path('__init__.py'), target_config.pyqt_module_dir)) + +- # Install the uic module and the pyuic4 wrapper. ++ # Install the uic module. + out_f.write(''' + uic_package.files = %s + uic_package.path = %s/PyQt4 + INSTALLS += uic_package + ''' % (source_path('pyuic', 'uic'), target_config.pyqt_module_dir)) + +- if not target_config.no_tools: +- out_f.write(''' +-pyuic4.files = %s +-pyuic4.path = %s +-INSTALLS += pyuic4 +-''' % (pyuic_wrapper, target_config.pyqt_bin_dir)) +- + # Install the QScintilla .api file. + if target_config.qsci_api: + out_f.write(''' +@@ -1444,18 +1434,6 @@ + + out_f.close() + +- # Make the pyuic4 wrapper executable on platforms that support it. This +- # means that qmake will try and strip it after installing it resulting in +- # an (ignored) error. However if we did it after running qmake then (on +- # Linux) the execute bits would be stripped on installation. +- if not target_config.no_tools and target_config.py_platform != 'win32': +- inform("Making the %s wrapper executable..." % pyuic_wrapper) +- +- sbuf = os.stat(pyuic_wrapper) +- mode = sbuf.st_mode +- mode |= (stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH) +- os.chmod(pyuic_wrapper, mode) +- + # Generate the top-level makefile. + inform("Generating the top-level Makefile...") + run_qmake(target_config, verbose, toplevel_pro) diff --git a/srcpkgs/python-PyQt4/template b/srcpkgs/python-PyQt4/template index 60dc1cd3c1..c8d2d945f1 100644 --- a/srcpkgs/python-PyQt4/template +++ b/srcpkgs/python-PyQt4/template @@ -1,59 +1,104 @@ # Template file for 'python-PyQt4' pkgname=python-PyQt4 -version=4.11.1 -revision=2 +version=4.11.2 +revision=1 wrksrc="PyQt-x11-gpl-${version}" -build_style= maintainer="Dominik Honnef " -hostmakedepends="python-sip python3.4-sip python-devel python3.4-devel qt-qmake qt-devel>=4" +hostmakedepends=" + python-devel python3.4-devel python-sip-devel python3.4-sip-devel qt-qmake qt-devel" makedepends="${hostmakedepends}" -depends="python python-sip" -license="GPL" +depends="python-sip" +replaces="python-PyQt4<4.11.1_2" +license="GPL-2, GPL-3" homepage="http://www.riverbankcomputing.co.uk/software/pyqt/intro" -short_desc="Python2 bindings for the Qt toolkit" -distfiles="http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-${version}/PyQt-x11-gpl-${version}.tar.gz" -checksum="df9d7358d70748efa5b84fa3fe9e182a80c39ac590157daaabcc2618df176da3" +short_desc="Python2 bindings for the Qt4 toolkit" +distfiles="${SOURCEFORGE_SITE}/pyqt/PyQt-x11-gpl-${version}.tar.gz" +checksum=05dfc4060d25f81e5d45fb020ad59d21af7dc4c01ace4d2b37f3b49493d03f6e _do_pyqt_build() { local v=$1 tools=${2:-yes} suffix=$3 tools_flag [[ "$tools" != "yes" ]] && tools_flag="--no-tools" - python${v} configure-ng.py \ - --confirm-license \ - --bindir="/usr/bin" \ - --sipdir="/usr/share/sip${v}" \ - --sip="/usr/bin/sip${v}" \ - --destdir="/usr/lib/python${v}/site-packages" \ - --assume-shared \ - $tools_flag \ - INCDIR="${XBPS_CROSS_BASE}/usr/include/python${v}${suffix}" \ - CC="${CC}" \ - CFLAGS="${CFLAGS}" \ - CXX="${CXX}" \ - CXXFLAGS="${CXXFLAGS}" \ - LINK="${CXX}" \ - LINK_SHLIB="${CXX}" \ - LFLAGS="${LDFLAGS}" \ - STRIP="" - make $makejobs - make INSTALL_ROOT=${DESTDIR} install + python${v} configure-ng.py \ + --confirm-license --assume-shared $tools_flag \ + CC="${CC}" CFLAGS="${CFLAGS}" CXX="${CXX}" CXXFLAGS="${CXXFLAGS}" \ + LINK="${CXX}" LINK_SHLIB="${CXX}" LFLAGS="${LDFLAGS}" STRIP="" \ + INCDIR="${XBPS_CROSS_BASE}/usr/include/python${v}${suffix}" + make ${makejobs} +} + +post_extract() { + cp -a ${wrksrc} /tmp/python3.4-PyQt4-build + mv /tmp/python3.4-PyQt4-build ${wrksrc} +} + +pre_build() { + rm -rf pyuic/uic/port_v3 + cd ${wrksrc}/python3.4-PyQt4-build + rm -rf pyuic/uic/port_v2 } do_build() { + # build python-pyqt4 _do_pyqt_build 2.7 + + # build python3.4-pyqt4 + cd ${wrksrc}/python3.4-PyQt4-build _do_pyqt_build 3.4 no "m" } do_install() { - true + # install python-pyqt4 + make DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} install + + # install python3.4-pyqt4 + cd ${wrksrc}/python3.4-PyQt4-build + make DESTDIR=${DESTDIR} INSTALL_ROOT=${DESTDIR} install + + # install doc + vmkdir usr/share/doc/${pkgname} + vcopy "doc/html examples" usr/share/doc/${pkgname} +} + +post_install() { + # install pyuic4 wrapper + vbin ${FILESDIR}/pyuic4 +} + +python-PyQt4-devel-tools_package() { + replaces="python-PyQt4<4.11.1_2" + depends="${sourcepkg}>=${version}_${revision}" + short_desc+=" - development tools" + pkg_install() { + vmove usr/bin/pylupdate4 + vmove usr/bin/pyrcc4 + vmove usr/bin/pyuic4 + } +} + +python-PyQt4-devel_package() { + replaces="python-PyQt4<4.11.1_2" + depends="python-sip-devel ${sourcepkg}>=${version}_${revision}" + short_desc+=" - development files" + pkg_install() { + vmove usr/share/sip + } +} + +python-PyQt4-doc_package() { + noarch=yes + replaces="python-PyQt4<4.11.1_2" + short_desc+=" - documentation files" + pkg_install() { + vmove usr/share/doc + } } python3.4-PyQt4_package() { - depends="python3.4 python3.4-sip" + replaces="python3.4-PyQt4<4.11.1_2" + depends="python3.4-sip" short_desc="${short_desc/Python2/Python3.4}" pkg_install() { - mkdir -p ${PKGDESTDIR}/usr/{lib,share} - mv ${DESTDIR}/usr/lib/python3.4 ${PKGDESTDIR}/usr/lib/ - mv ${DESTDIR}/usr/share/sip3.4 ${PKGDESTDIR}/usr/share/ + vmove usr/lib/python3.4 } }