python 2.5.1 enable and package ctypes module/package. closes #3368 -- thanks emdete!
authorMichael Lauer <mickey@vanille-media.de>
Wed, 5 Dec 2007 17:06:14 +0000 (17:06 +0000)
committerMichael Lauer <mickey@vanille-media.de>
Wed, 5 Dec 2007 17:06:14 +0000 (17:06 +0000)
contrib/python/generate-manifest-2.5.py
packages/python/python-2.5-manifest.inc
packages/python/python-2.5.1/enable-ctypes-module.patch [new file with mode: 0644]
packages/python/python_2.5.1.bb

index 1317f23..d4b7ea1 100755 (executable)
@@ -2,7 +2,8 @@
 
 # generate Python Manifest for the OpenEmbedded build system
 # (C) 2002-2007 Michael 'Mickey' Lauer <mlauer@vanille-media.de>
-# MIT license
+# (C) 2007 Jeremy Laine
+# licensed under MIT, see COPYING.MIT
 
 import os
 import sys
@@ -10,10 +11,10 @@ import time
 
 VERSION = "2.5.1"
 # increase when touching python-core, this should be the same ml version as in python_2.5.1.bb
-BASEREV = 2
+BASEREV = 3
 
 __author__ = "Michael 'Mickey' Lauer <mickey@Vanille.de>"
-__version__ = "20070823"
+__version__ = "20071205"
 
 class MakefileMaker:
 
@@ -194,7 +195,10 @@ if __name__ == "__main__":
     "lib-dynload/_csv.so csv.* optparse.* textwrap.*" )
 
     m.addPackage( 0, "python-curses", "Python Curses Support", "python-core",
-    "curses lib-dynload/_curses.so lib-dynload/_curses_panel.so" ) # package
+    "curses lib-dynload/_curses.so lib-dynload/_curses_panel.so" ) # directory + low level module
+
+    m.addPackage( 0, "python-ctypes", "Python C Types Support", "python-core",
+    "ctypes lib-dynload/_ctypes.so" ) # directory + low level module
 
     m.addPackage( 0, "python-datetime", "Python Calendar and Time support", "python-core python-codecs",
     "_strptime.* calendar.* lib-dynload/datetime.so" )
index 85d47c4..b739595 100644 (file)
@@ -1,5 +1,5 @@
 ########################################################################################################################
-### AUTO-GENERATED by 'contrib/python/generate-manifest-2.5.py' [(C) 2002-2007 Michael 'Mickey' Lauer <mlauer@vanille-media.de>] on Thu Nov 15 16:11:01 2007
+### AUTO-GENERATED by './generate-manifest-2.5.py' [(C) 2002-2007 Michael 'Mickey' Lauer <mlauer@vanille-media.de>] on Wed Dec  5 18:00:46 2007
 ###
 ### Visit THE Python for Embedded Systems Site => http://www.Vanille.de/projects/python.spy
 ###
 ########################################################################################################################
  
 
-PROVIDES+="python-profile python-threading python-distutils python-textutils python-codecs python-pickle python-datetime python-core python-io python-compiler python-compression python-re python-xmlrpc python-terminal python-email python-image python-core-dbg python-resource python-devel python-math python-hotshot python-unixadmin python-syslog python-tkinter python-gdbm python-fcntl python-netclient python-pprint python-netserver python-curses python-smtpd python-html python-readline python-subprocess python-pydoc python-logging python-mailbox python-xml python-mime python-sqlite3 python-tests python-unittest python-stringold python-robotparser python-lib-old-and-deprecated python-compile python-debugger python-shell python-bsddb python-mmap python-zlib python-db python-crypt python-idle python-lang python-audio "
+PROVIDES+="python-profile python-threading python-distutils python-textutils python-codecs python-ctypes python-pickle python-datetime python-core python-io python-compiler python-compression python-re python-xmlrpc python-terminal python-email python-image python-core-dbg python-resource python-devel python-math python-hotshot python-unixadmin python-syslog python-tkinter python-gdbm python-fcntl python-netclient python-pprint python-netserver python-curses python-smtpd python-html python-readline python-subprocess python-pydoc python-logging python-mailbox python-xml python-mime python-sqlite3 python-tests python-unittest python-stringold python-robotparser python-lib-old-and-deprecated python-compile python-debugger python-shell python-bsddb python-mmap python-zlib python-db python-crypt python-idle python-lang python-audio "
 
