ports/109620: [new port] net/py-qt4-network: PyQt4 bindings, QtNetwork module
Danny Pansters
danny at ricin.com
Tue Feb 27 18:10:09 UTC 2007
>Number: 109620
>Category: ports
>Synopsis: [new port] net/py-qt4-network: PyQt4 bindings, QtNetwork module
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Tue Feb 27 18:10:08 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: Danny Pansters
>Release: FreeBSD 6.2-PRERELEASE i386
>Organization:
>Environment:
System: FreeBSD desktop.homenet 6.2-PRERELEASE FreeBSD 6.2-PRERELEASE #1: Fri Jan 12 23:22:55 CET 2007 danny at desktop.homenet:/usr/obj/usr/src/sys/DESKTOP i386
>Description:
This PR creates: net/py-qt4-network
net/py-qt4-network/files
new files: Makefile, distinfo, pkg-descr, pkg-plist,
files/patch-configure.py
This PR is part 7 of a series of 20 PRs concerning PyQt4 and QScintilla2
The following existing ports are affected
=========================================
devel/py-sip ==> update to recent snapshot
devel/py-dbus ==> update to 0.8.1 (dbus 1.0 API)
x11-toolkits/py-qt ==> update to recent snapshot (sip backport)
The following ports are new
===========================
devel/qscintilla2
devel/qscintilla2-designerplugin
databases/py-qt4-sql
devel/py-qt4-assistant
devel/py-qt4-core
devel/py-qt4-dbus
devel/py-qt4-designer
devel/py-qt4-designerplugin
devel/py-qt4-qscintilla2
devel/py-qt4-test
graphics/py-qt4-svg
misc/py-qt4-demo
misc/py-qt4-doc
net/py-qt4-network
textproc/py-qt4-xml
x11/py-qt4-opengl
x11-toolkits/py-qt4-gui
Distfile rerolling, packages
============================
Currently there are new snapshots made available upstream daily. The
older snapshots are not retained and upstream often uploads a new
snapshot under an existing name, which causes checksums to break.
The distfiles from my web location should be in sync with the latest
distname used in the ports so fetching and checksumming should work
with that. Binary packages (i386/FreeBSD6-stable) can be fetched from
http://freebsd.ricin.com/ports/packages/All/
>How-To-Repeat:
>Fix:
--- 07-py-qt4-network.shar begins here ---
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# /usr/ports/net/py-qt4-network
# /usr/ports/net/py-qt4-network/files
# /usr/ports/net/py-qt4-network/files/patch-configure.py
# /usr/ports/net/py-qt4-network/pkg-descr
# /usr/ports/net/py-qt4-network/distinfo
# /usr/ports/net/py-qt4-network/Makefile
# /usr/ports/net/py-qt4-network/pkg-plist
#
echo c - /usr/ports/net/py-qt4-network
mkdir -p /usr/ports/net/py-qt4-network > /dev/null 2>&1
echo c - /usr/ports/net/py-qt4-network/files
mkdir -p /usr/ports/net/py-qt4-network/files > /dev/null 2>&1
echo x - /usr/ports/net/py-qt4-network/files/patch-configure.py
sed 's/^X//' >/usr/ports/net/py-qt4-network/files/patch-configure.py << 'END-of-/usr/ports/net/py-qt4-network/files/patch-configure.py'
X--- configure.py.orig Mon Feb 19 04:39:13 2007
X+++ configure.py Tue Feb 20 16:24:03 2007
X@@ -133,21 +133,21 @@
X }
X
X def check_modules(self):
X- pyqt_modules.append("QtCore")
X+ #pyqt_modules.append("QtCore")
X
X- check_module("QtGui", "qwidget.h", "new QWidget()")
X+ #check_module("QtGui", "qwidget.h", "new QWidget()")
X check_module("QtNetwork", "qhostaddress.h", "new QHostAddress()")
X- check_module("QtOpenGL", "qgl.h", "new QGLWidget()")
X- check_module("QtSql", "qsqldatabase.h", "new QSqlDatabase()")
X- check_module("QtSvg", "qsvgwidget.h", "new QSvgWidget()")
X- check_module("QtTest", "QtTest", "QTest::qSleep(0)")
X- check_module("QtXml", "qdom.h", "new QDomDocument()")
X- check_module("QtAssistant", "qassistantclient.h", "new QAssistantClient(\"foo\")")
X- check_module("QtDesigner", "QExtensionFactory", "new QExtensionFactory()")
X- check_module("QAxContainer", "qaxobject.h", "new QAxObject()", "QAxContainer")
X+ #check_module("QtOpenGL", "qgl.h", "new QGLWidget()")
X+ #check_module("QtSql", "qsqldatabase.h", "new QSqlDatabase()")
X+ #check_module("QtSvg", "qsvgwidget.h", "new QSvgWidget()")
X+ #check_module("QtTest", "QtTest", "QTest::qSleep(0)")
X+ #check_module("QtXml", "qdom.h", "new QDomDocument()")
X+ #check_module("QtAssistant", "qassistantclient.h", "new QAssistantClient(\"foo\")")
X+ #check_module("QtDesigner", "QExtensionFactory", "new QExtensionFactory()")
X+ #check_module("QAxContainer", "qaxobject.h", "new QAxObject()", "QAxContainer")
X
X- if os.path.isdir("dbus"):
X- check_dbus()
X+ #if os.path.isdir("dbus"):
X+ # check_dbus()
X
X def code(self):
X # Note that the order of the dependent modules is important.
X@@ -201,31 +201,31 @@
X generate_code("QAxContainer", ["QAxContainer", "QtGui", "QtCore"])
X
X # Generate the consolidated module.
X- sipconfig.inform("Creating Qt consolidated module...")
X- f = open("Qt.py", "w")
X+ #sipconfig.inform("Creating Qt consolidated module...")
X+ #f = open("Qt.py", "w")
X
X- for m in pyqt_modules:
X- f.write("from PyQt4.%s import *\n" % m)
X+ #for m in pyqt_modules:
X+ # f.write("from PyQt4.%s import *\n" % m)
X
X- f.close()
X+ #f.close()
X
X # Generate the QScintilla API file.
X- sipconfig.inform("Creating QScintilla API file...")
X- f = open("PyQt4.api", "w")
X+ #sipconfig.inform("Creating QScintilla API file...")
X+ #f = open("PyQt4.api", "w")
X
X- for m in pyqt_modules:
X- api = open(m + ".api")
X+ #for m in pyqt_modules:
X+ # api = open(m + ".api")
X
X- for l in api:
X- f.write("PyQt4." + l)
X+ # for l in api:
X+ # f.write("PyQt4." + l)
X
X- api.close()
X- os.remove(m + ".api")
X+ # api.close()
X+ # os.remove(m + ".api")
X
X- f.close()
X+ #f.close()
X
X def module_installs(self):
X- return ["__init__.py", "Qt.py", "pyqtconfig.py"]
X+ return []
X
X def qpylibs(self):
X # See which QPy libraries to build.
X@@ -278,7 +278,7 @@
X tool.append("dbus")
X
X # Only include ElementTree for older versions of Python.
X- if sipcfg.py_version < 0x020500:
X+ """if sipcfg.py_version < 0x020500:
X sipconfig.inform("Creating elementtree Makefile...")
X
X makefile = sipconfig.PythonModuleMakefile(
X@@ -309,7 +309,7 @@
X )
X
X makefile.generate()
X- tool.append("pyuic")
X+ tool.append("pyuic")"""
X
X if "QtXml" in pyqt_modules:
X sipconfig.inform("Creating pylupdate4 Makefile...")
X@@ -428,7 +428,7 @@
X
X sipconfig.inform("The PyQt .sip files will be installed in %s." % opt_pyqtsipdir)
X
X- sipconfig.inform("pyuic4, pyrcc4 and pylupdate4 will be installed in %s." % opt_pyqtbindir)
X+ #sipconfig.inform("pyuic4, pyrcc4 and pylupdate4 will be installed in %s." % opt_pyqtbindir)
X
X if opt_vendorcheck:
X sipconfig.inform("PyQt will only be usable with signed interpreters.")
X@@ -761,7 +761,8 @@
X sipfiles = []
X
X for s in glob.glob("sip/" + mname + "/*.sip"):
X- sipfiles.append(os.path.join("..", "sip", mname, os.path.basename(s)))
X+ if mname == "QtNetwork":
X+ sipfiles.append(os.path.join("..", "sip", mname, os.path.basename(s)))
X
X installs.append([sipfiles, os.path.join(opt_pyqtsipdir, mname)])
X
X@@ -825,7 +826,7 @@
X sipconfig.error("This version of PyQt and the %s edition of Qt have incompatible licenses." % qted)
X
X # Confirm the license.
X- print
X+ """print
X print "Type 'L' to view the license."
X print "Type 'yes' to accept the terms of the license."
X print "Type 'no' to decline the terms of the license."
X@@ -847,7 +848,7 @@
X
X if resp == "l":
X os.system("more LICENSE")
X-
X+ """
X # If there should be a license file then check it is where it should be.
X if lfile:
X if os.access(os.path.join("sip", lfile), os.F_OK):
X@@ -1367,16 +1368,18 @@
X scidir = os.path.join(qt_datadir, "qsci")
X
X if opt_api or os.path.isdir(scidir):
X- installs.append(("PyQt4.api", os.path.join(scidir, "api", "python")))
X+ installs.append(("QtNetwork.api", os.path.join(scidir, "api", "python")))
X+
X+ pyqt_modules = ["QtNetwork"]
X
X sipconfig.ParentMakefile(
X configuration=sipcfg,
X- subdirs=pyqt.qpylibs() + pyqt_modules + pyqt.tools(),
X+ subdirs=pyqt_modules,
X installs=installs
X ).generate()
X
X # Install the configuration module.
X- create_config("pyqtconfig.py", "pyqtconfig.py.in", macros)
X+ #create_config("pyqtconfig.py", "pyqtconfig.py.in", macros)
X
X
X ###############################################################################
END-of-/usr/ports/net/py-qt4-network/files/patch-configure.py
echo x - /usr/ports/net/py-qt4-network/pkg-descr
sed 's/^X//' >/usr/ports/net/py-qt4-network/pkg-descr << 'END-of-/usr/ports/net/py-qt4-network/pkg-descr'
XPyQt4 is a set of Python bindings for Trolltech's Qt4 application framework.
XThis package provides the QtNetwork module.
X
XWWW: http://www.riverbankcomputing.co.uk/pyqt/
END-of-/usr/ports/net/py-qt4-network/pkg-descr
echo x - /usr/ports/net/py-qt4-network/distinfo
sed 's/^X//' >/usr/ports/net/py-qt4-network/distinfo << 'END-of-/usr/ports/net/py-qt4-network/distinfo'
XMD5 (PyQt-x11-gpl-4-snapshot-20070225.tar.gz) = 89bc82feba24afe9bf3ea077e8f0cae2
XSHA256 (PyQt-x11-gpl-4-snapshot-20070225.tar.gz) = d181fb50236885107863c6a0ab4c72cf54967b0711a1cd1aea3bff3e710f73af
XSIZE (PyQt-x11-gpl-4-snapshot-20070225.tar.gz) = 5620849
END-of-/usr/ports/net/py-qt4-network/distinfo
echo x - /usr/ports/net/py-qt4-network/Makefile
sed 's/^X//' >/usr/ports/net/py-qt4-network/Makefile << 'END-of-/usr/ports/net/py-qt4-network/Makefile'
X# New ports collection makefile for: py-qt4-network
X# Date created: 2007-02-19
X# Whom: Danny Pansters <danny at ricin.com>
X#
X# $FreeBSD: Exp $
X
XPORTNAME= network
XPORTVERSION= 4.2
XCATEGORIES= net devel python
XMASTER_SITES= http://www.riverbankcomputing.com/Downloads/Snapshots/PyQt4/ \
X http://freebsd.ricin.com/ports/distfiles/
XPKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}qt4-
XDISTNAME= PyQt-x11-gpl-4-snapshot-20070225
X
XMAINTAINER= danny at ricin.com
XCOMMENT= Python bindings for the Qt4 toolkit, QtNetwork module
X
XBUILD_DEPENDS= ${PYTHON_SITELIBDIR}/PyQt4/QtCore.so:${PORTSDIR}/devel/py-qt4-core
XRUN_DEPENDS= ${BUILD_DEPENDS}
X
XHAS_CONFIGURE= yes
XUSE_PYTHON= 2.3+
XUSE_QT_VER= 4
XQT_COMPONENTS= network qmake
X
XOPTIONS= API "Install QtNetwork API for QScintilla2" on \
X DEBUG "Enable debugging in generated code" off \
X SIPFILES "Install the QtNetwork SIP files" on \
X TRACING "Enable tracing in generated code" off
X
XOPTIONSFILE= ${PORT_DBDIR}/py-qt4-${PORTNAME}/options
XSIPDIR= ${PREFIX}/share/py-sip
XARGS= -b ${PREFIX}/bin -c -j 2 -d ${PYTHONPREFIX_SITELIBDIR}/PyQt4 \
X -q ${QT_PREFIX}/bin/qmake-qt4 -a
X
X.include <bsd.port.pre.mk>
X
X.if defined(WITH_DEBUG)
XARGS+= -u
X.endif
X.if defined(WITHOUT_API)
XPLIST_SUB+= API="@comment "
XPLIST_SUB+= APIFILE="@comment "
X.else
XLIB_DEPENDS+= qscintilla2.1:${PORTSDIR}/devel/qscintilla2
XPLIST_SUB+= API=""
XPLIST_SUB+= APIFILE="share/qt4/qsci/api/python/QtNetwork.api"
X.endif
X.if defined(WITHOUT_SIPFILES)
XARGS+= -v /dev/null
XPLIST_SUB+= SIPFILES="@comment "
XPLIST_SUB+= SIPDIR="@comment "
X.else
XARGS+= -v ${SIPDIR}
XPLIST_SUB+= SIPFILES=""
XPLIST_SUB+= SIPDIR="share/py-sip"
X.endif
X.if defined(WITH_TRACING)
XARGS+= -r
X.endif
X
Xdo-configure:
X ( cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} \
X ${PYTHON_CMD} configure.py ${ARGS} )
X
Xpost-install:
X.if defined(WITHOUT_API)
X ( ${RM} ${APIFILE} )
X.endif
X
X.include <bsd.port.post.mk>
END-of-/usr/ports/net/py-qt4-network/Makefile
echo x - /usr/ports/net/py-qt4-network/pkg-plist
sed 's/^X//' >/usr/ports/net/py-qt4-network/pkg-plist << 'END-of-/usr/ports/net/py-qt4-network/pkg-plist'
X%%PYTHON_SITELIBDIR%%/PyQt4/QtNetwork.so
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/QtNetworkmod.sip
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/qabstractsocket.sip
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/qftp.sip
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/qhostaddress.sip
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/qhostinfo.sip
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/qhttp.sip
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/qnetworkinterface.sip
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/qnetworkproxy.sip
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/qtcpserver.sip
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/qtcpsocket.sip
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/qudpsocket.sip
X%%SIPFILES%%%%SIPDIR%%/QtNetwork/qurlinfo.sip
X%%SIPFILES%%@dirrm %%SIPDIR%%/QtNetwork
X at cwd %%LOCALBASE%%
X%%API%%%%APIFILE%%
X%%API%%@dirrmtry share/qt4/qsci/api/python
X%%API%%@dirrmtry share/qt4/qsci/api
X%%API%%@dirrmtry share/qt4/qsci
END-of-/usr/ports/net/py-qt4-network/pkg-plist
exit
--- 07-py-qt4-network.shar ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list