diff options
author | drochner <drochner@pkgsrc.org> | 2009-04-08 13:06:22 +0000 |
---|---|---|
committer | drochner <drochner@pkgsrc.org> | 2009-04-08 13:06:22 +0000 |
commit | 760c8e3f507831f12e689da5677ee4b5c8e74c4c (patch) | |
tree | d95595e578abc385d1e8af1d3bbf2c288b0ebd60 /x11/py-xcbgen | |
parent | c40a72bf226064de1b620307a991f9f97c62dc72 (diff) | |
download | pkgsrc-760c8e3f507831f12e689da5677ee4b5c8e74c4c.tar.gz |
split the "xcbgen" Python extension which comes with xcb-proto
into its own pkg and pull it in the common Python way so that
we ensure matching Python versions
Diffstat (limited to 'x11/py-xcbgen')
-rw-r--r-- | x11/py-xcbgen/DESCR | 20 | ||||
-rw-r--r-- | x11/py-xcbgen/Makefile | 23 | ||||
-rw-r--r-- | x11/py-xcbgen/PLIST | 20 | ||||
-rw-r--r-- | x11/py-xcbgen/distinfo | 10 | ||||
-rw-r--r-- | x11/py-xcbgen/patches/patch-aa | 13 | ||||
-rw-r--r-- | x11/py-xcbgen/patches/patch-ab | 42 | ||||
-rw-r--r-- | x11/py-xcbgen/patches/patch-ac | 13 | ||||
-rw-r--r-- | x11/py-xcbgen/patches/patch-ad | 13 | ||||
-rw-r--r-- | x11/py-xcbgen/patches/patch-ae | 22 |
9 files changed, 176 insertions, 0 deletions
diff --git a/x11/py-xcbgen/DESCR b/x11/py-xcbgen/DESCR new file mode 100644 index 00000000000..9796595282f --- /dev/null +++ b/x11/py-xcbgen/DESCR @@ -0,0 +1,20 @@ +About xcb-proto +=============== + +The xcb-proto package provides the XML-XCB (X C Bindings) protocol +descriptions that libxcb uses to generate the majority of its code and API. +We provide them separately from libxcb to allow reuse by other projects, +such as additional language bindings, protocol dissectors, or +documentation generators. + +Separation of XCB's transport and protocol layers simplifies both +writing extensions and client-side support for extensions. +By contrast, with the xlib infrastructure, client-side support for +new extensions requires significant duplication of effort. With XCB and +the XML-XCB protocol descriptions, client-side support for a new +extension requires only an XML description of the extension--and not a +single line of code. + +Python libraries: xcb-proto also contains language-independent Python +libraries that are used to parse an XML description and create objects +used by Python code generators in individual language bindings. diff --git a/x11/py-xcbgen/Makefile b/x11/py-xcbgen/Makefile new file mode 100644 index 00000000000..f9cf1f045bb --- /dev/null +++ b/x11/py-xcbgen/Makefile @@ -0,0 +1,23 @@ +# $NetBSD: Makefile,v 1.1 2009/04/08 13:06:22 drochner Exp $ +# + +DISTNAME= xcb-proto-1.4 +PKGNAME= ${PYPKGPREFIX}-xcbgen-1.4 +CATEGORIES= x11 +MASTER_SITES= http://xcb.freedesktop.org/dist/ +EXTRACT_SUFX= .tar.bz2 + +MAINTAINER= reed@reedmedia.net +HOMEPAGE= http://xcb.freedesktop.org/ +COMMENT= XCB protocol descriptions (in XML) + +CONFLICTS+= xcb-proto<1.4nb1 +PKG_DESTDIR_SUPPORT= user-destdir + +GNU_CONFIGURE= yes +USE_TOOLS+= pkg-config +USE_LANGUAGES= # none +PY_PATCHPLIST= yes + +.include "../../lang/python/extension.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/x11/py-xcbgen/PLIST b/x11/py-xcbgen/PLIST new file mode 100644 index 00000000000..2499712c202 --- /dev/null +++ b/x11/py-xcbgen/PLIST @@ -0,0 +1,20 @@ +@comment $NetBSD: PLIST,v 1.1 2009/04/08 13:06:22 drochner Exp $ +${PYSITELIB}/xcbgen/__init__.py +${PYSITELIB}/xcbgen/__init__.pyc +${PYSITELIB}/xcbgen/__init__.pyo +${PYSITELIB}/xcbgen/error.py +${PYSITELIB}/xcbgen/error.pyc +${PYSITELIB}/xcbgen/error.pyo +${PYSITELIB}/xcbgen/expr.py +${PYSITELIB}/xcbgen/expr.pyc +${PYSITELIB}/xcbgen/expr.pyo +${PYSITELIB}/xcbgen/matcher.py +${PYSITELIB}/xcbgen/matcher.pyc +${PYSITELIB}/xcbgen/matcher.pyo +${PYSITELIB}/xcbgen/state.py +${PYSITELIB}/xcbgen/state.pyc +${PYSITELIB}/xcbgen/state.pyo +${PYSITELIB}/xcbgen/xtypes.py +${PYSITELIB}/xcbgen/xtypes.pyc +${PYSITELIB}/xcbgen/xtypes.pyo +@dirrm ${PYSITELIB}/xcbgen diff --git a/x11/py-xcbgen/distinfo b/x11/py-xcbgen/distinfo new file mode 100644 index 00000000000..0bf537cab48 --- /dev/null +++ b/x11/py-xcbgen/distinfo @@ -0,0 +1,10 @@ +$NetBSD: distinfo,v 1.1 2009/04/08 13:06:22 drochner Exp $ + +SHA1 (xcb-proto-1.4.tar.bz2) = ab9bb7c875558a3324673bb749e0502046f31083 +RMD160 (xcb-proto-1.4.tar.bz2) = a344ca302a1cbefd98dcd289abf8704667a4b536 +Size (xcb-proto-1.4.tar.bz2) = 87093 bytes +SHA1 (patch-aa) = a04e2b8bb3fa6630d47d3febd7d676717ac15907 +SHA1 (patch-ab) = c61982389c86d2a61136aba67ea2a0647cc68da5 +SHA1 (patch-ac) = 39539e6d45e4994df0c291f6c05382c5c00a6aee +SHA1 (patch-ad) = bb86c889e0520aa98761b01d71d438ca4e71fc6b +SHA1 (patch-ae) = dc24bb927986f7112367836e6520c30059891686 diff --git a/x11/py-xcbgen/patches/patch-aa b/x11/py-xcbgen/patches/patch-aa new file mode 100644 index 00000000000..390cc7b0f39 --- /dev/null +++ b/x11/py-xcbgen/patches/patch-aa @@ -0,0 +1,13 @@ +$NetBSD: patch-aa,v 1.1 2009/04/08 13:06:22 drochner Exp $ + +--- configure.orig 2009-01-07 13:20:32.000000000 +0100 ++++ configure +@@ -2207,7 +2207,7 @@ echo $ECHO_N "checking whether $PYTHON v + prog="import sys, string + # split strings by '.' and convert to numeric. Append some zeros + # because we need at least 4 digits for the hex conversion. +-minver = map(int, string.split('2.5', '.')) + [0, 0, 0] ++minver = map(int, string.split('2.4', '.')) + [0, 0, 0] + minverhex = 0 + for i in xrange(0, 4): minverhex = (minverhex << 8) + minver[i] + sys.exit(sys.hexversion < minverhex)" diff --git a/x11/py-xcbgen/patches/patch-ab b/x11/py-xcbgen/patches/patch-ab new file mode 100644 index 00000000000..5826a798832 --- /dev/null +++ b/x11/py-xcbgen/patches/patch-ab @@ -0,0 +1,42 @@ +$NetBSD: patch-ab,v 1.1 2009/04/08 13:06:22 drochner Exp $ + +--- xcbgen/xtypes.py.orig 2008-09-05 00:49:13.000000000 +0200 ++++ xcbgen/xtypes.py +@@ -160,12 +160,22 @@ class ListType(Type): + + if elt.tag == 'list': + elts = list(elt) +- self.expr = Expression(elts[0] if len(elts) else elt, self) ++ if len(elts): ++ self.expr = Expression(elts[0], self) ++ else: ++ self.expr = Expression(elt, self) + elif elt.tag == 'valueparam': + self.expr = Expression(elt, self) + +- self.size = member.size if member.fixed_size() else None +- self.nmemb = self.expr.nmemb if self.expr.fixed_size() else None ++ if member.fixed_size(): ++ self.size = member.size ++ else: ++ self.size = None ++ ++ if self.expr.fixed_size(): ++ self.nmemb = self.expr.nmemb ++ else: ++ self.nmemb = None + + def make_member_of(self, module, complex_type, field_type, field_name, visible, wire, auto): + if not self.fixed_size(): +@@ -256,7 +266,10 @@ class PadType(SizedPadType): + Derived class which represents a padding field of given type. + ''' + def __init__(self, elt): +- self.nmemb = "1" if (elt == None) else elt.get('bytes') ++ if (elt == None): ++ self.nmemb = "1" ++ else: ++ self.nmemb = elt.get('bytes') + SizedPadType.__init__(self, self.nmemb) + + class ComplexType(Type): diff --git a/x11/py-xcbgen/patches/patch-ac b/x11/py-xcbgen/patches/patch-ac new file mode 100644 index 00000000000..3839ee75088 --- /dev/null +++ b/x11/py-xcbgen/patches/patch-ac @@ -0,0 +1,13 @@ +$NetBSD: patch-ac,v 1.1 2009/04/08 13:06:22 drochner Exp $ + +--- xcbgen/state.py.orig 2009-04-01 16:05:28.000000000 +0200 ++++ xcbgen/state.py +@@ -2,7 +2,7 @@ + This module contains the namespace class and the singleton module class. + ''' + from os.path import dirname, basename +-from xml.etree.cElementTree import parse ++from xml.etree.ElementTree import parse + + import matcher + from error import * diff --git a/x11/py-xcbgen/patches/patch-ad b/x11/py-xcbgen/patches/patch-ad new file mode 100644 index 00000000000..c841f17a6d9 --- /dev/null +++ b/x11/py-xcbgen/patches/patch-ad @@ -0,0 +1,13 @@ +$NetBSD: patch-ad,v 1.1 2009/04/08 13:06:22 drochner Exp $ + +--- xcbgen/matcher.py.orig 2009-04-01 16:06:02.000000000 +0200 ++++ xcbgen/matcher.py +@@ -7,7 +7,7 @@ we do not create a new type object, we j + ''' + + from os.path import join +-from xml.etree.cElementTree import parse ++from xml.etree.ElementTree import parse + + import state + from xtypes import * diff --git a/x11/py-xcbgen/patches/patch-ae b/x11/py-xcbgen/patches/patch-ae new file mode 100644 index 00000000000..27a50716c55 --- /dev/null +++ b/x11/py-xcbgen/patches/patch-ae @@ -0,0 +1,22 @@ +$NetBSD: patch-ae,v 1.1 2009/04/08 13:06:22 drochner Exp $ + +--- Makefile.in.orig 2009-04-08 14:37:08.000000000 +0200 ++++ Makefile.in +@@ -158,7 +158,7 @@ target_alias = @target_alias@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ + xcbincludedir = @xcbincludedir@ +-SUBDIRS = src xcbgen ++SUBDIRS = xcbgen + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = xcb-proto.pc + EXTRA_DIST = doc xcb-proto.pc.in +@@ -547,7 +547,7 @@ info: info-recursive + + info-am: + +-install-data-am: install-pkgconfigDATA ++install-data-am: #install-pkgconfigDATA + + install-dvi: install-dvi-recursive + |