-PACKAGES="python-profile python-threading python-distutils python-textutils python-codecs python-pickle python-datetime python-core python-io python-compiler python-compression python-re python-xmlrpc python-terminal python-email python-image python-core-dbg python-resource python-devel python-math python-hotshot python-unixadmin python-syslog python-tkinter python-gdbm python-fcntl python-netclient python-pprint python-netserver python-curses python-smtpd python-html python-readline python-subprocess python-pydoc python-logging python-mailbox python-xml python-mime python-sqlite3 python-tests python-unittest python-stringold python-robotparser python-lib-old-and-deprecated python-compile python-debugger python-shell python-bsddb python-mmap python-zlib python-db python-crypt python-idle python-lang python-audio "
+PACKAGES="python-profile python-threading python-distutils python-textutils python-codecs python-ctypes python-pickle python-datetime python-core python-io python-compiler python-compression python-re python-xmlrpc python-terminal python-email python-image python-core-dbg python-resource python-devel python-math python-hotshot python-unixadmin python-syslog python-tkinter python-gdbm python-fcntl python-netclient python-pprint python-netserver python-curses python-smtpd python-html python-readline python-subprocess python-pydoc python-logging python-mailbox python-xml python-mime python-sqlite3 python-tests python-unittest python-stringold python-robotparser python-lib-old-and-deprecated python-compile python-debugger python-shell python-bsddb python-mmap python-zlib python-db python-crypt python-idle python-lang python-audio "
 
 DESCRIPTION_python-profile="Python Basic Profiling Support"
-PR_python-profile="ml2"
+PR_python-profile="ml3"
 RDEPENDS_python-profile="python-core"
 FILES_python-profile="${libdir}/python2.5/profile.* ${libdir}/python2.5/pstats.* "
 
 DESCRIPTION_python-threading="Python Threading & Synchronization Support"
-PR_python-threading="ml2"
+PR_python-threading="ml3"
 RDEPENDS_python-threading="python-core python-lang"
 FILES_python-threading="${libdir}/python2.5/_threading_local.* ${libdir}/python2.5/dummy_thread.* ${libdir}/python2.5/dummy_threading.* ${libdir}/python2.5/mutex.* ${libdir}/python2.5/threading.* ${libdir}/python2.5/Queue.* "
 
 DESCRIPTION_python-distutils="Python Distribution Utilities"
-PR_python-distutils="ml2"
+PR_python-distutils="ml3"
 RDEPENDS_python-distutils="python-core"
 FILES_python-distutils="${libdir}/python2.5/config ${libdir}/python2.5/distutils "
 
 DESCRIPTION_python-textutils="Python Option Parsing, Text Wrapping and Comma-Separated-Value Support"
-PR_python-textutils="ml2"
+PR_python-textutils="ml3"
 RDEPENDS_python-textutils="python-core python-io python-re python-stringold"
 FILES_python-textutils="${libdir}/python2.5/lib-dynload/_csv.so ${libdir}/python2.5/csv.* ${libdir}/python2.5/optparse.* ${libdir}/python2.5/textwrap.* "
 
 DESCRIPTION_python-codecs="Python Codecs, Encodings & i18n Support"
-PR_python-codecs="ml2"
+PR_python-codecs="ml3"
 RDEPENDS_python-codecs="python-core"
 FILES_python-codecs="${libdir}/python2.5/codecs.* ${libdir}/python2.5/encodings ${libdir}/python2.5/gettext.* ${libdir}/python2.5/locale.* ${libdir}/python2.5/lib-dynload/_locale.so ${libdir}/python2.5/lib-dynload/unicodedata.so ${libdir}/python2.5/stringprep.* ${libdir}/python2.5/xdrlib.* "
 
+DESCRIPTION_python-ctypes="Python C Types Support"
+PR_python-ctypes="ml3"
+RDEPENDS_python-ctypes="python-core"
+FILES_python-ctypes="${libdir}/python2.5/ctypes ${libdir}/python2.5/lib-dynload/_ctypes.so "
+
 DESCRIPTION_python-pickle="Python Persistence Support"
-PR_python-pickle="ml2"
+PR_python-pickle="ml3"
 RDEPENDS_python-pickle="python-core python-codecs python-io python-re"
 FILES_python-pickle="${libdir}/python2.5/pickle.* ${libdir}/python2.5/shelve.* ${libdir}/python2.5/lib-dynload/cPickle.so "
 
 DESCRIPTION_python-datetime="Python Calendar and Time support"
