summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
Diffstat (limited to 'devel')
-rw-r--r--devel/py-qt4/DESCR13
-rw-r--r--devel/py-qt4/Makefile67
-rw-r--r--devel/py-qt4/PLIST.Darwin2
-rw-r--r--devel/py-qt4/PLIST.X113
-rw-r--r--devel/py-qt4/PLIST.common404
-rw-r--r--devel/py-qt4/PLIST.common_end23
-rw-r--r--devel/py-qt4/configure.py1840
-rw-r--r--devel/py-qt4/distinfo6
-rw-r--r--devel/py-qt4/patches/patch-aa19
9 files changed, 0 insertions, 2377 deletions
diff --git a/devel/py-qt4/DESCR b/devel/py-qt4/DESCR
deleted file mode 100644
index cf42f05a36b..00000000000
--- a/devel/py-qt4/DESCR
+++ /dev/null
@@ -1,13 +0,0 @@
-PyQt is a set of Python bindings for the Qt toolkit. PyQt brings
-together the Qt C++ cross-platform toolkit and the cross-platform
-interpreted language Python. PyQt contains 300 classes and over
-5,750 functions and methods.
-
-PyQt also includes the pyuic and pylupdate utilities which correspond
-to the Qt uic and lupdate utilities. pyuic converts the GUI designs
-created with Qt Designer to executable Python code. pylupdate
-scans Python code, extracts all strings that are candidates for
-internationalisation, and creates an XML file for use by Qt Linguist.
-
-The x11/py-qt3-modules and x11/py-qt3-qscintilla packages provide
-more Python modules for Qt.
diff --git a/devel/py-qt4/Makefile b/devel/py-qt4/Makefile
deleted file mode 100644
index 5c92ebe3b3f..00000000000
--- a/devel/py-qt4/Makefile
+++ /dev/null
@@ -1,67 +0,0 @@
-# $NetBSD: Makefile,v 1.1.1.1 2008/12/13 05:17:02 epg Exp $
-#
-
-PKGNAME= ${PYPKGPREFIX}-qt4-${PYQT_VERSION}
-PYQT_VERSION= 4.4.4
-CATEGORIES= x11 python
-MASTER_SITES= http://www.riverbankcomputing.com/static/Downloads/PyQt4/
-
-MAINTAINER= pkgsrc-users@NetBSD.org
-COMMENT= Python binding for Qt4
-HOMEPAGE= http://www.riverbankcomputing.com/software/pyqt/intro
-
-USE_LIBTOOL= yes
-USE_TOOLS+= gmake pkg-config
-USE_LANGUAGES= c c++
-
-PKG_DESTDIR_SUPPORT= user-destdir
-
-CONFIGURE_ARGS+= -b ${PREFIX}/bin
-CONFIGURE_ARGS+= -d ${PREFIX}/${PYSITELIB}
-CONFIGURE_ARGS+= -v ${PREFIX}/share/sip${PYVERSSUFFIX}
-CONFIGURE_ARGS+= -q ${QTDIR}/bin/qmake
-# XXX: should not be necessary, but framework thinks pkgsrc only has static
-# qt4 libraries
-#epg fixed? with patch-aa
-#CONFIGURE_ARGS+= -k
-CONFIGURE_ARGS+= --confirm-license
-
-PYTHON_VERSIONS_ACCEPTED= 25 24 23
-PY_PATCHPLIST= yes
-PLIST_SUBST+= PYVERSSUFFIX=${PYVERSSUFFIX:Q}
-
-#SUBST_CLASSES+= pyversfx
-#SUBST_STAGE.pyversfx= pre-configure
-#SUBST_FILES.pyversfx= pyuic4/pyuic.sbf pylupdate4/pylupdate.sbf
-#SUBST_SED.pyversfx= -e "s|@PYVERSSUFFIX@|${PYVERSSUFFIX}|g"
-
-.include "../../mk/bsd.prefs.mk"
-
-PLIST_SRC= ${PKGDIR}/PLIST.common
-.if ${OPSYS} == "Darwin"
-DISTNAME= PyQt-mac-gpl-${PYQT_VERSION}
-PLIST_SRC+= ${PKGDIR}/PLIST.Darwin
-.else
-DISTNAME= PyQt-x11-gpl-${PYQT_VERSION}
-PLIST_SRC+= ${PKGDIR}/PLIST.X11
-.endif
-PLIST_SRC+= ${PKGDIR}/PLIST.common_end
-
-CONFIGURE_ARGS+= --verbose
-do-configure:
- (cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \
- ${PYTHONBIN} configure.py ${CONFIGURE_ARGS})
-
-.include "../../lang/python/extension.mk"
-BUILDLINK_API_DEPENDS.py-sip+= ${PYPKGPREFIX}-sip>=4.7.9
-.include "../../x11/py-sip/buildlink3.mk"
-.include "../../sysutils/dbus/buildlink3.mk"
-.include "../../sysutils/py-dbus/buildlink3.mk"
-.include "../../x11/qt4-libs/buildlink3.mk"
-BUILDLINK_API_DEPENDS.qt4-tools+= qt4-tools>=4.4.0nb1
-.include "../../x11/qt4-tools/buildlink3.mk"
-# ${PYSITELIB}/qt.so depends on libqassistantclient.so
-# which is part of qt4-tools, so we need a runtime dependency
-# XXX split this pkg?
-BUILDLINK_DEPMETHOD.qt4-tools= full
-.include "../../mk/bsd.pkg.mk"
diff --git a/devel/py-qt4/PLIST.Darwin b/devel/py-qt4/PLIST.Darwin
deleted file mode 100644
index 98c58f3f3c1..00000000000
--- a/devel/py-qt4/PLIST.Darwin
+++ /dev/null
@@ -1,2 +0,0 @@
-@comment $NetBSD: PLIST.Darwin,v 1.1.1.1 2008/12/13 05:17:02 epg Exp $
-share/sip${PYVERSSUFFIX}/qt/qwindowdefs_mac.sip
diff --git a/devel/py-qt4/PLIST.X11 b/devel/py-qt4/PLIST.X11
deleted file mode 100644
index a2b1160250a..00000000000
--- a/devel/py-qt4/PLIST.X11
+++ /dev/null
@@ -1,3 +0,0 @@
-@comment $NetBSD: PLIST.X11,v 1.1.1.1 2008/12/13 05:17:02 epg Exp $
-share/sip${PYVERSSUFFIX}/QtGui/qx11embed_x11.sip
-share/sip${PYVERSSUFFIX}/QtGui/qx11info_x11.sip
diff --git a/devel/py-qt4/PLIST.common b/devel/py-qt4/PLIST.common
deleted file mode 100644
index 31977b2bdce..00000000000
--- a/devel/py-qt4/PLIST.common
+++ /dev/null
@@ -1,404 +0,0 @@
-@comment $NetBSD: PLIST.common,v 1.1.1.1 2008/12/13 05:17:02 epg Exp $
-bin/pylupdate4
-bin/pyrcc4
-bin/pyuic4
-${PYSITELIB}/PyQt4/Qt.so
-${PYSITELIB}/PyQt4/QtAssistant.so
-${PYSITELIB}/PyQt4/QtCore.so
-${PYSITELIB}/PyQt4/QtDesigner.so
-${PYSITELIB}/PyQt4/QtGui.so
-${PYSITELIB}/PyQt4/QtHelp.so
-${PYSITELIB}/PyQt4/QtNetwork.so
-${PYSITELIB}/PyQt4/QtOpenGL.so
-${PYSITELIB}/PyQt4/QtScript.so
-${PYSITELIB}/PyQt4/QtSql.so
-${PYSITELIB}/PyQt4/QtSvg.so
-${PYSITELIB}/PyQt4/QtTest.so
-${PYSITELIB}/PyQt4/QtWebKit.so
-${PYSITELIB}/PyQt4/QtXml.so
-${PYSITELIB}/PyQt4/__init__.py
-${PYSITELIB}/PyQt4/pyqtconfig.py
-${PYSITELIB}/PyQt4/uic/Compiler/__init__.py
-${PYSITELIB}/PyQt4/uic/Compiler/compiler.py
-${PYSITELIB}/PyQt4/uic/Compiler/indenter.py
-${PYSITELIB}/PyQt4/uic/Compiler/qobjectcreator.py
-${PYSITELIB}/PyQt4/uic/Compiler/qtproxies.py
-${PYSITELIB}/PyQt4/uic/Loader/__init__.py
-${PYSITELIB}/PyQt4/uic/Loader/loader.py
-${PYSITELIB}/PyQt4/uic/Loader/qobjectcreator.py
-${PYSITELIB}/PyQt4/uic/__init__.py
-${PYSITELIB}/PyQt4/uic/exceptions.py
-${PYSITELIB}/PyQt4/uic/icon_cache.py
-${PYSITELIB}/PyQt4/uic/objcreator.py
-${PYSITELIB}/PyQt4/uic/properties.py
-${PYSITELIB}/PyQt4/uic/pyuic.py
-${PYSITELIB}/PyQt4/uic/uiparser.py
-${PYSITELIB}/PyQt4/uic/widget-plugins/qaxcontainer.py
-${PYSITELIB}/PyQt4/uic/widget-plugins/qscintilla.py
-${PYSITELIB}/PyQt4/uic/widget-plugins/qtwebkit.py
-${PYSITELIB}/PyQt4/uic/widget-plugins/qwt.py
-${PYSITELIB}/dbus/mainloop/qt.so
-share/sip${PYVERSSUFFIX}/Qt/Qtmod.sip
-share/sip${PYVERSSUFFIX}/QtAssistant/QtAssistantmod.sip
-share/sip${PYVERSSUFFIX}/QtAssistant/qassistantclient.sip
-share/sip${PYVERSSUFFIX}/QtCore/QtCoremod.sip
-share/sip${PYVERSSUFFIX}/QtCore/qabstracteventdispatcher.sip
-share/sip${PYVERSSUFFIX}/QtCore/qabstractfileengine.sip
-share/sip${PYVERSSUFFIX}/QtCore/qabstractitemmodel.sip
-share/sip${PYVERSSUFFIX}/QtCore/qbasictimer.sip
-share/sip${PYVERSSUFFIX}/QtCore/qbitarray.sip
-share/sip${PYVERSSUFFIX}/QtCore/qbuffer.sip
-share/sip${PYVERSSUFFIX}/QtCore/qbytearray.sip
-share/sip${PYVERSSUFFIX}/QtCore/qbytearraymatcher.sip
-share/sip${PYVERSSUFFIX}/QtCore/qchar.sip
-share/sip${PYVERSSUFFIX}/QtCore/qcoreapplication.sip
-share/sip${PYVERSSUFFIX}/QtCore/qcoreevent.sip
-share/sip${PYVERSSUFFIX}/QtCore/qcryptographichash.sip
-share/sip${PYVERSSUFFIX}/QtCore/qdatastream.sip
-share/sip${PYVERSSUFFIX}/QtCore/qdatetime.sip
-share/sip${PYVERSSUFFIX}/QtCore/qdir.sip
-share/sip${PYVERSSUFFIX}/QtCore/qdiriterator.sip
-share/sip${PYVERSSUFFIX}/QtCore/qeventloop.sip
-share/sip${PYVERSSUFFIX}/QtCore/qfile.sip
-share/sip${PYVERSSUFFIX}/QtCore/qfileinfo.sip
-share/sip${PYVERSSUFFIX}/QtCore/qfilesystemwatcher.sip
-share/sip${PYVERSSUFFIX}/QtCore/qfsfileengine.sip
-share/sip${PYVERSSUFFIX}/QtCore/qglobal.sip
-share/sip${PYVERSSUFFIX}/QtCore/qhash.sip
-share/sip${PYVERSSUFFIX}/QtCore/qiodevice.sip
-share/sip${PYVERSSUFFIX}/QtCore/qlibrary.sip
-share/sip${PYVERSSUFFIX}/QtCore/qlibraryinfo.sip
-share/sip${PYVERSSUFFIX}/QtCore/qline.sip
-share/sip${PYVERSSUFFIX}/QtCore/qlist.sip
-share/sip${PYVERSSUFFIX}/QtCore/qlocale.sip
-share/sip${PYVERSSUFFIX}/QtCore/qmap.sip
-share/sip${PYVERSSUFFIX}/QtCore/qmetaobject.sip
-share/sip${PYVERSSUFFIX}/QtCore/qmetatype.sip
-share/sip${PYVERSSUFFIX}/QtCore/qmimedata.sip
-share/sip${PYVERSSUFFIX}/QtCore/qmutex.sip
-share/sip${PYVERSSUFFIX}/QtCore/qnamespace.sip
-share/sip${PYVERSSUFFIX}/QtCore/qnumeric.sip
-share/sip${PYVERSSUFFIX}/QtCore/qobject.sip
-share/sip${PYVERSSUFFIX}/QtCore/qobjectcleanuphandler.sip
-share/sip${PYVERSSUFFIX}/QtCore/qobjectdefs.sip
-share/sip${PYVERSSUFFIX}/QtCore/qpair.sip
-share/sip${PYVERSSUFFIX}/QtCore/qpluginloader.sip
-share/sip${PYVERSSUFFIX}/QtCore/qpoint.sip
-share/sip${PYVERSSUFFIX}/QtCore/qprocess.sip
-share/sip${PYVERSSUFFIX}/QtCore/qreadwritelock.sip
-share/sip${PYVERSSUFFIX}/QtCore/qrect.sip
-share/sip${PYVERSSUFFIX}/QtCore/qregexp.sip
-share/sip${PYVERSSUFFIX}/QtCore/qresource.sip
-share/sip${PYVERSSUFFIX}/QtCore/qrunnable.sip
-share/sip${PYVERSSUFFIX}/QtCore/qsemaphore.sip
-share/sip${PYVERSSUFFIX}/QtCore/qsettings.sip
-share/sip${PYVERSSUFFIX}/QtCore/qsharedmemory.sip
-share/sip${PYVERSSUFFIX}/QtCore/qsignalmapper.sip
-share/sip${PYVERSSUFFIX}/QtCore/qsize.sip
-share/sip${PYVERSSUFFIX}/QtCore/qsocketnotifier.sip
-share/sip${PYVERSSUFFIX}/QtCore/qstring.sip
-share/sip${PYVERSSUFFIX}/QtCore/qstringlist.sip
-share/sip${PYVERSSUFFIX}/QtCore/qstringmatcher.sip
-share/sip${PYVERSSUFFIX}/QtCore/qsystemsemaphore.sip
-share/sip${PYVERSSUFFIX}/QtCore/qtemporaryfile.sip
-share/sip${PYVERSSUFFIX}/QtCore/qtextboundaryfinder.sip
-share/sip${PYVERSSUFFIX}/QtCore/qtextcodec.sip
-share/sip${PYVERSSUFFIX}/QtCore/qtextstream.sip
-share/sip${PYVERSSUFFIX}/QtCore/qthread.sip
-share/sip${PYVERSSUFFIX}/QtCore/qthreadpool.sip
-share/sip${PYVERSSUFFIX}/QtCore/qtimeline.sip
-share/sip${PYVERSSUFFIX}/QtCore/qtimer.sip
-share/sip${PYVERSSUFFIX}/QtCore/qtranslator.sip
-share/sip${PYVERSSUFFIX}/QtCore/qurl.sip
-share/sip${PYVERSSUFFIX}/QtCore/quuid.sip
-share/sip${PYVERSSUFFIX}/QtCore/qvariant.sip
-share/sip${PYVERSSUFFIX}/QtCore/qvector.sip
-share/sip${PYVERSSUFFIX}/QtCore/qwaitcondition.sip
-share/sip${PYVERSSUFFIX}/QtCore/qxmlstream.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/QtDesignermod.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/abstractactioneditor.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/abstractformbuilder.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/abstractformeditor.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/abstractformwindow.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/abstractformwindowcursor.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/abstractformwindowmanager.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/abstractobjectinspector.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/abstractpropertyeditor.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/abstractwidgetbox.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/container.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/customwidget.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/default_extensionfactory.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/extension.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/formbuilder.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/membersheet.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/propertysheet.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/qextensionmanager.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/qpydesignercontainerextension.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/qpydesignercustomwidgetcollectionplugin.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/qpydesignercustomwidgetplugin.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/qpydesignermembersheetextension.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/qpydesignerpropertysheetextension.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/qpydesignertaskmenuextension.sip
-share/sip${PYVERSSUFFIX}/QtDesigner/taskmenu.sip
-share/sip${PYVERSSUFFIX}/QtGui/QtGuimod.sip
-share/sip${PYVERSSUFFIX}/QtGui/qabstractbutton.sip
-share/sip${PYVERSSUFFIX}/QtGui/qabstractitemdelegate.sip
-share/sip${PYVERSSUFFIX}/QtGui/qabstractitemview.sip
-share/sip${PYVERSSUFFIX}/QtGui/qabstractprintdialog.sip
-share/sip${PYVERSSUFFIX}/QtGui/qabstractproxymodel.sip
-share/sip${PYVERSSUFFIX}/QtGui/qabstractscrollarea.sip
-share/sip${PYVERSSUFFIX}/QtGui/qabstractslider.sip
-share/sip${PYVERSSUFFIX}/QtGui/qabstractspinbox.sip
-share/sip${PYVERSSUFFIX}/QtGui/qabstracttextdocumentlayout.sip
-share/sip${PYVERSSUFFIX}/QtGui/qaction.sip
-share/sip${PYVERSSUFFIX}/QtGui/qactiongroup.sip
-share/sip${PYVERSSUFFIX}/QtGui/qapplication.sip
-share/sip${PYVERSSUFFIX}/QtGui/qbitmap.sip
-share/sip${PYVERSSUFFIX}/QtGui/qboxlayout.sip
-share/sip${PYVERSSUFFIX}/QtGui/qbrush.sip
-share/sip${PYVERSSUFFIX}/QtGui/qbuttongroup.sip
-share/sip${PYVERSSUFFIX}/QtGui/qcalendarwidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qcheckbox.sip
-share/sip${PYVERSSUFFIX}/QtGui/qclipboard.sip
-share/sip${PYVERSSUFFIX}/QtGui/qcolor.sip
-share/sip${PYVERSSUFFIX}/QtGui/qcolordialog.sip
-share/sip${PYVERSSUFFIX}/QtGui/qcolumnview.sip
-share/sip${PYVERSSUFFIX}/QtGui/qcombobox.sip
-share/sip${PYVERSSUFFIX}/QtGui/qcommandlinkbutton.sip
-share/sip${PYVERSSUFFIX}/QtGui/qcompleter.sip
-share/sip${PYVERSSUFFIX}/QtGui/qcursor.sip
-share/sip${PYVERSSUFFIX}/QtGui/qdatawidgetmapper.sip
-share/sip${PYVERSSUFFIX}/QtGui/qdatetimeedit.sip
-share/sip${PYVERSSUFFIX}/QtGui/qdesktopservices.sip
-share/sip${PYVERSSUFFIX}/QtGui/qdesktopwidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qdial.sip
-share/sip${PYVERSSUFFIX}/QtGui/qdialog.sip
-share/sip${PYVERSSUFFIX}/QtGui/qdialogbuttonbox.sip
-share/sip${PYVERSSUFFIX}/QtGui/qdirmodel.sip
-share/sip${PYVERSSUFFIX}/QtGui/qdockwidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qdrag.sip
-share/sip${PYVERSSUFFIX}/QtGui/qdrawutil.sip
-share/sip${PYVERSSUFFIX}/QtGui/qerrormessage.sip
-share/sip${PYVERSSUFFIX}/QtGui/qevent.sip
-share/sip${PYVERSSUFFIX}/QtGui/qfiledialog.sip
-share/sip${PYVERSSUFFIX}/QtGui/qfileiconprovider.sip
-share/sip${PYVERSSUFFIX}/QtGui/qfilesystemmodel.sip
-share/sip${PYVERSSUFFIX}/QtGui/qfocusframe.sip
-share/sip${PYVERSSUFFIX}/QtGui/qfont.sip
-share/sip${PYVERSSUFFIX}/QtGui/qfontcombobox.sip
-share/sip${PYVERSSUFFIX}/QtGui/qfontdatabase.sip
-share/sip${PYVERSSUFFIX}/QtGui/qfontdialog.sip
-share/sip${PYVERSSUFFIX}/QtGui/qfontinfo.sip
-share/sip${PYVERSSUFFIX}/QtGui/qfontmetrics.sip
-share/sip${PYVERSSUFFIX}/QtGui/qformlayout.sip
-share/sip${PYVERSSUFFIX}/QtGui/qframe.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgraphicsgridlayout.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgraphicsitem.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgraphicsitemanimation.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgraphicslayout.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgraphicslayoutitem.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgraphicslinearlayout.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgraphicsproxywidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgraphicsscene.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgraphicssceneevent.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgraphicsview.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgraphicswidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgridlayout.sip
-share/sip${PYVERSSUFFIX}/QtGui/qgroupbox.sip
-share/sip${PYVERSSUFFIX}/QtGui/qheaderview.sip
-share/sip${PYVERSSUFFIX}/QtGui/qicon.sip
-share/sip${PYVERSSUFFIX}/QtGui/qiconengine.sip
-share/sip${PYVERSSUFFIX}/QtGui/qimage.sip
-share/sip${PYVERSSUFFIX}/QtGui/qimageiohandler.sip
-share/sip${PYVERSSUFFIX}/QtGui/qimagereader.sip
-share/sip${PYVERSSUFFIX}/QtGui/qimagewriter.sip
-share/sip${PYVERSSUFFIX}/QtGui/qinputcontext.sip
-share/sip${PYVERSSUFFIX}/QtGui/qinputdialog.sip
-share/sip${PYVERSSUFFIX}/QtGui/qitemdelegate.sip
-share/sip${PYVERSSUFFIX}/QtGui/qitemeditorfactory.sip
-share/sip${PYVERSSUFFIX}/QtGui/qitemselectionmodel.sip
-share/sip${PYVERSSUFFIX}/QtGui/qkeysequence.sip
-share/sip${PYVERSSUFFIX}/QtGui/qlabel.sip
-share/sip${PYVERSSUFFIX}/QtGui/qlayout.sip
-share/sip${PYVERSSUFFIX}/QtGui/qlayoutitem.sip
-share/sip${PYVERSSUFFIX}/QtGui/qlcdnumber.sip
-share/sip${PYVERSSUFFIX}/QtGui/qlineedit.sip
-share/sip${PYVERSSUFFIX}/QtGui/qlistview.sip
-share/sip${PYVERSSUFFIX}/QtGui/qlistwidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qmainwindow.sip
-share/sip${PYVERSSUFFIX}/QtGui/qmatrix.sip
-share/sip${PYVERSSUFFIX}/QtGui/qmdiarea.sip
-share/sip${PYVERSSUFFIX}/QtGui/qmdisubwindow.sip
-share/sip${PYVERSSUFFIX}/QtGui/qmenu.sip
-share/sip${PYVERSSUFFIX}/QtGui/qmenubar.sip
-share/sip${PYVERSSUFFIX}/QtGui/qmessagebox.sip
-share/sip${PYVERSSUFFIX}/QtGui/qmime.sip
-share/sip${PYVERSSUFFIX}/QtGui/qmovie.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpagesetupdialog.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpaintdevice.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpaintengine.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpainter.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpainterpath.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpalette.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpen.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpicture.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpixmap.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpixmapcache.sip
-share/sip${PYVERSSUFFIX}/QtGui/qplaintextedit.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpolygon.sip
-share/sip${PYVERSSUFFIX}/QtGui/qprintdialog.sip
-share/sip${PYVERSSUFFIX}/QtGui/qprintengine.sip
-share/sip${PYVERSSUFFIX}/QtGui/qprinter.sip
-share/sip${PYVERSSUFFIX}/QtGui/qprinterinfo.sip
-share/sip${PYVERSSUFFIX}/QtGui/qprintpreviewdialog.sip
-share/sip${PYVERSSUFFIX}/QtGui/qprintpreviewwidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qprogressbar.sip
-share/sip${PYVERSSUFFIX}/QtGui/qprogressdialog.sip
-share/sip${PYVERSSUFFIX}/QtGui/qproxymodel.sip
-share/sip${PYVERSSUFFIX}/QtGui/qpushbutton.sip
-share/sip${PYVERSSUFFIX}/QtGui/qradiobutton.sip
-share/sip${PYVERSSUFFIX}/QtGui/qregion.sip
-share/sip${PYVERSSUFFIX}/QtGui/qrgb.sip
-share/sip${PYVERSSUFFIX}/QtGui/qrubberband.sip
-share/sip${PYVERSSUFFIX}/QtGui/qscrollarea.sip
-share/sip${PYVERSSUFFIX}/QtGui/qscrollbar.sip
-share/sip${PYVERSSUFFIX}/QtGui/qsessionmanager.sip
-share/sip${PYVERSSUFFIX}/QtGui/qshortcut.sip
-share/sip${PYVERSSUFFIX}/QtGui/qsizegrip.sip
-share/sip${PYVERSSUFFIX}/QtGui/qsizepolicy.sip
-share/sip${PYVERSSUFFIX}/QtGui/qslider.sip
-share/sip${PYVERSSUFFIX}/QtGui/qsortfilterproxymodel.sip
-share/sip${PYVERSSUFFIX}/QtGui/qsound.sip
-share/sip${PYVERSSUFFIX}/QtGui/qspinbox.sip
-share/sip${PYVERSSUFFIX}/QtGui/qsplashscreen.sip
-share/sip${PYVERSSUFFIX}/QtGui/qsplitter.sip
-share/sip${PYVERSSUFFIX}/QtGui/qstackedlayout.sip
-share/sip${PYVERSSUFFIX}/QtGui/qstackedwidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qstandarditemmodel.sip
-share/sip${PYVERSSUFFIX}/QtGui/qstatusbar.sip
-share/sip${PYVERSSUFFIX}/QtGui/qstringlistmodel.sip
-share/sip${PYVERSSUFFIX}/QtGui/qstyle.sip
-share/sip${PYVERSSUFFIX}/QtGui/qstyleditemdelegate.sip
-share/sip${PYVERSSUFFIX}/QtGui/qstylefactory.sip
-share/sip${PYVERSSUFFIX}/QtGui/qstyleoption.sip
-share/sip${PYVERSSUFFIX}/QtGui/qstylepainter.sip
-share/sip${PYVERSSUFFIX}/QtGui/qsyntaxhighlighter.sip
-share/sip${PYVERSSUFFIX}/QtGui/qsystemtrayicon.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtabbar.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtableview.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtablewidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtabwidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtextbrowser.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtextcursor.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtextdocument.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtextdocumentfragment.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtextedit.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtextformat.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtextlayout.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtextlist.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtextobject.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtextoption.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtexttable.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtoolbar.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtoolbox.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtoolbutton.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtooltip.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtransform.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtreeview.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtreewidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qtreewidgetitemiterator.sip
-share/sip${PYVERSSUFFIX}/QtGui/qundogroup.sip
-share/sip${PYVERSSUFFIX}/QtGui/qundostack.sip
-share/sip${PYVERSSUFFIX}/QtGui/qundoview.sip
-share/sip${PYVERSSUFFIX}/QtGui/qvalidator.sip
-share/sip${PYVERSSUFFIX}/QtGui/qwhatsthis.sip
-share/sip${PYVERSSUFFIX}/QtGui/qwidget.sip
-share/sip${PYVERSSUFFIX}/QtGui/qwidgetaction.sip
-share/sip${PYVERSSUFFIX}/QtGui/qwindowdefs.sip
-share/sip${PYVERSSUFFIX}/QtGui/qwizard.sip
-share/sip${PYVERSSUFFIX}/QtGui/qworkspace.sip
-share/sip${PYVERSSUFFIX}/QtHelp/QtHelpmod.sip
-share/sip${PYVERSSUFFIX}/QtHelp/qhelpcontentwidget.sip
-share/sip${PYVERSSUFFIX}/QtHelp/qhelpengine.sip
-share/sip${PYVERSSUFFIX}/QtHelp/qhelpenginecore.sip
-share/sip${PYVERSSUFFIX}/QtHelp/qhelpindexwidget.sip
-share/sip${PYVERSSUFFIX}/QtHelp/qhelpsearchengine.sip
-share/sip${PYVERSSUFFIX}/QtHelp/qhelpsearchquerywidget.sip
-share/sip${PYVERSSUFFIX}/QtHelp/qhelpsearchresultwidget.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/QtNetworkmod.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qabstractsocket.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qauthenticator.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qftp.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qhostaddress.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qhostinfo.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qhttp.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qlocalserver.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qlocalsocket.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qnetworkaccessmanager.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qnetworkcookie.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qnetworkinterface.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qnetworkproxy.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qnetworkreply.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qnetworkrequest.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qssl.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qsslcertificate.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qsslcipher.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qsslconfiguration.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qsslerror.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qsslkey.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qsslsocket.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qtcpserver.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qtcpsocket.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qudpsocket.sip
-share/sip${PYVERSSUFFIX}/QtNetwork/qurlinfo.sip
-share/sip${PYVERSSUFFIX}/QtOpenGL/QtOpenGLmod.sip
-share/sip${PYVERSSUFFIX}/QtOpenGL/qgl.sip
-share/sip${PYVERSSUFFIX}/QtOpenGL/qglcolormap.sip
-share/sip${PYVERSSUFFIX}/QtOpenGL/qglframebufferobject.sip
-share/sip${PYVERSSUFFIX}/QtOpenGL/qglpixelbuffer.sip
-share/sip${PYVERSSUFFIX}/QtScript/QtScriptmod.sip
-share/sip${PYVERSSUFFIX}/QtScript/qscriptclass.sip
-share/sip${PYVERSSUFFIX}/QtScript/qscriptclasspropertyiterator.sip
-share/sip${PYVERSSUFFIX}/QtScript/qscriptcontext.sip
-share/sip${PYVERSSUFFIX}/QtScript/qscriptcontextinfo.sip
-share/sip${PYVERSSUFFIX}/QtScript/qscriptengine.sip
-share/sip${PYVERSSUFFIX}/QtScript/qscriptengineagent.sip
-share/sip${PYVERSSUFFIX}/QtScript/qscriptstring.sip
-share/sip${PYVERSSUFFIX}/QtScript/qscriptvalue.sip
-share/sip${PYVERSSUFFIX}/QtScript/qscriptvalueiterator.sip
-share/sip${PYVERSSUFFIX}/QtSql/QtSqlmod.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsql.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqldatabase.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqldriver.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqlerror.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqlfield.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqlindex.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqlquery.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqlquerymodel.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqlrecord.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqlrelationaldelegate.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqlrelationaltablemodel.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqlresult.sip
-share/sip${PYVERSSUFFIX}/QtSql/qsqltablemodel.sip
-share/sip${PYVERSSUFFIX}/QtSvg/QtSvgmod.sip
-share/sip${PYVERSSUFFIX}/QtSvg/qgraphicssvgitem.sip
-share/sip${PYVERSSUFFIX}/QtSvg/qsvggenerator.sip
-share/sip${PYVERSSUFFIX}/QtSvg/qsvgrenderer.sip
-share/sip${PYVERSSUFFIX}/QtSvg/qsvgwidget.sip
-share/sip${PYVERSSUFFIX}/QtTest/QtTestmod.sip
-share/sip${PYVERSSUFFIX}/QtTest/qtestcase.sip
-share/sip${PYVERSSUFFIX}/QtTest/qtestkeyboard.sip
-share/sip${PYVERSSUFFIX}/QtTest/qtestmouse.sip
-share/sip${PYVERSSUFFIX}/QtTest/qtestsystem.sip
-share/sip${PYVERSSUFFIX}/QtWebKit/QtWebKitmod.sip
-share/sip${PYVERSSUFFIX}/QtWebKit/qwebframe.sip
-share/sip${PYVERSSUFFIX}/QtWebKit/qwebhistory.sip
-share/sip${PYVERSSUFFIX}/QtWebKit/qwebhistoryinterface.sip
-share/sip${PYVERSSUFFIX}/QtWebKit/qwebpage.sip
-share/sip${PYVERSSUFFIX}/QtWebKit/qwebpluginfactory.sip
-share/sip${PYVERSSUFFIX}/QtWebKit/qwebsettings.sip
-share/sip${PYVERSSUFFIX}/QtWebKit/qwebview.sip
-share/sip${PYVERSSUFFIX}/QtXml/QtXmlmod.sip
-share/sip${PYVERSSUFFIX}/QtXml/qdom.sip
-share/sip${PYVERSSUFFIX}/QtXml/qxml.sip
-share/sip${PYVERSSUFFIX}/QtXml/qxmlstream.sip
diff --git a/devel/py-qt4/PLIST.common_end b/devel/py-qt4/PLIST.common_end
deleted file mode 100644
index ef5112854bf..00000000000
--- a/devel/py-qt4/PLIST.common_end
+++ /dev/null
@@ -1,23 +0,0 @@
-@comment $NetBSD: PLIST.common_end,v 1.1.1.1 2008/12/13 05:17:02 epg Exp $
-@dirrm share/sip${PYVERSSUFFIX}/QtXml
-@dirrm share/sip${PYVERSSUFFIX}/QtWebKit
-@dirrm share/sip${PYVERSSUFFIX}/QtTest
-@dirrm share/sip${PYVERSSUFFIX}/QtSvg
-@dirrm share/sip${PYVERSSUFFIX}/QtSql
-@dirrm share/sip${PYVERSSUFFIX}/QtScript
-@dirrm share/sip${PYVERSSUFFIX}/QtOpenGL
-@dirrm share/sip${PYVERSSUFFIX}/QtNetwork
-@dirrm share/sip${PYVERSSUFFIX}/QtHelp
-@dirrm share/sip${PYVERSSUFFIX}/QtGui
-@dirrm share/sip${PYVERSSUFFIX}/QtDesigner
-@dirrm share/sip${PYVERSSUFFIX}/QtCore
-@dirrm share/sip${PYVERSSUFFIX}/QtAssistant
-@dirrm share/sip${PYVERSSUFFIX}/Qt
-@dirrm share/sip${PYVERSSUFFIX}
-@comment in py-dbus: @dirrm ${PYSITELIB}/dbus/mainloop
-@comment in py-dbus: @dirrm ${PYSITELIB}/dbus
-@dirrm ${PYSITELIB}/PyQt4/uic/widget-plugins
-@dirrm ${PYSITELIB}/PyQt4/uic/Loader
-@dirrm ${PYSITELIB}/PyQt4/uic/Compiler
-@dirrm ${PYSITELIB}/PyQt4/uic
-@dirrm ${PYSITELIB}/PyQt4
diff --git a/devel/py-qt4/configure.py b/devel/py-qt4/configure.py
deleted file mode 100644
index fc6b7d898d2..00000000000
--- a/devel/py-qt4/configure.py
+++ /dev/null
@@ -1,1840 +0,0 @@
-# This script generates the PyQt configuration and generates the Makefiles.
-#
-# Copyright (c) 2008 Riverbank Computing Limited <info@riverbankcomputing.com>
-#
-# This file is part of PyQt.
-#
-# This file may be used under the terms of the GNU General Public
-# License versions 2.0 or 3.0 as published by the Free Software
-# Foundation and appearing in the files LICENSE.GPL2 and LICENSE.GPL3
-# included in the packaging of this file. Alternatively you may (at
-# your option) use any later version of the GNU General Public
-# License if such license has been publicly approved by Riverbank
-# Computing Limited (or its successors, if any) and the KDE Free Qt
-# Foundation. In addition, as a special exception, Riverbank gives you
-# certain additional rights. These rights are described in the Riverbank
-# GPL Exception version 1.1, which can be found in the file
-# GPL_EXCEPTION.txt in this package.
-#
-# Please review the following information to ensure GNU General
-# Public Licensing requirements will be met:
-# http://trolltech.com/products/qt/licenses/licensing/opensource/. If
-# you are unsure which license is appropriate for your use, please
-# review the following information:
-# http://trolltech.com/products/qt/licenses/licensing/licensingoverview
-# or contact the sales department at sales@riverbankcomputing.com.
-#
-# This file is provided "AS IS" with NO WARRANTY OF ANY KIND,
-# INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE. Trolltech reserves all rights not expressly
-# granted herein.
-#
-# This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
-# WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-
-
-import sys
-import os
-import string
-import glob
-import optparse
-import shutil
-
-import sipconfig
-
-
-# Initialise the globals.
-pyqt_version = 0x040404
-pyqt_version_str = "4.4.4"
-
-sip_min_version = 0x040708
-
-qt_version = 0
-qt_edition = ""
-qt_dir = None
-qt_incdir = None
-qt_libdir = None
-qt_bindir = None
-qt_datadir = None
-qt_pluginsdir = None
-qt_xfeatures = None
-qt_shared = ""
-qt_framework = 0
-
-qt_sip_flags = []
-
-pyqt_modules = []
-pyqt_modroot = None
-
-# Get the SIP configuration.
-sipcfg = sipconfig.Configuration()
-
-pydbusmoddir = None
-dbusincdirs = []
-dbuslibdirs = []
-dbuslibs = []
-
-
-# Under Windows qmake and the Qt DLLs must be into the system PATH otherwise
-# the dynamic linker won't be able to resolve the symbols. On other systems we
-# assume we can just run qmake by using its full pathname.
-if sys.platform == "win32":
- MSG_CHECK_QMAKE = "Make sure you have a working Qt v4 qmake on your PATH."
-else:
- MSG_CHECK_QMAKE = "Make sure you have a working Qt v4 qmake on your PATH or use the -q argument to explicitly specify a working Qt v4 qmake."
-
-
-def find_default_qmake():
- """Find a default qmake, ie. the first on the path.
- """
- try:
- path = os.environ["PATH"]
- except KeyError:
- path = ""
-
- if sys.platform == "win32":
- base_qmake = "qmake.exe"
- else:
- base_qmake = "qmake"
-
- for d in path.split(os.pathsep):
- qmake = os.path.join(d, base_qmake)
-
- if os.access(qmake, os.X_OK):
- return qmake
-
- return ""
-
-
-def create_optparser():
- """Create the parser for the command line.
- """
- qmake = find_default_qmake()
-
- def store_abspath(option, opt_str, value, parser):
- setattr(parser.values, option.dest, os.path.abspath(value))
-
- def store_abspath_dir(option, opt_str, value, parser):
- if not os.path.isdir(value):
- raise optparse.OptionValueError("'%s' is not a directory" % value)
- setattr(parser.values, option.dest, os.path.abspath(value))
-
- def store_abspath_file(option, opt_str, value, parser):
- if not os.path.isfile(value):
- raise optparse.OptionValueError("'%s' is not a file" % value)
- setattr(parser.values, option.dest, os.path.abspath(value))
-
- p = optparse.OptionParser(usage="python %prog [opts] [macro=value] "
- "[macro+=value]", version=pyqt_version_str)
-
- # Note: we don't use %default to be compatible with Python 2.3.
- p.add_option("-k", "--static", action="store_true", default=False,
- dest="static", help="build modules as static libraries")
- p.add_option("-r", "--trace", action="store_true", default=False,
- dest="tracing", help="build modules with tracing enabled")
- p.add_option("-u", "--debug", action="store_true", default=False,
- help="build modules with debugging symbols")
- p.add_option("-w", "--verbose", action="count", default=0, dest="verbose",
- help="verbose output during configuration")
-
- p.add_option("-c", "--concatenate", action="store_true", default=False,
- dest="concat", help="concatenate each module's C++ source files")
- p.add_option("-j", "--concatenate-split", type="int", default=1,
- metavar="N", dest="split",
- help="split the concatenated C++ source files into N pieces "
- "[default: 1]")
- p.add_option("-g", "--consolidate", action="store_true", default=False,
- dest="bigqt", help="create a single module which links against "
- "all the Qt libraries")
-
- # These are internal options used to build the mega Windows GPL package.
- p.add_option("--mwg-odbc", action="store_true", default=False,
- dest="mwg_odbc", help=optparse.SUPPRESS_HELP)
- p.add_option("--mwg-openssl", action="callback", default=None,
- dest="mwg_ssl_dir", metavar="DIR", callback=store_abspath_dir,
- type="string", help=optparse.SUPPRESS_HELP)
- p.add_option("--mwg-qsci", action="callback", default=None,
- dest="mwg_qsci_dir", metavar="DIR", callback=store_abspath_dir,
- type="string", help=optparse.SUPPRESS_HELP)
- p.add_option("--mwg-qwt", action="callback", default=None,
- dest="mwg_qwt_dir", metavar="DIR", callback=store_abspath_dir,
- type="string", help=optparse.SUPPRESS_HELP)
-
- # Configuration.
- g = optparse.OptionGroup(p, title="Configuration")
- g.add_option("--confirm-license", action="store_true", default=False,
- dest="license_confirmed", help="confirm acceptance of the license")
- g.add_option("-e", "--enable", action="append", default=[],
- metavar="MODULE", dest="enabled", help="enable checks for the "
- "specified MODULE [default: checks for all modules will be "
- "enabled]")
- g.add_option("--no-designer-plugin", action="store_false", default=True,
- dest="designer_plugin", help="disable the building of the "
- "Python plugin for Qt Designer [default: enabled]")
- g.add_option("-t", "--plugin", action="append", default=[],
- metavar="PLUGIN", dest="staticplugins", help="add PLUGIN to the "
- "list be linked (if Qt is built as static libraries)")
-
- if sys.platform != "win32":
- g.add_option("-q", "--qmake", action="callback", metavar="FILE",
- default=qmake, dest="qmake", callback=store_abspath_file,
- type="string",
- help="the pathname of qmake [default: %s]" % (qmake or "none"))
-
- g.add_option("-s", "--dbus", action="callback", metavar="DIR",
- dest="pydbusincdir", callback=store_abspath_dir, type="string",
- help="the directory containing the dbus/dbus-python.h header file "
- "[default: supplied by pkg-config]")
- p.add_option_group(g)
-
- # Installation.
- g = optparse.OptionGroup(p, title="Installation")
- g.add_option("-b", "--bindir", action="callback",
- default=sipcfg.default_bin_dir, type="string", metavar="DIR",
- dest="pyqtbindir", callback=store_abspath, help="where pyuic4, "
- "pyrcc4 and pylupdate4 will be installed [default: %s]" %
- sipcfg.default_bin_dir)
- g.add_option("-d", "--destdir", action="callback",
- default=sipcfg.default_mod_dir, type="string", metavar="DIR",
- dest="pyqtmoddir", callback=store_abspath, help="where the PyQt4 "
- "Python package will be installed [default: %s]" %
- sipcfg.default_mod_dir)
- g.add_option("-p", "--plugin-destdir", action="callback", type="string",
- metavar="DIR", dest="plugindir", callback=store_abspath,
- help="where any plugins will be installed [default: "
- "QTDIR/plugins]")
- g.add_option("--no-sip-files", action="store_false", default=True,
- dest="install_sipfiles", help="disable the installation of the "
- ".sip files [default: enabled]")
- g.add_option("-v", "--sipdir", action="callback",
- default=os.path.join(sipcfg.default_sip_dir, "PyQt4"),
- metavar="DIR", dest="pyqtsipdir", callback=store_abspath,
- type="string", help="where the PyQt4 .sip files will be installed "
- "[default: %s]" % sipcfg.default_sip_dir)
- p.add_option_group(g)
-
- # Vendor ID.
- g = optparse.OptionGroup(p, title="VendorID support")
- g.add_option("-i", "--vendorid", action="store_true", default=False,
- dest="vendorcheck", help="enable checking of signed interpreters "
- "using the VendorID package [default: disabled]")
- g.add_option("-l", "--vendorid-incdir", action="callback",
- default=sipcfg.py_inc_dir, type="string", metavar="DIR",
- dest="vendincdir", callback=store_abspath_dir, help="the "
- "directory containing the VendorID header file [default: %s]" %
- sipcfg.py_inc_dir)
- g.add_option("-m", "--vendorid-libdir", action="callback",
- default=sipcfg.py_lib_dir, type="string", metavar="DIR",
- dest="vendlibdir", callback=store_abspath_dir, help="the "
- "directory containing the VendorID library [default: %s]" %
- sipcfg.py_lib_dir)
- p.add_option_group(g)
-
- # QScintilla.
- g = optparse.OptionGroup(p, title="QScintilla support")
- g.add_option("-a", "--qsci-api", action="store_true", default=None,
- dest="api", help="always install the PyQt API file for QScintilla "
- "[default: install only if QScintilla installed]")
- g.add_option("--no-qsci-api", action="store_false", default=None,
- dest="api", help="do not install the PyQt API file for QScintilla "
- "[default: install only if QScintilla installed]")
- g.add_option("-n", "--qsci-api-destdir", action="callback", dest="qscidir",
- metavar="DIR", callback=store_abspath, type="string", help="where "
- "the PyQt API file for QScintilla will be installed [default: "
- "QTDIR/qsci]")
- p.add_option_group(g)
-
- return p
-
-
-class ConfigurePyQt4:
- """This class defines the methods to configure PyQt4.
- """
- def __init__(self, generator):
- self.generator = generator
-
- def qt_version_tags(self):
- """Get the versions tags for the configuration.
-
- Returns a dictionary of versions and corresponding tags.
- """
- return {
- 0x040101: None,
- 0x040102: "Qt_4_1_1",
- 0x040103: "Qt_4_1_2",
- 0x040200: "Qt_4_1_3",
- 0x040202: "Qt_4_2_0",
- 0x040300: "Qt_4_2_2",
- 0x040303: "Qt_4_3_0",
- 0x040400: "Qt_4_3_3",
- 0x040401: "Qt_4_4_0",
- 0x050000: "Qt_4_4_1"
- }
-
- def check_modules(self):
- if opts.mwg_odbc:
- sql_libs = ["odbc32"]
- else:
- sql_libs = None
-
- if opts.mwg_ssl_dir:
- ass_lib_dirs = [os.path.join(opts.mwg_ssl_dir, "lib")]
- ass_libs = ["ssleay32", "libeay32"]
- else:
- ass_lib_dirs = None
- ass_libs = None
-
- # Note that the order in which we check is important for the
- # consolidated module - a module's dependencies must be checked first.
- pyqt_modules.append("QtCore")
-
- check_module("QtGui", "qwidget.h", "new QWidget()")
- check_module("QtHelp", "qhelpengine.h", "new QHelpEngine(\"foo\")")
- check_module("QtNetwork", "qhostaddress.h", "new QHostAddress()")
- check_module("QtOpenGL", "qgl.h", "new QGLWidget()")
- check_module("QtScript", "qscriptengine.h", "new QScriptEngine()")
- check_module("QtSql", "qsqldatabase.h", "new QSqlDatabase()",
- extra_libs=sql_libs)
- check_module("QtSvg", "qsvgwidget.h", "new QSvgWidget()")
- check_module("QtTest", "QtTest", "QTest::qSleep(0)")
- check_module("QtWebKit", "qwebpage.h", "new QWebPage()")
- check_module("QtXml", "qdom.h", "new QDomDocument()")
- check_module("QtXmlPatterns", "qxmlname.h", "new QXmlName()")
- check_module("phonon", "phonon", "new Phonon::VideoWidget()")
- check_module("QtAssistant", "qassistantclient.h",
- "new QAssistantClient(\"foo\")", extra_lib_dirs=ass_lib_dirs,
- extra_libs=ass_libs)
-
- if not qt_shared:
- sipconfig.inform("QtDesigner module disabled with static Qt libraries.")
- elif sipcfg.universal:
- sipconfig.inform("QtDesigner module disabled with universal binaries.")
- else:
- check_module("QtDesigner", "QExtensionFactory",
- "new QExtensionFactory()")
-
- check_module("QAxContainer", "qaxobject.h", "new QAxObject()",
- extra_libs=["QAxContainer"])
-
- if os.path.isdir("dbus"):
- check_dbus()
-
- def code(self):
- cons_xtra_incdirs = []
- cons_xtra_libdirs = []
- cons_xtra_libs = []
-
- sp_libs, sp_libdirs = self._static_plugins("QtCore")
- sp_incdirs = []
-
- if opts.vendorcheck:
- sp_incdirs.append(opts.vendincdir)
- sp_libdirs.append(opts.vendlibdir)
- sp_libs.append("vendorid")
-
- if opts.bigqt:
- cons_xtra_incdirs.extend(sp_incdirs)
- cons_xtra_libdirs.extend(sp_libdirs)
- cons_xtra_libs.extend(sp_libs)
-
- generate_code("QtCore")
- else:
- generate_code("QtCore", extra_include_dirs=sp_incdirs,
- extra_lib_dirs=sp_libdirs, extra_libs=sp_libs)
-
- if "QtGui" in pyqt_modules:
- sp_libs, sp_libdirs = self._static_plugins("QtGui")
-
- if opts.bigqt:
- cons_xtra_libdirs.extend(sp_libdirs)
- cons_xtra_libs.extend(sp_libs)
-
- generate_code("QtGui")
- else:
- generate_code("QtGui", extra_lib_dirs=sp_libdirs,
- extra_libs=sp_libs)
-
- if "QtHelp" in pyqt_modules:
- generate_code("QtHelp")
-
- if "QtNetwork" in pyqt_modules:
- generate_code("QtNetwork")
-
- if "QtOpenGL" in pyqt_modules:
- generate_code("QtOpenGL")
-
- if "QtScript" in pyqt_modules:
- generate_code("QtScript")
-
- if "QtSql" in pyqt_modules:
- sp_libs, sp_libdirs = self._static_plugins("QtSql")
-
- if opts.bigqt:
- cons_xtra_libdirs.extend(sp_libdirs)
- cons_xtra_libs.extend(sp_libs)
-
- generate_code("QtSql")
- else:
- generate_code("QtSql", extra_lib_dirs=sp_libdirs,
- extra_libs=sp_libs)
-
- if "QtSvg" in pyqt_modules:
- generate_code("QtSvg")
-
- if "QtTest" in pyqt_modules:
- generate_code("QtTest")
-
- if "QtWebKit" in pyqt_modules:
- generate_code("QtWebKit")
-
- if "QtXml" in pyqt_modules:
- generate_code("QtXml")
-
- if "QtXmlPatterns" in pyqt_modules:
- generate_code("QtXmlPatterns")
-
- if "phonon" in pyqt_modules:
- generate_code("phonon")
-
- if "QtAssistant" in pyqt_modules:
- generate_code("QtAssistant")
-
- if "QtDesigner" in pyqt_modules:
- qpy_dir = os.path.abspath(os.path.join("qpy", "QtDesigner"))
-
- if sys.platform == "win32":
- if opts.debug:
- qpy_lib_dir = os.path.join(qpy_dir, "debug")
- else:
- qpy_lib_dir = os.path.join(qpy_dir, "release")
- else:
- qpy_lib_dir = qpy_dir
-
- if opts.bigqt:
- cons_xtra_incdirs.append(qpy_dir)
- cons_xtra_libdirs.append(qpy_lib_dir)
- cons_xtra_libs.append("qpydesigner")
-
- generate_code("QtDesigner")
- else:
- generate_code("QtDesigner", extra_include_dirs=[qpy_dir],
- extra_lib_dirs=[qpy_lib_dir],
- extra_libs=["qpydesigner"])
-
- if "QAxContainer" in pyqt_modules:
- generate_code("QAxContainer")
-
- # Generate the composite module.
- qtmod_sipdir = os.path.join("sip", "Qt")
- mk_clean_dir(qtmod_sipdir)
-
- qtmod_sipfile = os.path.join(qtmod_sipdir, "Qtmod.sip")
- f = open(qtmod_sipfile, "w")
-
- f.write("""%CompositeModule PyQt4.Qt
-
-""")
-
- for m in pyqt_modules:
- f.write("%%Include %s/%smod.sip\n" % (m, m))
-
- f.close()
-
- generate_code("Qt")
-
- # Generate the consolidated module if required.
- if opts.bigqt:
- xtra_sip_flags = []
-
- _qtmod_sipdir = os.path.join("sip", "_qt")
- mk_clean_dir(_qtmod_sipdir)
-
- _qtmod_sipfile = os.path.join(_qtmod_sipdir, "_qtmod.sip")
- f = open(_qtmod_sipfile, "w")
-
- f.write("""%ConsolidatedModule PyQt4._qt
-
-""")
-
- for m in pyqt_modules:
- f.write("%%Include %s/%smod.sip\n" % (m, m))
-
- if opts.mwg_qsci_dir:
- f.write("%Include Qsci/Qscimod.sip\n")
- cons_xtra_libs.append("qscintilla2")
-
- # Copy in the QScintilla .sip files and fix the main one.
- src_dir = os.path.join(opts.mwg_qsci_dir, "Python", "sip")
- dst_dir = os.path.join("sip", "Qsci")
-
- try:
- shutil.rmtree(dst_dir);
- except:
- pass
-
- shutil.copytree(src_dir, dst_dir)
- os.rename(os.path.join(dst_dir, "qscimod4.sip"), os.path.join(dst_dir, "Qscimod.sip"))
-
- generate_code("Qsci")
-
- if opts.mwg_qwt_dir:
- f.write("%Include Qwt5/Qwt5mod.sip\n")
- cons_xtra_incdirs.append(os.path.join(opts.mwg_qwt_dir, "support"))
- cons_xtra_libs.append("qwt")
-
- # Copy in the PyQwt .sip files and fix the main one.
- src_dir = os.path.join(opts.mwg_qwt_dir, "sip", "qwt5qt4")
- dst_dir = os.path.join("sip", "Qwt5")
-
- try:
- shutil.rmtree(dst_dir);
- except:
- pass
-
- shutil.copytree(src_dir, dst_dir)
- os.rename(os.path.join(dst_dir, "QwtModule.sip"), os.path.join(dst_dir, "Qwt5mod.sip"))
-
- xtra_sip_flags = ["-t", "Qwt_5_0_1",
- "-x", "CXX_DYNAMIC_CAST",
- "-x", "HAS_QWT4",
- "-x", "HAS_NUMARRAY",
- "-x", "HAS_NUMERIC",
- "-x", "HAS_NUMPY"]
-
- generate_code("Qwt5", extra_sip_flags=xtra_sip_flags)
-
- f.close()
-
- if opts.mwg_odbc:
- cons_xtra_libs.append("odbc32")
-
- if opts.mwg_ssl_dir:
- cons_xtra_libdirs.append(os.path.join(opts.mwg_ssl_dir, "lib"))
- cons_xtra_libs.extend(["ssleay32", "libeay32"])
-
- generate_code("_qt", extra_include_dirs=cons_xtra_incdirs,
- extra_lib_dirs=cons_xtra_libdirs,
- extra_libs=cons_xtra_libs, extra_sip_flags=xtra_sip_flags)
-
- # Tell the user about any plugins not found.
- if opts.staticplugins:
- sipconfig.inform("Unable to find the following static plugins: %s" % ", ".join(opts.staticplugins))
-
- # Generate the QScintilla API file.
- sipconfig.inform("Creating QScintilla API file...")
- f = open("PyQt4.api", "w")
-
- for m in pyqt_modules:
- api = open(m + ".api")
-
- for l in api:
- f.write("PyQt4." + l)
-
- api.close()
- os.remove(m + ".api")
-
- f.close()
-
- def _static_plugins(self, mname):
- """Return a tuple of the libraries (in platform neutral format) and the
- directories they are contained in for all the requested static plugins
- for the given module. Generate the additional .sip file needed to
- ensure the plugins get linked.
-
- mname is the name of the module.
- """
- plugin_dirs = {
- "QtCore": ("codecs", ),
- # Note that we put iconengines after imageformats so that qsvg is
- # found in the latter rather than the former. The name clash is
- # probably a Qt bug.
- "QtGui": ("inputmethods", "imageformats", "iconengines"),
- "QtSql": ("sqldrivers", )
- }
-
- libs = []
- libdirs = []
-
- for plug in opts.staticplugins:
- # Convert the plugin name to a platform specific filename.
- if self.generator in ("MSVC", "MSVC.NET", "BMAKE"):
- pfname = plug + ".lib"
- else:
- pfname = "lib" + plug + ".a"
-
- for pdir in plugin_dirs[mname]:
- ppath = os.path.join(qt_pluginsdir, pdir)
-
- # See if the plugin exists.
- if os.access(os.path.join(ppath, pfname), os.F_OK):
- sipconfig.inform("Adding the %s static plugin to the %s module..." % (plug, mname))
-
- libs.append(plug)
-
- if ppath not in libdirs:
- libdirs.append(ppath)
-
- break
-
- # Remove those plugins we have handled.
- opts.staticplugins = [p for p in opts.staticplugins if p not in libs]
-
- # If we have any plugins for this module then generate a .sip file that
- # will include the code needed to ensure the plugin gets linked.
- if libs:
- sp_sipfile = os.path.join("sip", mname, "staticplugins.sip")
-
- f = open(sp_sipfile, "w")
-
- f.write("""%ModuleCode
-
-#include <QtPlugin>
-
-""")
-
- for l in libs:
- f.write("Q_IMPORT_PLUGIN(%s)\n" % l)
-
- f.write("""
-%End
-""")
-
- f.close()
-
- return libs, libdirs
-
- def module_installs(self):
- return ["__init__.py", "pyqtconfig.py"]
-
- def qpylibs(self):
- # See which QPy libraries to build.
- qpylibs = {}
-
- if "QtDesigner" in pyqt_modules:
- qpylibs["QtDesigner"] = "qpydesigner.pro"
-
- # Run qmake to generate the Makefiles.
- qmake_args = fix_qmake_args()
- cwd = os.getcwd()
-
- for qpy, pro in qpylibs.iteritems():
- sipconfig.inform("Creating QPy library for %s Makefile..." % qpy)
-
- os.chdir(os.path.join("qpy", qpy))
-
- if sipcfg.universal:
- upro = "u_" + pro
-
- f = open(upro, 'w+')
-
- f.write(
-"""# Setup the normal .pro file for universal binaries.
-
-CONFIG += ppc i386
-QMAKE_MAC_SDK = %s
-
-include(%s)
-""" % (sipcfg.universal, pro))
-
- f.close()
-
- pro = upro
-
- run_command("%s %s %s" % (opts.qmake, qmake_args, pro))
- os.chdir(cwd)
-
- sipconfig.inform("Creating QPy libraries Makefile...")
-
- sipconfig.ParentMakefile(
- configuration=sipcfg,
- dir="qpy",
- subdirs=qpylibs.keys()
- ).generate()
-
- return ["qpy"]
-
- def tools(self):
- tool = []
-
- if pydbusmoddir:
- sipconfig.inform("Creating dbus support module Makefile...")
-
- makefile = sipconfig.ModuleMakefile(
- configuration=sipcfg,
- build_file="dbus.sbf",
- dir="dbus",
- install_dir=pydbusmoddir,
- qt=["QtCore"],
- debug=opts.debug,
- universal=sipcfg.universal
- )
-
- add_makefile_extras(makefile, dbusincdirs, dbuslibdirs, dbuslibs)
-
- makefile.generate()
- tool.append("dbus")
-
- # Only include ElementTree for older versions of Python.
- if sipcfg.py_version < 0x020500:
- sipconfig.inform("Creating elementtree Makefile...")
-
- makefile = sipconfig.PythonModuleMakefile(
- configuration=sipcfg,
- dstdir=os.path.join(pyqt_modroot, "elementtree"),
- dir="elementtree"
- )
-
- makefile.generate()
- tool.append("elementtree")
-
- # Create the pyuic4 wrapper. Use the GUI version on MacOS (so that
- # previews work properly and normal console use will work anyway), but
- # not on Windows (so that normal console use will work).
- sipconfig.inform("Creating pyuic4 wrapper...")
-
- uicdir=os.path.join(pyqt_modroot, "uic")
- wrapper = sipconfig.create_wrapper(os.path.join(uicdir, "pyuic.py"), os.path.join("pyuic", "pyuic4"), (sys.platform == "darwin"))
-
- sipconfig.inform("Creating pyuic4 Makefile...")
-
- makefile = sipconfig.PythonModuleMakefile(
- configuration=sipcfg,
- dstdir=uicdir,
- srcdir="uic",
- dir="pyuic",
- installs=[[os.path.basename(wrapper), opts.pyqtbindir]]
- )
-
- makefile.generate()
- tool.append("pyuic")
-
- if "QtXml" in pyqt_modules:
- sipconfig.inform("Creating pylupdate4 Makefile...")
-
- makefile = sipconfig.ProgramMakefile(
- configuration=sipcfg,
- build_file="pylupdate.sbf",
- dir="pylupdate",
- install_dir=opts.pyqtbindir,
- console=1,
- qt=["QtCore", "QtGui", "QtXml"],
- debug=opts.debug,
- warnings=1,
- universal=sipcfg.universal
- )
-
- makefile.generate()
- tool.append("pylupdate")
-
- sipconfig.inform("Creating pyrcc4 Makefile...")
-
- makefile = sipconfig.ProgramMakefile(
- configuration=sipcfg,
- build_file="pyrcc.sbf",
- dir="pyrcc",
- install_dir=opts.pyqtbindir,
- console=1,
- qt=["QtCore", "QtXml"],
- debug=opts.debug,
- warnings=1,
- universal=sipcfg.universal
- )
-
- makefile.generate()
- tool.append("pyrcc")
- else:
- sipconfig.inform("pylupdate4 and pyrcc4 will not be built because the Qt XML module is missing.")
-
- if opts.designer_plugin and "QtDesigner" in pyqt_modules:
- py_major = sipcfg.py_version >> 16
- py_minor = (sipcfg.py_version >> 8) & 0x0ff
-
- if sys.platform == "win32":
- lib_dir_flag = quote("-L%s" % sipcfg.py_lib_dir)
- link = "%s -lpython%d%d" % (lib_dir_flag, py_major, py_minor)
- pysh_lib = "python%d%d.dll" % (py_major, py_minor)
- else:
- # Use distutils to get the additional configuration.
- from distutils.sysconfig import get_config_vars
- ducfg = get_config_vars()
-
- if sys.platform == "darwin":
- # We need to work out how to specify the right framework
- # version.
- link = "-framework Python"
- elif ("--enable-shared" in ducfg.get("CONFIG_ARGS", "") and
- glob.glob("%s/lib/libpython%d.%d*" % (ducfg["exec_prefix"], py_major, py_minor))):
- lib_dir_flag = quote("-L%s/lib" % ducfg["exec_prefix"])
- link = "%s -lpython%d.%d" % (lib_dir_flag, py_major, py_minor)
- else:
- sipconfig.inform("Qt Designer plugin disabled because Python library is static")
- opts.designer_plugin = False
-
- pysh_lib = ducfg["LDLIBRARY"]
-
- if opts.designer_plugin:
- sipconfig.inform("Creating Qt Designer plugin Makefile...")
-
- # Run qmake to generate the Makefile.
- qmake_args = fix_qmake_args()
- cwd = os.getcwd()
- os.chdir("designer")
-
- # Create the qmake project file.
- fin = open("python.pro-in")
- prj = fin.read()
- fin.close()
-
- prj = prj.replace("@PYINCDIR@", quote(sipcfg.py_inc_dir))
- prj = prj.replace("@PYINCDIR@", " ".join((quote(sipcfg.py_conf_inc_dir), quote(sipcfg.py_inc_dir))))
- prj = prj.replace("@PYLINK@", link)
- prj = prj.replace("@PYSHLIB@", pysh_lib)
- prj = prj.replace("@QTPLUGINDIR@", quote(opts.plugindir + "/designer"))
-
- fout = open("python.pro", "w+")
-
- if sipcfg.universal:
- fout.write("CONFIG += ppc i386\n")
- fout.write("QMAKE_MAC_SDK = %s\n" % sipcfg.universal)
-
- fout.write(prj)
- fout.close()
-
- run_command("%s %s" % (opts.qmake, qmake_args))
- os.chdir(cwd)
-
- tool.append("designer")
-
- return tool
-
-
-def quote(path):
- """Return a path with quotes added if it contains spaces."""
- if " " in path:
- path = '"%s"' % path
-
- return path
-
-
-def inform_user():
- """Tell the user the option values that are going to be used.
- """
- if qt_edition:
- edstr = qt_edition + " edition "
- else:
- edstr = ""
-
- if qt_shared:
- lib_type = "shared"
- else:
- lib_type = "static"
-
- sipconfig.inform("Qt v%s %sis being used." % (sipconfig.version_to_string(qt_version), edstr))
-
- if sys.platform == "darwin" and qt_framework:
- sipconfig.inform("Qt is built as a framework.")
-
- sipconfig.inform("SIP %s is being used." % sipcfg.sip_version_str)
- sipconfig.inform("The Qt header files are in %s." % qt_incdir)
- sipconfig.inform("The %s Qt libraries are in %s." % (lib_type, qt_libdir))
- sipconfig.inform("The Qt binaries are in %s." % qt_bindir)
- sipconfig.inform("The Qt mkspecs directory is in %s." % qt_datadir)
- sipconfig.inform("These PyQt modules will be built: %s." % string.join(pyqt_modules))
- sipconfig.inform("The PyQt Python package will be installed in %s." % opts.pyqtmoddir)
-
- if opts.designer_plugin:
- sipconfig.inform("The Designer plugin will be installed in %s." % os.path.join(opts.plugindir, "designer"))
-
- if opts.api:
- sipconfig.inform("The QScintilla API file will be installed in %s." % os.path.join(opts.qscidir, "api", "python"))
-
- if pydbusmoddir:
- sipconfig.inform("The dbus support module will be installed in %s." % pydbusmoddir)
-
- sipconfig.inform("The PyQt .sip files will be installed in %s." % opts.pyqtsipdir)
-
- sipconfig.inform("pyuic4, pyrcc4 and pylupdate4 will be installed in %s." % opts.pyqtbindir)
-
- if opts.vendorcheck:
- sipconfig.inform("PyQt will only be usable with signed interpreters.")
-
-
-def create_config(module, template, macros):
- """Create the PyQt configuration module so that it can be imported by build
- scripts.
-
- module is the module file name.
- template is the template file name.
- macros is the dictionary of platform specific build macros.
- """
- sipconfig.inform("Creating %s..." % module)
-
- content = {
- "pyqt_config_args": sys.argv[1:],
- "pyqt_version": pyqt_version,
- "pyqt_version_str": pyqt_version_str,
- "pyqt_bin_dir": opts.pyqtbindir,
- "pyqt_mod_dir": pyqt_modroot,
- "pyqt_sip_dir": opts.pyqtsipdir,
- "pyqt_modules": pyqt_modules,
- "pyqt_sip_flags": qt_sip_flags,
- "qt_version": qt_version,
- "qt_edition": qt_edition,
- "qt_winconfig": qt_shared,
- "qt_framework": qt_framework,
- "qt_threaded": 1,
- "qt_dir": qt_dir,
- "qt_data_dir": qt_datadir,
- "qt_inc_dir": qt_incdir,
- "qt_lib_dir": qt_libdir
- }
-
- sipconfig.create_config_module(module, template, content, macros)
-
-
-def run_command(cmd):
- """Run a command and display the output if verbose mode is enabled.
-
- cmd is the command to run.
- """
- if opts.verbose:
- sys.stdout.write(cmd + "\n")
-
- fout = get_command_stdout(cmd, and_stderr=True)
-
- # Read stdout and stderr until there is no more output.
- lout = fout.readline()
- while lout:
- if opts.verbose:
- sys.stdout.write(lout)
-
- lout = fout.readline()
-
- fout.close()
-
- try:
- os.wait()
- except:
- pass
-
-
-def remove_file(fname):
- """Remove a file which may or may not exist.
-
- fname is the name of the file.
- """
- try:
- os.remove(fname)
- except OSError:
- pass
-
-
-def compile_qt_program(name, mname, extra_include_dirs=None, extra_lib_dirs=None, extra_libs=None):
- """Compile a simple Qt application.
-
- name is the name of the single source file.
- mname is the name of the Qt module.
- extra_include_dirs is an optional list of extra include directories.
- extra_lib_dirs is an optional list of extra library directories.
- extra_libs is an optional list of extra libraries.
-
- Returns the name of the executable suitable for running or None if it
- wasn't created.
- """
- opengl = (mname == "QtOpenGL")
-
- qt = [mname]
- if mname == "QtWebKit":
- qt.append("QtCore")
-
- makefile = sipconfig.ProgramMakefile(sipcfg, console=1, qt=qt, warnings=0, opengl=opengl, debug=opts.debug)
-
- add_makefile_extras(makefile, extra_include_dirs, extra_lib_dirs, extra_libs)
-
- exe, build = makefile.build_command(name)
-
- # Make sure the executable file doesn't exist.
- remove_file(exe)
- run_command(build)
-
- if not os.access(exe, os.X_OK):
- return None
-
- if sys.platform != "win32":
- exe = "./" + exe
-
- return exe
-
-
-def add_makefile_extras(makefile, extra_include_dirs, extra_lib_dirs, extra_libs):
- """Add any extra include or library directories or libraries to a makefile.
-
- makefile is the makefile.
- extra_include_dirs is the list of extra include directories.
- extra_lib_dirs is the list of extra library directories.
- extra_libs is the list of extra libraries.
- """
- if extra_include_dirs:
- makefile.extra_include_dirs.extend(extra_include_dirs)
-
- if extra_lib_dirs:
- makefile.extra_lib_dirs.extend(extra_lib_dirs)
-
- if extra_libs:
- makefile.extra_libs.extend(extra_libs)
-
-
-def check_vendorid():
- """See if the VendorID library and include file can be found.
- """
- if opts.vendorcheck:
- if os.access(os.path.join(opts.vendincdir, "vendorid.h"), os.F_OK):
- if glob.glob(os.path.join(opts.vendlibdir, "*vendorid*")):
- sipconfig.inform("The VendorID package was found.")
- else:
- opts.vendorcheck = 0
- sipconfig.inform("The VendorID library could not be found in "
- "%s and so signed interpreter checking will "
- "be disabled. If the VendorID library is "
- "installed then use the -m argument to "
- "explicitly specify the correct "
- "directory." % opts.vendlibdir)
- else:
- opts.vendorcheck = 0
- sipconfig.inform("vendorid.h could not be found in %s and so "
- "signed interpreter checking will be disabled. "
- "If the VendorID package is installed then use "
- "the -l argument to explicitly specify the "
- "correct directory." % opts.vendincdir)
-
-
-def get_command_stdout(cmd, and_stderr=False):
- """Return stdout (and optionally stderr) from the given command.
- """
- try:
- import subprocess
- except ImportError:
- if and_stderr:
- _, sout = os.popen4(cmd)
- else:
- _, sout, _ = os.popen3(cmd)
-
- return sout
-
- if and_stderr:
- stderr = subprocess.STDOUT
- else:
- stderr = subprocess.PIPE
-
- p = subprocess.Popen(cmd, shell=True, stdin=subprocess.PIPE,
- stdout=subprocess.PIPE, stderr=stderr)
-
- return p.stdout
-
-
-def check_dbus():
- """See if the DBus support module should be built.
- """
- sipconfig.inform("Checking to see if the dbus support module should be built...")
-
- sout = get_command_stdout("pkg-config --cflags-only-I --libs dbus-1")
- iflags = sout.read().strip()
-
- if not iflags:
- sipconfig.inform("DBus v1 does not seem to be installed.")
- return
-
- for f in iflags.split():
- if f.startswith("-I"):
- dbusincdirs.append(f[2:])
- elif f.startswith("-L"):
- dbuslibdirs.append(f[2:])
- elif f.startswith("-l"):
- dbuslibs.append(f[2:])
-
- try:
- import dbus.mainloop
- except:
- sipconfig.inform("The Python dbus module doesn't seem to be installed.")
- return
-
- global pydbusmoddir
- pydbusmoddir = dbus.mainloop.__path__[0]
-
- # Try and find dbus-python.h. We don't use pkg-config because it is broken
- # for dbus-python (at least for versions up to and including v0.81.0).
- # Instead we look where DBus itself is installed - which in most cases will
- # be where dbus-python is also installed.
- if opts.pydbusincdir:
- dlist = [opts.pydbusincdir]
- else:
- dlist = dbusincdirs
-
- for d in dlist:
- if os.access(os.path.join(d, "dbus", "dbus-python.h"), os.F_OK):
- if d not in dbusincdirs:
- dbusincdirs.append(d)
-
- break
- else:
- sipconfig.inform("dbus/dbus-python.h could not be found and so the "
- "DBus support module will be disabled. If "
- "dbus-python v0.80 or later is installed then use "
- "the -s argument to explicitly specify the directory "
- "containing dbus/dbus-python.h.")
- pydbusmoddir = None
-
-
-def check_module(mname, incfile, test, extra_include_dirs=None, extra_lib_dirs=None, extra_libs=None):
- """See if a module can be built and, if so, add it to the global list of
- modules.
-
- mname is the name of the module.
- incfile is the name of the include file needed for the test.
- test is a C++ statement being used for the test.
- extra_include_dirs is an optional list of extra include directories.
- extra_lib_dirs is an optional list of extra library directories.
- extra_libs is an optional list of extra libraries.
- """
- # Check that the module is enabled if we are not automatically enabling all
- # modules.
- if len(opts.enabled) > 0 and mname not in opts.enabled:
- return
-
- # Check the module's main .sip file exists.
- if os.access(os.path.join("sip", mname, mname + "mod.sip"), os.F_OK):
- sipconfig.inform("Checking to see if the %s module should be built..." % mname)
-
- if check_api(incfile, test, mname, extra_include_dirs=extra_include_dirs, extra_lib_dirs=extra_lib_dirs, extra_libs=extra_libs):
- pyqt_modules.append(mname)
-
-
-def check_api(incfile, test, mname, extra_include_dirs=None, extra_lib_dirs=None, extra_libs=None):
- """Return non-zero if a class is available.
-
- incfile is the name of the include file needed for the test.
- test is a C++ statement being used for the test.
- mname is the name of the module.
- extra_include_dirs is an optional list of extra include directories.
- extra_lib_dirs is an optional list of extra library directories.
- extra_libs is an optional list of extra libraries.
- """
- # We use a module specific name to avoid a potential problem on Windows
- # where the operating system doesn't delete previous tests quickly enough.
- cfgtest = "cfgtest_%s.cpp" % mname
-
- f = open(cfgtest, "w")
-
- f.write("""#include <%s>
-
-int main(int, char **)
-{
- %s;
-}
-""" % (incfile, test))
-
- f.close()
-
- return compile_qt_program(cfgtest, mname,
- extra_include_dirs=extra_include_dirs,
- extra_lib_dirs=extra_lib_dirs, extra_libs=extra_libs)
-
-
-def set_sip_flags(pyqt):
- """Set the SIP platform, version and feature flags.
-
- pyqt is the configuration instance.
- """
- # If we don't check for signed interpreters, we exclude the 'VendorID'
- # feature
- if not opts.vendorcheck:
- qt_sip_flags.append("-x")
- qt_sip_flags.append("VendorID")
-
- # Handle the platform tag.
- if sys.platform == "win32":
- plattag = "WS_WIN"
- elif sys.platform == "darwin":
- if "__USE_WS_X11__" in sipcfg.build_macros()["DEFINES"]:
- plattag = "WS_X11"
- else:
- plattag = "WS_MACX"
- else:
- plattag = "WS_X11"
-
- qt_sip_flags.append("-t")
- qt_sip_flags.append(plattag)
-
- # Handle the Qt version tag.
- verstag = sipconfig.version_to_sip_tag(qt_version, pyqt.qt_version_tags(), "Qt")
-
- # Handle any feature flags.
- for xf in qt_xfeatures:
- qt_sip_flags.append("-x")
- qt_sip_flags.append(xf)
-
- if verstag:
- qt_sip_flags.append("-t")
- qt_sip_flags.append(verstag)
-
- # Handle the version specific Python features.
- if sipcfg.py_version < 0x020400:
- qt_sip_flags.append("-x")
- qt_sip_flags.append("Py_DateTime")
-
- # There is an issue creating QObjects while the GIL is held causing
- # deadlocks in multi-threaded applications. We don't fully understand this
- # yet so we make sure we avoid the problem by always releasing the GIL.
- qt_sip_flags.append("-g")
-
-
-def needed_qt_libs(mname, qt_libs):
- """Add any additional Qt libraries needed by a module to an existing list.
-
- mname is the name of the module.
- qt_libs is the current list of libraries.
- """
-
- # The dependencies between the different Qt libraries. The order within
- # each list is important. Note that this affects the include directories
- # as well as the libraries.
- LIB_DEPS = {
- "QtCore": [],
- "QtGui": ["QtCore"],
- "QtHelp": ["QtGui"],
- "QtNetwork": ["QtCore"],
- "QtOpenGL": ["QtGui"],
- "QtScript": ["QtCore"],
- "QtSql": ["QtGui"],
- "QtSvg": ["QtGui"],
- "QtTest": ["QtGui"],
- "QtWebKit": ["QtNetwork", "QtGui"],
- "QtXml": ["QtCore"],
- "QtXmlPatterns": ["QtCore"],
- "phonon": ["QtGui"],
- "QtAssistant": ["QtNetwork", "QtGui"],
- "QtDesigner": ["QtGui"],
- "QAxContainer": ["QtGui"]
- }
-
- # Handle the dependencies first.
- for d in LIB_DEPS[mname]:
- needed_qt_libs(d, qt_libs)
-
- if mname not in qt_libs:
- qt_libs.insert(0, mname)
-
-
-def mk_clean_dir(name):
- """Create a clean (ie. empty) directory.
-
- name is the name of the directory.
- """
- try:
- shutil.rmtree(name)
- except:
- pass
-
- try:
- os.mkdir(name)
- except:
- sipconfig.error("Unable to create the %s directory." % name)
-
-
-def generate_code(mname, extra_include_dirs=None, extra_lib_dirs=None, extra_libs=None, extra_sip_flags=None):
- """Generate the code for a module.
-
- mname is the name of the module to generate the code for.
- extra_include_dirs is an optional list of additional directories to add to
- the list of include directories.
- extra_lib_dirs is an optional list of additional directories to add to the
- list of library directories.
- extra_libs is an optional list of additional libraries to add to the list
- of libraries.
- extra_sip_flags is an optional list of additional flags to pass to SIP.
- """
- sipconfig.inform("Generating the C++ source for the %s module..." % mname)
-
- mk_clean_dir(mname)
-
- # Work out what Qt libraries need to be linked against and how SIP is
- # supposed to handle the consolidated module and its components.
- cons_args = []
-
- if opts.bigqt:
- if mname == "_qt":
- qt_libs = []
-
- for m in pyqt_modules:
- needed_qt_libs(m, qt_libs)
- else:
- if mname != "Qt":
- cons_args.append("-p")
- cons_args.append("PyQt4._qt")
-
- qt_libs = 0
- else:
- if mname == "Qt":
- qt_libs = 0
- else:
- qt_libs = []
- needed_qt_libs(mname, qt_libs)
-
- # Build the SIP command line.
- argv = ['"' + sipcfg.sip_bin + '"']
-
- argv.extend(qt_sip_flags)
- argv.extend(cons_args)
-
- if extra_sip_flags:
- argv.extend(extra_sip_flags)
-
- if opts.concat:
- argv.append("-j")
- argv.append(str(opts.split))
-
- if opts.tracing:
- argv.append("-r")
-
- if mname not in ("Qt", "_qt", "Qsci"):
- argv.append("-a")
- argv.append(mname + ".api")
-
- argv.append("-c")
- argv.append(mname)
-
- buildfile = os.path.join(mname, mname + ".sbf")
- argv.append("-b")
- argv.append(buildfile)
-
- argv.append("-I")
- argv.append("sip")
-
- # SIP assumes POSIX style path separators.
- argv.append(string.join(["sip", mname, mname + "mod.sip"], "/"))
-
- cmd = string.join(argv)
-
- if opts.verbose:
- sys.stdout.write(cmd + "\n")
-
- os.system(cmd)
-
- # Check the result.
- if not os.access(buildfile, os.F_OK):
- sipconfig.error("Unable to create the C++ code.")
-
- # Generate the Makefile.
- sipconfig.inform("Creating the Makefile for the %s module..." % mname)
-
- installs = []
-
- if opts.install_sipfiles:
- sipfiles = []
-
- for s in glob.glob("sip/" + mname + "/*.sip"):
- sipfiles.append(os.path.join("..", "sip", mname, os.path.basename(s)))
-
- installs.append([sipfiles, os.path.join(opts.pyqtsipdir, mname)])
-
- opengl = (mname == "QtOpenGL")
-
- makefile = sipconfig.SIPModuleMakefile(
- configuration=sipcfg,
- build_file=mname + ".sbf",
- dir=mname,
- install_dir=pyqt_modroot,
- installs=installs,
- qt=qt_libs,
- opengl=opengl,
- warnings=1,
- static=opts.static,
- debug=opts.debug,
- universal=sipcfg.universal
- )
-
- add_makefile_extras(makefile, extra_include_dirs, extra_lib_dirs, extra_libs)
-
- makefile.generate()
-
-
-def check_license():
- """Handle the validation of the PyQt license.
- """
- try:
- import license
- ltype = license.LicenseType
- lname = license.LicenseName
-
- try:
- lfile = license.LicenseFile
- except AttributeError:
- lfile = None
- except ImportError:
- ltype = None
-
- if ltype is None:
- ltype = "GPL"
- lname = "GNU General Public License"
- lfile = None
-
- sipconfig.inform("This is the %s version of PyQt %s (licensed under the %s) for Python %s on %s." % (ltype, pyqt_version_str, lname, string.split(sys.version)[0], sys.platform))
-
- # Common checks.
- if qt_edition and ltype != "internal":
- if qt_edition != "free" and ltype == "GPL":
- sipconfig.error("This version of PyQt and the %s edition of Qt have incompatible licenses." % qt_edition)
-
- # Confirm the license if not already done.
- if not opts.license_confirmed:
- print
-
- if ltype == "GPL":
- print "Type '2' to view the GPL v2 license."
- print "Type '3' to view the GPL v3 license."
- else:
- print "Type 'L' to view the license."
-
- print "Type 'yes' to accept the terms of the license."
- print "Type 'no' to decline the terms of the license."
- print
-
- while 1:
- try:
- resp = raw_input("Do you accept the terms of the license? ")
- except KeyboardInterrupt:
- raise SystemExit
- except:
- resp = ""
-
- resp = string.lower(string.strip(resp))
-
- if resp == "yes":
- break
-
- if resp == "no":
- sys.exit(0)
-
- if ltype == "GPL":
- if resp == "2":
- os.system("more LICENSE.GPL2")
- elif resp == "3":
- os.system("more LICENSE.GPL3")
- else:
- if resp == "l":
- os.system("more LICENSE")
-
- # If there should be a license file then check it is where it should be.
- if lfile:
- if os.access(os.path.join("sip", lfile), os.F_OK):
- sipconfig.inform("Found the license file %s." % lfile)
- else:
- sipconfig.error("Please copy the license file %s to the sip directory." % lfile)
-
-
-def get_build_macros(overrides):
- """Return the dictionary of platform specific build macros from the Qt
- installation. Return None if any of the overrides was invalid.
-
- overrides is a list of macros overrides from the user.
- """
- # Get the name of the qmake configuration file to take the macros from.
- if "QMAKESPEC" in os.environ.keys():
- fname = os.environ["QMAKESPEC"]
-
- if not os.path.dirname(fname):
- fname = os.path.join(qt_datadir, "mkspecs", fname)
- elif sys.platform == "darwin":
- # The Qt Mac binary installer defaults to xcode which we don't want.
- fname = os.path.join(qt_datadir, "mkspecs", "macx-g++")
- else:
- fname = os.path.join(qt_datadir, "mkspecs", "default")
-
- fname = os.path.join(fname, "qmake.conf")
-
- if not os.access(fname, os.F_OK):
- sipconfig.error("Unable to find the qmake configuration file %s. Use the QMAKESPEC environment variable to specify the correct platform." % fname)
-
- # Add the Qt specific macros to the default.
- names = sipcfg.build_macros().keys()
- names.append("INCDIR_QT")
- names.append("LIBDIR_QT")
- names.append("MOC")
-
- properties = {
- "QT_INSTALL_BINS": qt_bindir,
- "QT_INSTALL_HEADERS": qt_incdir,
- "QT_INSTALL_LIBS": qt_libdir
- }
-
- return sipconfig.parse_build_macros(fname, names, overrides, properties)
-
-
-def check_qt_installation(macros):
- """Check the Qt installation and get the version number and edition and
- return the configuration instance.
-
- macros is the dictionary of build macros.
- """
- # Check the Qt version number.
- if qt_version < 0x040100:
- sipconfig.error("PyQt v4 requires Qt v4.1.0 or later.")
-
- # Work out how Qt was built on MacOS.
- if sys.platform == "darwin":
- if os.access(os.path.join(qt_libdir, "QtCore.framework"), os.F_OK):
- global qt_framework
- qt_framework = 1
-
- # Get the Makefile generator.
- generator = macros["MAKEFILE_GENERATOR"]
-
- # We haven't yet factored out sipconfig's knowledge of how to build Qt
- # binaries and it is expecting to find these in the configuration when it
- # generates the Makefiles.
- sipcfg.qt_version = qt_version
- sipcfg.qt_edition = qt_edition
- sipcfg.qt_winconfig = qt_shared
- sipcfg.qt_framework = qt_framework
- sipcfg.qt_threaded = 1
- sipcfg.qt_dir = qt_dir
- sipcfg.qt_lib_dir = qt_libdir
-
- return ConfigurePyQt4(generator)
-
-
-def fix_qmake_args(args=""):
- """Make any platform specific adjustments to the arguments passed to qmake.
- """
- if sys.platform == "darwin":
- # The Qt binary installer has macx-xcode as the default.
- args = "-spec macx-g++ " + args
-
- return args
-
-
-def get_qt_configuration():
- """Set the qt_dir, qt_incdir, qt_libdir, qt_bindir, qt_datadir,
- qt_pluginsdir and qt_xfeatures globals for the Qt installation.
- """
- sipconfig.inform("Determining the layout of your Qt installation...")
-
- if sys.platform == "win32":
- # There is no -q flag so set the default explicitly.
- opts.qmake = find_default_qmake()
-
- if not opts.qmake:
- sipconfig.error(MSG_CHECK_QMAKE)
-
- # The file names we will use to get the directory information.
- app = "qtdirs"
- pro_file = app + ".pro"
- make_file = app + ".mk"
- make_target = ""
- cpp_file = app + ".cpp"
- out_file = app + ".out"
- qmake_args = fix_qmake_args("-o " + make_file)
-
- if sys.platform == "win32":
- exe_file = os.path.join("release", app + ".exe")
- make_target = " release"
- elif sys.platform == "darwin":
- exe_file = os.path.join(app + ".app", "Contents", "MacOS", app)
- else:
- exe_file = os.path.join(".", app)
-
- # Generate the qmake project file.
- f = open(pro_file, "w")
-
- f.write(
-"""QT = core
-# This is for certain broken Linux distros and is needed to make sure that
-# QT_SHARED is properly defined.
-CONFIG += link_prl
-TARGET = %s
-SOURCES = %s
-""" % (app, cpp_file))
-
- f.close()
-
- # Generate the source code.
- f = open(cpp_file, "w")
-
- f.write(
-"""#include <QFile>
-#include <QLibraryInfo>
-#include <QTextStream>
-
-int main(int, char **)
-{
- QFile outf("%s");
-
- if (!outf.open(QIODevice::WriteOnly|QIODevice::Truncate|QIODevice::Text))
- return 1;
-
- QTextStream out(&outf);
-
- out << QLibraryInfo::location(QLibraryInfo::PrefixPath) << '\\n';
- out << QLibraryInfo::location(QLibraryInfo::HeadersPath) << '\\n';
- out << QLibraryInfo::location(QLibraryInfo::LibrariesPath) << '\\n';
- out << QLibraryInfo::location(QLibraryInfo::BinariesPath) << '\\n';
- out << QLibraryInfo::location(QLibraryInfo::DataPath) << '\\n';
- out << QLibraryInfo::location(QLibraryInfo::PluginsPath) << '\\n';
-
- out << QT_VERSION << '\\n';
- out << QT_EDITION << '\\n';
-
- out << "shared\\n";
-
- // Determine which features should be disabled.
-
-#if defined(QT_NO_ACCESSIBILITY)
- out << "PyQt_Accessibility\\n";
-#endif
-
-#if defined(QT_NO_SESSIONMANAGER)
- out << "PyQt_SessionManager\\n";
-#endif
-
-#if defined(QT_NO_STATUSTIP)
- out << "PyQt_StatusTip\\n";
-#endif
-
-#if defined(QT_NO_TOOLTIP)
- out << "PyQt_ToolTip\\n";
-#endif
-
-#if defined(QT_NO_WHATSTHIS)
- out << "PyQt_WhatsThis\\n";
-#endif
-
-#if defined(QT_NO_OPENSSL)
- out << "PyQt_OpenSSL\\n";
-#endif
-
-#if defined(QT_NO_SIZEGRIP)
- out << "PyQt_SizeGrip\\n";
-#endif
-
-#if !defined(QT3_SUPPORT) || QT_VERSION >= 0x040200
- out << "PyQt_NoPrintRangeBug\\n";
-#endif
-
- if (sizeof (qreal) != sizeof (double))
- out << "PyQt_qreal_double\\n";
-
- return 0;
-}
-""" % out_file)
-
- f.close()
-
- # Create the makefile, first making sure it doesn't already exist.
- remove_file(make_file)
- run_command("%s %s %s" % (opts.qmake, qmake_args, pro_file))
-
- if not os.access(make_file, os.F_OK):
- sipconfig.error("%s failed to create a makefile. %s" % (opts.qmake, MSG_CHECK_QMAKE))
-
- # Try and work out the name of make.
- if sipcfg.platform.startswith("win32-msvc"):
- make = "nmake"
- elif sipcfg.platform == "win32-borland":
- make = "bmake"
- elif sipcfg.platform == "win32-g++":
- make = "mingw32-make"
- else:
- make = "make"
-
- oldfp = open(make_file)
- newfp = open(make_file + '.new', 'w')
- for line in oldfp:
- if line.startswith('LIBS'):
- newfp.write(line.rstrip() + ' -ldl\n')
- continue
- newfp.write(line)
- oldfp.close(); newfp.close()
- os.rename(make_file + '.new', make_file)
-
- # Create the executable, first making sure it doesn't exist.
- remove_file(exe_file)
- run_command("%s -f %s%s" % (make, make_file, make_target))
-
- if not os.access(exe_file, os.X_OK):
- sipconfig.error("Failed to determine the layout of your Qt installation. Try again using the --verbose flag to see more detail about the problem.")
-
- # Create the output file, first making sure it doesn't exist.
- remove_file(out_file)
- run_command(exe_file)
-
- if not os.access(out_file, os.F_OK):
- sipconfig.error("%s failed to create %s. Make sure your Qt v4 installation is correct." % (exe_file, out_file))
-
- #import pdb; pdb.set_trace()
- # Read the directories.
- f = open(out_file, "r")
- lines = f.read().strip().split("\n")
- f.close()
-
- global qt_dir, qt_incdir, qt_libdir, qt_bindir, qt_datadir, qt_pluginsdir
- global qt_version, qt_edition, qt_shared, qt_xfeatures
-
- qt_dir = lines[0]
- qt_incdir = lines[1]
- qt_libdir = lines[2]
- qt_bindir = lines[3]
- qt_datadir = lines[4]
- qt_pluginsdir = lines[5]
- qt_version = lines[6]
- qt_edition = lines[7]
- qt_shared = lines[8]
- qt_xfeatures = lines[9:]
-
- try:
- qt_version = int(qt_version)
- except ValueError:
- sipconfig.error("QT_VERSION should be a number but \"%s\" was found." % qt_version)
-
- try:
- qt_edition = int(qt_edition)
- except ValueError:
- sipconfig.error("QT_EDITION should be a number but \"%s\" was found." % qt_edition)
-
- # Now convert the edition to a descriptive string. The order of testing is
- # important.
- if qt_edition & 0x200:
- # It has ActiveQt.
- qt_edition = "Desktop"
- elif qt_edition & 0x008:
- # It has OpenGL.
- qt_edition = "free"
- elif qt_edition & 0x002:
- # It has GUI.
- qt_edition = "Desktop Light"
- else:
- qt_edition = "Console"
-
- if qt_shared:
- if opts.staticplugins:
- sipconfig.inform("Static plugins are disabled because Qt has been built as shared libraries.")
- opts.staticplugins = []
- else:
- if opts.static or opts.bigqt:
- pass
- else:
- sipconfig.error("Qt has been built as static libraries so either the -g or -k argument should be used.")
-
-
-def main():
- """Create the configuration module module.
- """
- # Check SIP is new enough.
- if sipcfg.sip_version < sip_min_version:
- sipconfig.error("This version of PyQt requires SIP v%s or later" % sipconfig.version_to_string(sip_min_version))
-
- global opts
-
- # Parse the command line.
- p = create_optparser()
- opts, args = p.parse_args()
-
- # Where the modules will be placed.
- global pyqt_modroot
- pyqt_modroot = os.path.join(opts.pyqtmoddir, "PyQt4")
-
- # When building static libraries, signed interpreter checking makes no
- # sense.
- if opts.vendorcheck and opts.static:
- sipconfig.error("Using the VendorID package when building static libraries makes no sense.")
-
- # Get the details of the Qt installation.
- get_qt_configuration()
-
- # Provide some defaults that are based on the Qt configuration.
- if not opts.plugindir:
- opts.plugindir = qt_pluginsdir
-
- if opts.qscidir:
- # An explicit directory implies installing the API file.
- opts.api = True
- else:
- opts.qscidir = os.path.join(qt_datadir, "qsci")
-
- if opts.api is None:
- # Install the API file if the default directory exists.
- opts.api = os.path.isdir(opts.qscidir)
-
- # Replace the existing build macros with the ones from the Qt installation.
- macros = get_build_macros(args)
-
- if macros is None:
- p.print_help()
- sys.exit(2)
-
- sipcfg.set_build_macros(macros)
-
- # Check Qt is what we need.
- pyqt = check_qt_installation(macros)
-
- # Check the licenses are compatible.
- check_license()
-
- # Check which modules to build.
- pyqt.check_modules()
-
- # Check for the VendorID package.
- check_vendorid()
-
- # Set the SIP platform, version and feature flags.
- set_sip_flags(pyqt)
-
- # Tell the user what's been found.
- inform_user()
-
- # Generate the code.
- pyqt.code()
-
- # Create the additional Makefiles.
- sipconfig.inform("Creating top level Makefile...")
-
- installs=[(pyqt.module_installs(), pyqt_modroot)]
-
- if opts.api:
- installs.append(("PyQt4.api", os.path.join(opts.qscidir, "api", "python")))
-
- xtra_modules = ["Qt"]
-
- if opts.bigqt:
- xtra_modules.append("_qt")
-
- if opts.mwg_qsci_dir:
- xtra_modules.append("Qsci")
-
- if opts.mwg_qwt_dir:
- xtra_modules.append("Qwt5")
-
- sipconfig.ParentMakefile(
- configuration=sipcfg,
- subdirs=pyqt.qpylibs() + pyqt_modules + xtra_modules + pyqt.tools(),
- installs=installs
- ).generate()
-
- # Install the configuration module.
- create_config("pyqtconfig.py", "pyqtconfig.py.in", macros)
-
-
-###############################################################################
-# The script starts here.
-###############################################################################
-
-if __name__ == "__main__":
- try:
- main()
- except SystemExit:
- raise
- except:
- print \
-"""An internal error occured. Please report all the output from the program,
-including the following traceback, to support@riverbankcomputing.com.
-"""
- raise
diff --git a/devel/py-qt4/distinfo b/devel/py-qt4/distinfo
deleted file mode 100644
index 6afd19b6ade..00000000000
--- a/devel/py-qt4/distinfo
+++ /dev/null
@@ -1,6 +0,0 @@
-$NetBSD: distinfo,v 1.1.1.1 2008/12/13 05:17:02 epg Exp $
-
-SHA1 (PyQt-x11-gpl-4.4.4.tar.gz) = 6b91a8020de10e807fa0d3db6b7a92029a17cf0b
-RMD160 (PyQt-x11-gpl-4.4.4.tar.gz) = 970bca082a93402b1986b4e8a14738575732e8ae
-Size (PyQt-x11-gpl-4.4.4.tar.gz) = 6982063 bytes
-SHA1 (patch-aa) = 9ba0e372d817bda27282da3632db71869cf2a6d6
diff --git a/devel/py-qt4/patches/patch-aa b/devel/py-qt4/patches/patch-aa
deleted file mode 100644
index efb9d1c8864..00000000000
--- a/devel/py-qt4/patches/patch-aa
+++ /dev/null
@@ -1,19 +0,0 @@
-$NetBSD: patch-aa,v 1.1.1.1 2008/12/13 05:17:02 epg Exp $
-
-Force shared libraries, from
-http://cvs.fedora.redhat.com/viewvc/devel/PyQt4/PyQt-x11-gpl-4.4.4-QT_SHARED.patch?revision=1.1&view=markup&pathrev=HEAD
-
---- configure.py.orig 2008-11-08 03:55:49.000000000 -0800
-+++ configure.py
-@@ -1584,11 +1584,7 @@ int main(int, char **)
- out << QT_VERSION << '\\n';
- out << QT_EDITION << '\\n';
-
--#if defined(QT_SHARED) || defined(QT_DLL)
- out << "shared\\n";
--#else
-- out << "\\n";
--#endif
-
- // Determine which features should be disabled.
-