-PR_python-datetime="ml2"
+PR_python-datetime="ml3"
 RDEPENDS_python-datetime="python-core python-codecs"
 FILES_python-datetime="${libdir}/python2.5/_strptime.* ${libdir}/python2.5/calendar.* ${libdir}/python2.5/lib-dynload/datetime.so "
 
 DESCRIPTION_python-core="Python Interpreter and core modules (needed!)"
-PR_python-core="ml4"
+PR_python-core="ml5"
 RDEPENDS_python-core=""
 FILES_python-core="${libdir}/python2.5/__future__.* ${libdir}/python2.5/copy.* ${libdir}/python2.5/copy_reg.* ${libdir}/python2.5/ConfigParser.* ${libdir}/python2.5/getopt.* ${libdir}/python2.5/linecache.* ${libdir}/python2.5/new.* ${libdir}/python2.5/os.* ${libdir}/python2.5/posixpath.* ${libdir}/python2.5/struct.* ${libdir}/python2.5/warnings.* ${libdir}/python2.5/site.* ${libdir}/python2.5/stat.* ${libdir}/python2.5/UserDict.* ${libdir}/python2.5/UserList.* ${libdir}/python2.5/UserString.* ${libdir}/python2.5/lib-dynload/binascii.so ${libdir}/python2.5/lib-dynload/_struct.so ${libdir}/python2.5/lib-dynload/time.so ${libdir}/python2.5/lib-dynload/xreadlines.so ${libdir}/python2.5/types.* ${bindir}/python* "
 
 DESCRIPTION_python-io="Python Low-Level I/O"
-PR_python-io="ml2"
+PR_python-io="ml3"
 RDEPENDS_python-io="python-core python-math"
 FILES_python-io="${libdir}/python2.5/lib-dynload/_socket.so ${libdir}/python2.5/lib-dynload/_ssl.so ${libdir}/python2.5/lib-dynload/select.so ${libdir}/python2.5/lib-dynload/termios.so ${libdir}/python2.5/lib-dynload/cStringIO.so ${libdir}/python2.5/pipes.* ${libdir}/python2.5/socket.* ${libdir}/python2.5/tempfile.* ${libdir}/python2.5/StringIO.* "
 
 DESCRIPTION_python-compiler="Python Compiler Support"
-PR_python-compiler="ml2"
+PR_python-compiler="ml3"
 RDEPENDS_python-compiler="python-core"
 FILES_python-compiler="${libdir}/python2.5/compiler "
 
 DESCRIPTION_python-compression="Python High Level Compression Support"
-PR_python-compression="ml2"
+PR_python-compression="ml3"
 RDEPENDS_python-compression="python-core python-zlib"
 FILES_python-compression="${libdir}/python2.5/gzip.* ${libdir}/python2.5/zipfile.* "
 
 DESCRIPTION_python-re="Python Regular Expression APIs"
-PR_python-re="ml2"
+PR_python-re="ml3"
 RDEPENDS_python-re="python-core"
 FILES_python-re="${libdir}/python2.5/re.* ${libdir}/python2.5/sre.* ${libdir}/python2.5/sre_compile.* ${libdir}/python2.5/sre_constants* ${libdir}/python2.5/sre_parse.* "
 
 DESCRIPTION_python-xmlrpc="Python XMLRPC Support"
-PR_python-xmlrpc="ml2"
+PR_python-xmlrpc="ml3"
 RDEPENDS_python-xmlrpc="python-core python-xml python-netserver python-lang"
 FILES_python-xmlrpc="${libdir}/python2.5/xmlrpclib.* ${libdir}/python2.5/SimpleXMLRPCServer.* "
 
 DESCRIPTION_python-terminal="Python Terminal Controlling Support"
-PR_python-terminal="ml2"
+PR_python-terminal="ml3"
 RDEPENDS_python-terminal="python-core python-io"
 FILES_python-terminal="${libdir}/python2.5/pty.* ${libdir}/python2.5/tty.* "
 
 DESCRIPTION_python-email="Python Email Support"
-PR_python-email="ml2"
+PR_python-email="ml3"
 RDEPENDS_python-email="python-core python-io python-re python-mime python-audio python-image"
 FILES_python-email="${libdir}/python2.5/email "
 
 DESCRIPTION_python-image="Python Graphical Image Handling"
-PR_python-image="ml2"
+PR_python-image="ml3"
 RDEPENDS_python-image="python-core"
 FILES_python-image="${libdir}/python2.5/colorsys.* ${libdir}/python2.5/imghdr.* ${libdir}/python2.5/lib-dynload/imageop.so ${libdir}/python2.5/lib-dynload/rgbimg.so "
 
 DESCRIPTION_python-core-dbg="Python core module debug information"
-PR_python-core-dbg="ml2"
+PR_python-core-dbg="ml3"
 RDEPENDS_python-core-dbg="python-core"
 FILES_python-core-dbg="${libdir}/python2.5/lib-dynload/.debug ${bindir}/.debug ${libdir}/.debug "
 
 DESCRIPTION_python-resource="Python Resource Control Interface"
-PR_python-resource="ml2"
+PR_python-resource="ml3"
 RDEPENDS_python-resource="python-core"
 FILES_python-resource="${libdir}/python2.5/lib-dynload/resource.so "
 
 DESCRIPTION_python-devel="Python Development Package"
-PR_python-devel="ml2"
+PR_python-devel="ml3"
 RDEPENDS_python-devel="python-core"
 FILES_python-devel="${includedir} ${libdir}/python2.5/config "
 
 DESCRIPTION_python-math="Python Math Support"
-PR_python-math="ml2"
+PR_python-math="ml3"
 RDEPENDS_python-math="python-core"
 FILES_python-math="${libdir}/python2.5/lib-dynload/cmath.so ${libdir}/python2.5/lib-dynload/math.so ${libdir}/python2.5/lib-dynload/_random.so ${libdir}/python2.5/random.* ${libdir}/python2.5/sets.* "
 
 DESCRIPTION_python-hotshot="Python Hotshot Profiler"
-PR_python-hotshot="ml2"
+PR_python-hotshot="ml3"
 RDEPENDS_python-hotshot="python-core"
 FILES_python-hotshot="${libdir}/python2.5/hotshot ${libdir}/python2.5/lib-dynload/_hotshot.so "
 
 DESCRIPTION_python-unixadmin="Python Unix Administration Support"
-PR_python-unixadmin="ml2"
+PR_python-unixadmin="ml3"
 RDEPENDS_python-unixadmin="python-core"
 FILES_python-unixadmin="${libdir}/python2.5/lib-dynload/nis.so ${libdir}/python2.5/lib-dynload/grp.so ${libdir}/python2.5/lib-dynload/pwd.so ${libdir}/python2.5/getpass.* "
 
 DESCRIPTION_python-syslog="Python's syslog Interface"
-PR_python-syslog="ml2"
+PR_python-syslog="ml3"
 RDEPENDS_python-syslog="python-core"
 FILES_python-syslog="${libdir}/python2.5/lib-dynload/syslog.so "
 
 DESCRIPTION_python-tkinter="Python Tcl/Tk Bindings"
-PR_python-tkinter="ml2"
+PR_python-tkinter="ml3"
 RDEPENDS_python-tkinter="python-core"
 FILES_python-tkinter="${libdir}/python2.5/lib-dynload/_tkinter.so ${libdir}/python2.5/lib-tk "
 
 DESCRIPTION_python-gdbm="Python GNU Database Support"
-PR_python-gdbm="ml2"
+PR_python-gdbm="ml3"
 RDEPENDS_python-gdbm="python-core"
 FILES_python-gdbm="${libdir}/python2.5/lib-dynload/gdbm.so "
 
 DESCRIPTION_python-fcntl="Python's fcntl Interface"
-PR_python-fcntl="ml2"
+PR_python-fcntl="ml3"
 RDEPENDS_python-fcntl="python-core"
 FILES_python-fcntl="${libdir}/python2.5/lib-dynload/fcntl.so "
 
 DESCRIPTION_python-netclient="Python Internet Protocol Clients"
-PR_python-netclient="ml2"
+PR_python-netclient="ml3"
 RDEPENDS_python-netclient="python-core python-datetime python-io python-lang python-logging python-mime"
 FILES_python-netclient="${libdir}/python2.5/*Cookie*.* ${libdir}/python2.5/base64.* ${libdir}/python2.5/cookielib.* ${libdir}/python2.5/ftplib.* ${libdir}/python2.5/gopherlib.* ${libdir}/python2.5/hmac.* ${libdir}/python2.5/httplib.* ${libdir}/python2.5/mimetypes.* ${libdir}/python2.5/nntplib.* ${libdir}/python2.5/poplib.* ${libdir}/python2.5/smtplib.* ${libdir}/python2.5/telnetlib.* ${libdir}/python2.5/urllib.* ${libdir}/python2.5/urllib2.* ${libdir}/python2.5/urlparse.* "
 
 DESCRIPTION_python-pprint="Python Pretty-Print Support"
-PR_python-pprint="ml2"
+PR_python-pprint="ml3"
 RDEPENDS_python-pprint="python-core"
 FILES_python-pprint="${libdir}/python2.5/pprint.* "
 
 DESCRIPTION_python-netserver="Python Internet Protocol Servers"
-PR_python-netserver="ml2"
+PR_python-netserver="ml3"
 RDEPENDS_python-netserver="python-core python-netclient"
 FILES_python-netserver="${libdir}/python2.5/cgi.* ${libdir}/python2.5/BaseHTTPServer.* ${libdir}/python2.5/SimpleHTTPServer.* ${libdir}/python2.5/SocketServer.* "
 
 DESCRIPTION_python-curses="Python Curses Support"
-PR_python-curses="ml2"
+PR_python-curses="ml3"
 RDEPENDS_python-curses="python-core"
 FILES_python-curses="${libdir}/python2.5/curses ${libdir}/python2.5/lib-dynload/_curses.so ${libdir}/python2.5/lib-dynload/_curses_panel.so "
 
 DESCRIPTION_python-smtpd="Python Simple Mail Transport Daemon"
-PR_python-smtpd="ml2"
+PR_python-smtpd="ml3"
 RDEPENDS_python-smtpd="python-core python-netserver python-email python-mime"
 FILES_python-smtpd="${bindir}/smtpd.* "
 
 DESCRIPTION_python-html="Python HTML Processing"
-PR_python-html="ml2"
+PR_python-html="ml3"
 RDEPENDS_python-html="python-core"
 FILES_python-html="${libdir}/python2.5/formatter.* ${libdir}/python2.5/htmlentitydefs.* ${libdir}/python2.5/htmllib.* ${libdir}/python2.5/markupbase.* ${libdir}/python2.5/sgmllib.* "
 
 DESCRIPTION_python-readline="Python Readline Support"
-PR_python-readline="ml2"
+PR_python-readline="ml3"
 RDEPENDS_python-readline="python-core"
 FILES_python-readline="${libdir}/python2.5/lib-dynload/readline.so ${libdir}/python2.5/rlcompleter.* "
 
 DESCRIPTION_python-subprocess="Python Subprocess Support"
-PR_python-subprocess="ml2"
+PR_python-subprocess="ml3"
 RDEPENDS_python-subprocess="python-core python-io python-re python-fcntl python-pickle"
 FILES_python-subprocess="${libdir}/python2.5/subprocess.* "
 
 DESCRIPTION_python-pydoc="Python Interactive Help Support"
-PR_python-pydoc="ml2"
+PR_python-pydoc="ml3"
 RDEPENDS_python-pydoc="python-core python-lang python-stringold python-re"
 FILES_python-pydoc="${bindir}/pydoc ${libdir}/python2.5/pydoc.* "
 
 DESCRIPTION_python-logging="Python Logging Support"
-PR_python-logging="ml2"
+PR_python-logging="ml3"
 RDEPENDS_python-logging="python-core python-io python-lang python-stringold"
 FILES_python-logging="${libdir}/python2.5/logging "
 
 DESCRIPTION_python-mailbox="Python Mailbox Format Support"
-PR_python-mailbox="ml2"
+PR_python-mailbox="ml3"
 RDEPENDS_python-mailbox="python-core python-mime"
 FILES_python-mailbox="${libdir}/python2.5/mailbox.* "
 
 DESCRIPTION_python-xml="Python basic XML support."
-PR_python-xml="ml2"
+PR_python-xml="ml3"
 RDEPENDS_python-xml="python-core python-re python-netclient"
 FILES_python-xml="${libdir}/python2.5/lib-dynload/pyexpat.so ${libdir}/python2.5/xml ${libdir}/python2.5/xmllib.* "
 
 DESCRIPTION_python-mime="Python MIME Handling APIs"
-PR_python-mime="ml2"
+PR_python-mime="ml3"
 RDEPENDS_python-mime="python-core python-io"
 FILES_python-mime="${libdir}/python2.5/mimetools.* ${libdir}/python2.5/uu.* ${libdir}/python2.5/quopri.* ${libdir}/python2.5/rfc822.* "
 
 DESCRIPTION_python-sqlite3="Python Sqlite3 Database Support"
-PR_python-sqlite3="ml2"
+PR_python-sqlite3="ml3"
 RDEPENDS_python-sqlite3="python-core"
 FILES_python-sqlite3="${libdir}/python2.5/sqlite3 "
 
 DESCRIPTION_python-tests="Python Tests"
-PR_python-tests="ml2"
+PR_python-tests="ml3"
 RDEPENDS_python-tests="python-core"
 FILES_python-tests="${libdir}/python2.5/test "
 
 DESCRIPTION_python-unittest="Python Unit Testing Framework"
-PR_python-unittest="ml2"
+PR_python-unittest="ml3"
 RDEPENDS_python-unittest="python-core python-stringold python-lang"
 FILES_python-unittest="${libdir}/python2.5/unittest.* "
 
 DESCRIPTION_python-stringold="Python String APIs [deprecated]"
-PR_python-stringold="ml2"
+PR_python-stringold="ml3"
 RDEPENDS_python-stringold="python-core python-re"
 FILES_python-stringold="${libdir}/python2.5/lib-dynload/strop.so ${libdir}/python2.5/string.* "
 
 DESCRIPTION_python-robotparser="Python robots.txt parser"
-PR_python-robotparser="ml2"
+PR_python-robotparser="ml3"
 RDEPENDS_python-robotparser="python-core python-netclient"
 FILES_python-robotparser="${libdir}/python2.5/robotparser.* "
 
 DESCRIPTION_python-lib-old-and-deprecated="Python Deprecated Libraries"
-PR_python-lib-old-and-deprecated="ml2"
+PR_python-lib-old-and-deprecated="ml3"
 RDEPENDS_python-lib-old-and-deprecated="python-core"
 FILES_python-lib-old-and-deprecated="${libdir}/python2.5/lib-old "
 
 DESCRIPTION_python-compile="Python Bytecode Compilation Support"
-PR_python-compile="ml2"
+PR_python-compile="ml3"
 RDEPENDS_python-compile="python-core"
 FILES_python-compile="${libdir}/python2.5/py_compile.* ${libdir}/python2.5/compileall.* "
 
 DESCRIPTION_python-debugger="Python Debugger"
-PR_python-debugger="ml2"
+PR_python-debugger="ml3"
 RDEPENDS_python-debugger="python-core python-io python-lang python-re python-stringold python-shell"
 FILES_python-debugger="${libdir}/python2.5/bdb.* ${libdir}/python2.5/pdb.* "
 
 DESCRIPTION_python-shell="Python Shell-Like Functionality"
-PR_python-shell="ml2"
+PR_python-shell="ml3"
 RDEPENDS_python-shell="python-core python-re"
 FILES_python-shell="${libdir}/python2.5/cmd.* ${libdir}/python2.5/commands.* ${libdir}/python2.5/dircache.* ${libdir}/python2.5/fnmatch.* ${libdir}/python2.5/glob.* ${libdir}/python2.5/popen2.* ${libdir}/python2.5/shutil.* "
 
 DESCRIPTION_python-bsddb="Python Berkeley Database Bindings"
-PR_python-bsddb="ml2"
+PR_python-bsddb="ml3"
 RDEPENDS_python-bsddb="python-core"
 FILES_python-bsddb="${libdir}/python2.5/bsddb "
 
 DESCRIPTION_python-mmap="Python Memory-Mapped-File Support"
-PR_python-mmap="ml2"
+PR_python-mmap="ml3"
 RDEPENDS_python-mmap="python-core python-io"
 FILES_python-mmap="${libdir}/python2.5/lib-dynload/mmap.so "
 
 DESCRIPTION_python-zlib="Python zlib Support."
-PR_python-zlib="ml2"
+PR_python-zlib="ml3"
 RDEPENDS_python-zlib="python-core"
 FILES_python-zlib="${libdir}/python2.5/lib-dynload/zlib.so "
 
 DESCRIPTION_python-db="Python File-Based Database Support"
-PR_python-db="ml2"
+PR_python-db="ml3"
 RDEPENDS_python-db="python-core"
 FILES_python-db="${libdir}/python2.5/anydbm.* ${libdir}/python2.5/dumbdbm.* ${libdir}/python2.5/whichdb.* "
 
 DESCRIPTION_python-crypt="Python Basic Cryptographic and Hashing Support"
-PR_python-crypt="ml2"
+PR_python-crypt="ml3"
 RDEPENDS_python-crypt="python-core"
 FILES_python-crypt="${libdir}/python2.5/hashlib.* ${libdir}/python2.5/md5.* ${libdir}/python2.5/sha.* ${libdir}/python2.5/lib-dynload/crypt.so ${libdir}/python2.5/lib-dynload/_hashlib.so ${libdir}/python2.5/lib-dynload/_sha256.so ${libdir}/python2.5/lib-dynload/_sha512.so "
 
 DESCRIPTION_python-idle="Python Integrated Development Environment"
-PR_python-idle="ml2"
+PR_python-idle="ml3"
 RDEPENDS_python-idle="python-core python-tkinter"
 FILES_python-idle="${bindir}/idle ${libdir}/python2.5/idlelib "
 
 DESCRIPTION_python-lang="Python Low-Level Language Support"
-PR_python-lang="ml2"
+PR_python-lang="ml3"
 RDEPENDS_python-lang="python-core"
 FILES_python-lang="${libdir}/python2.5/lib-dynload/array.so ${libdir}/python2.5/lib-dynload/parser.so ${libdir}/python2.5/lib-dynload/operator.so ${libdir}/python2.5/lib-dynload/_weakref.so ${libdir}/python2.5/lib-dynload/itertools.so ${libdir}/python2.5/lib-dynload/collections.so ${libdir}/python2.5/lib-dynload/_bisect.so ${libdir}/python2.5/lib-dynload/_heapq.so ${libdir}/python2.5/atexit.* ${libdir}/python2.5/bisect.* ${libdir}/python2.5/code.* ${libdir}/python2.5/codeop.* ${libdir}/python2.5/dis.* ${libdir}/python2.5/heapq.* ${libdir}/python2.5/inspect.* ${libdir}/python2.5/keyword.* ${libdir}/python2.5/opcode.* ${libdir}/python2.5/repr.* ${libdir}/python2.5/token.* ${libdir}/python2.5/tokenize.* ${libdir}/python2.5/traceback.* ${libdir}/python2.5/linecache.* ${libdir}/python2.5/weakref.* "
 
 DESCRIPTION_python-audio="Python Audio Handling"
-PR_python-audio="ml2"
+PR_python-audio="ml3"
 RDEPENDS_python-audio="python-core"
 FILES_python-audio="${libdir}/python2.5/wave.* ${libdir}/python2.5/chunk.* ${libdir}/python2.5/sndhdr.* ${libdir}/python2.5/lib-dynload/ossaudiodev.so ${libdir}/python2.5/lib-dynload/audioop.so "
 
diff --git a/packages/python/python-2.5.1/enable-ctypes-module.patch b/packages/python/python-2.5.1/enable-ctypes-module.patch
new file mode 100644 (file)
index 0000000..dd5adaf
--- /dev/null
@@ -0,0 +1,106 @@
+diff -Naur Python-2.5.1.orig/setup.py Python-2.5.1/setup.py
+--- Python-2.5.orig/setup.py   2006-08-10 01:42:18.000000000 +0200
++++ Python-2.5/setup.py        2007-11-21 18:00:43.000000000 +0100
+@@ -1321,16 +1329,16 @@
+                                          ffi_configfile):
+                 from distutils.dir_util import mkpath
+                 mkpath(ffi_builddir)
+-                config_args = []
++                config_args = ['--host=%s' % os.environ["HOST_SYS"], ]
+                 # Pass empty CFLAGS because we'll just append the resulting
+                 # CFLAGS to Python's; -g or -O2 is to be avoided.
+-                cmd = "cd %s && env CFLAGS='' '%s/configure' %s" \
+-                      % (ffi_builddir, ffi_srcdir, " ".join(config_args))
++                cmd = "(cd %s && autoconf -W cross) && (cd %s && env CFLAGS='' '%s/configure' %s)" \
++                      % (ffi_srcdir, ffi_builddir, ffi_srcdir, " ".join(config_args))
+                 res = os.system(cmd)
+                 if res or not os.path.exists(ffi_configfile):
+-                    print "Failed to configure _ctypes module"
++                    print "Failed to configure _ctypes module, ret %d or missing %s"% (res, ffi_configfile, )
+                     return False
+             fficonfig = {}
+diff -Naur Python-2.5.1.orig/Modules/_ctypes/callbacks.c Python-2.5.1/Modules/_ctypes/callbacks.c
+--- Python-2.5.1.orig/Modules/_ctypes/callbacks.c      2006-10-17 21:41:10.000000000 +0200
++++ Python-2.5.1/Modules/_ctypes/callbacks.c   2007-11-22 10:29:33.000000000 +0100
+@@ -273,11 +273,13 @@
+               PyErr_NoMemory();
+               return NULL;
+       }
++#if FFI_CLOSURES
+       p->pcl = MallocClosure();
+       if (p->pcl == NULL) {
+               PyErr_NoMemory();
+               goto error;
+       }
++#endif
+       for (i = 0; i < nArgs; ++i) {
+               PyObject *cnv = PySequence_GetItem(converters, i);
+@@ -315,12 +317,14 @@
+                            "ffi_prep_cif failed with %d", result);
+               goto error;
+       }
++#if FFI_CLOSURES
+       result = ffi_prep_closure(p->pcl, &p->cif, closure_fcn, p);
+       if (result != FFI_OK) {
+               PyErr_Format(PyExc_RuntimeError,
+                            "ffi_prep_closure failed with %d", result);
+               goto error;
+       }
++#endif
+       p->converters = converters;
+       p->callable = callable;
+@@ -328,8 +332,10 @@
+   error:
+       if (p) {
++#if FFI_CLOSURES
+               if (p->pcl)
+                       FreeClosure(p->pcl);
++#endif
+               PyMem_Free(p);
+       }
+       return NULL;
+diff -Naur Python-2.5.1.orig/Modules/_ctypes/_ctypes.c Python-2.5.1/Modules/_ctypes/_ctypes.c
+--- Python-2.5.1.orig/Modules/_ctypes/_ctypes.c        2007-03-23 20:56:45.000000000 +0100
++++ Python-2.5.1/Modules/_ctypes/_ctypes.c     2007-11-22 10:29:01.000000000 +0100
+@@ -3419,7 +3419,9 @@
+       Py_CLEAR(self->paramflags);
+       if (self->thunk) {
++#if FFI_CLOSURES
+               FreeClosure(self->thunk->pcl);
++#endif
+               PyMem_Free(self->thunk);
+               self->thunk = NULL;
+       }
+diff -Naur Python-2.5.1.orig/Modules/_ctypes/ctypes.h Python-2.5.1/Modules/_ctypes/ctypes.h
+--- Python-2.5.1.orig/Modules/_ctypes/ctypes.h 2006-08-14 13:17:48.000000000 +0200
++++ Python-2.5.1/Modules/_ctypes/ctypes.h      2007-11-22 10:29:44.000000000 +0100
+@@ -68,7 +68,9 @@
+ };
+ typedef struct {
++#if FFI_CLOSURES
+       ffi_closure *pcl; /* the C callable */
++#endif
+       ffi_cif cif;
+       PyObject *converters;
+       PyObject *callable;
+diff -Naur Python-2.5.1.orig/Modules/_ctypes/malloc_closure.c Python-2.5.1/Modules/_ctypes/malloc_closure.c
+--- Python-2.5.1.orig/Modules/_ctypes/malloc_closure.c 2006-06-12 22:56:48.000000000 +0200
++++ Python-2.5.1/Modules/_ctypes/malloc_closure.c      2007-11-22 10:30:17.000000000 +0100
+@@ -27,7 +27,9 @@
+ /******************************************************************/
+ typedef union _tagITEM {
++#if FFI_CLOSURES
+       ffi_closure closure;
++#endif
+       union _tagITEM *next;
+ } ITEM;
index 3ac2f7d..c25cd6e 100644 (file)
@@ -7,7 +7,7 @@ DEPENDS = "python-native readline zlib gdbm openssl sqlite3 tcl tk"
 DEPENDS_sharprom = "python-native readline zlib gdbm openssl"
 
 # NOTE: Keep the digit in sync with BASEREV in contrib/generate-manifest-2.5.py
-PR = "ml2"
+PR = "ml3"
 
 PYTHON_MAJMIN = "2.5"
 
@@ -17,6 +17,7 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2 \
            file://fix-tkinter-detection.patch;patch=1 \
            file://autohell.patch;patch=1 \
            file://sitebranding.patch;patch=1 \
+           file://enable-ctypes-module.patch;patch=1 \
            file://default-is-optimized.patch;patch=1"
 S = "${WORKDIR}/Python-${PV}"