[oe-commits] org.oe.dev python 2.5.1 ship sitecustomize.py that enables some convenient features when

mickeyl commit openembedded-commits at lists.openembedded.org
Tue Jan 22 16:03:49 UTC 2008


python 2.5.1 ship sitecustomize.py that enables some convenient features when
working with the interactive interpreter: attribute completion and persistent command history

Author: mickeyl at openembedded.org
Branch: org.openembedded.dev
Revision: e38c7c562b94545c2451edc46a581adb7cf45354
ViewMTN: http://monotone.openembedded.org/revision/info/e38c7c562b94545c2451edc46a581adb7cf45354
Files:
1
packages/python/python-2.5.1/sitecustomize.py
contrib/python/generate-manifest-2.5.py
packages/python/python-2.5-manifest.inc
packages/python/python_2.5.1.bb
Diffs:

#
# mt diff -r8819bbf6f539509b1d3b6df6a827db9c8050a2e3 -re38c7c562b94545c2451edc46a581adb7cf45354
#
# 
# 
# add_file "packages/python/python-2.5.1/sitecustomize.py"
#  content [af970496467ab4f0fbef36bbcac4de27afc77306]
# 
# patch "contrib/python/generate-manifest-2.5.py"
#  from [42794139eb5d2d065e423c46dd2858a4b6a04f34]
#    to [045a4cfcdcfa62445a0716d10a1057f696e9cac2]
# 
# patch "packages/python/python-2.5-manifest.inc"
#  from [222e6f2ebafb935c27a644f71de53f3e6604a0c9]
#    to [0c266696f36458248da59e37a73d4af5fe3dccba]
# 
# patch "packages/python/python_2.5.1.bb"
#  from [0198b3e00fbd71eb80cb5d69bb7d4cba293f89cb]
#    to [55634fe124616917620d9a3239b160c4abcfd772]
# 
============================================================
--- packages/python/python-2.5.1/sitecustomize.py	af970496467ab4f0fbef36bbcac4de27afc77306
+++ packages/python/python-2.5.1/sitecustomize.py	af970496467ab4f0fbef36bbcac4de27afc77306
@@ -0,0 +1,45 @@
+# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer <mlauer at vanille-media.de>
+# GPLv2 or later
+# Version: 20082201
+# Features:
+# * set proper default encoding
+# * enable readline completion in the interactive interpreter
+# * load command line history on startup
+# * save command line history on exit 
+
+HISTORY_FILENAME = "/tmp/python-history-file.txt"
+
+def __exithandler():
+    try:
+        readline.write_history_file( HISTORY_FILENAME )
+    except IOError:
+        pass
+
+def __registerExitHandler():
+    import atexit
+    atexit.register( __exithandler )
+
+def __enableReadlineSupport():
+    readline.parse_and_bind("tab: complete")
+    try:
+        readline.read_history_file( "/tmp/python-history-file.txt" )
+    except IOError:
+        pass
+
+def __enableDefaultEncoding():
+    import sys
+    try:
+        sys.setdefaultencoding('utf8')
+    except LookupError:
+        pass
+
+import sys
+try:
+    import rlcompleter, readline
+except ImportError:
+    sys.stderr.write( "Python %s (OpenEmbedded build) sitecustomize.py not active. Please install python-readline.\n" % sys.version.split()[0] )
+else:
+    __enableDefaultEncoding()
+    __registerExitHandler()
+    __enableReadlineSupport()
+    sys.stderr.write( "Python %s (OpenEmbedded build) sitecustomize.py active.\n" % sys.version.split()[0] )
============================================================
--- contrib/python/generate-manifest-2.5.py	42794139eb5d2d065e423c46dd2858a4b6a04f34
+++ contrib/python/generate-manifest-2.5.py	045a4cfcdcfa62445a0716d10a1057f696e9cac2
@@ -1,7 +1,7 @@
 #!/usr/bin/env python
 
 # generate Python Manifest for the OpenEmbedded build system
-# (C) 2002-2007 Michael 'Mickey' Lauer <mlauer at vanille-media.de>
+# (C) 2002-2008 Michael 'Mickey' Lauer <mlauer at vanille-media.de>
 # (C) 2007 Jeremy Laine
 # licensed under MIT, see COPYING.MIT
 
@@ -10,11 +10,11 @@ VERSION = "2.5.1"
 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 = 6
+# increase when touching python-core, this should be the same ml version as in python_2.5.x.bb
+BASEREV = 7
 
-__author__ = "Michael 'Mickey' Lauer <mickey at Vanille.de>"
-__version__ = "20071205"
+__author__ = "Michael 'Mickey' Lauer <mlauer at vanille-media.de>"
+__version__ = "20080122"
 
 class MakefileMaker:
 
@@ -24,7 +24,7 @@ class MakefileMaker:
         self.targetPrefix = "${libdir}/python%s/" % VERSION[:3]
         self.output = outfile
         self.out( "#" * 120 )
-        self.out( "### AUTO-GENERATED by '%s' [(C) 2002-2007 Michael 'Mickey' Lauer <mlauer at vanille-media.de>] on %s" % ( sys.argv[0], time.asctime() ) )
+        self.out( "### AUTO-GENERATED by '%s' [(C) 2002-2008 Michael 'Mickey' Lauer <mlauer at vanille-media.de>] on %s" % ( sys.argv[0], time.asctime() ) )
         self.out( "###" )
         self.out( "### Visit THE Python for Embedded Systems Site => http://www.Vanille.de/projects/python.spy" )
         self.out( "###" )
============================================================
--- packages/python/python-2.5-manifest.inc	222e6f2ebafb935c27a644f71de53f3e6604a0c9
+++ packages/python/python-2.5-manifest.inc	0c266696f36458248da59e37a73d4af5fe3dccba
@@ -1,5 +1,5 @@
 ########################################################################################################################
-### AUTO-GENERATED by '../../contrib/python/generate-manifest-2.5.py' [(C) 2002-2007 Michael 'Mickey' Lauer <mlauer at vanille-media.de>] on Sun Jan 13 16:02:57 2008
+### AUTO-GENERATED by 'contrib/python/generate-manifest-2.5.py' [(C) 2002-2008 Michael 'Mickey' Lauer <mlauer at vanille-media.de>] on Tue Jan 22 04:03:18 2008
 ###
 ### Visit THE Python for Embedded Systems Site => http://www.Vanille.de/projects/python.spy
 ###
@@ -13,287 +13,287 @@ DESCRIPTION_python-profile="Python Basic
 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="ml6"
+PR_python-profile="ml7"
 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="ml6"
+PR_python-threading="ml7"
 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="ml6"
+PR_python-distutils="ml7"
 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="ml6"
+PR_python-textutils="ml7"
 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="ml6"
+PR_python-codecs="ml7"
 RDEPENDS_python-codecs="python-core python-lang"
 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="ml6"
+PR_python-ctypes="ml7"
 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="ml6"
+PR_python-pickle="ml7"
 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="ml6"
+PR_python-datetime="ml7"
 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="ml6"
+PR_python-core="ml7"
 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="ml6"
+PR_python-io="ml7"
 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="ml6"
+PR_python-compiler="ml7"
 RDEPENDS_python-compiler="python-core"
 FILES_python-compiler="${libdir}/python2.5/compiler "
 
 DESCRIPTION_python-compression="Python High Level Compression Support"
-PR_python-compression="ml6"
+PR_python-compression="ml7"
 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="ml6"
+PR_python-re="ml7"
 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="ml6"
+PR_python-xmlrpc="ml7"
 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="ml6"
+PR_python-terminal="ml7"
 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="ml6"
+PR_python-email="ml7"
 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="ml6"
+PR_python-image="ml7"
 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="ml6"
+PR_python-core-dbg="ml7"
 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="ml6"
+PR_python-resource="ml7"
 RDEPENDS_python-resource="python-core"
 FILES_python-resource="${libdir}/python2.5/lib-dynload/resource.so "
 
 DESCRIPTION_python-devel="Python Development Package"
-PR_python-devel="ml6"
+PR_python-devel="ml7"
 RDEPENDS_python-devel="python-core"
 FILES_python-devel="${includedir} ${libdir}/python2.5/config "
 
 DESCRIPTION_python-math="Python Math Support"
-PR_python-math="ml6"
+PR_python-math="ml7"
 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="ml6"
+PR_python-hotshot="ml7"
 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="ml6"
+PR_python-unixadmin="ml7"
 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="ml6"
+PR_python-syslog="ml7"
 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="ml6"
+PR_python-tkinter="ml7"
 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="ml6"
+PR_python-gdbm="ml7"
 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="ml6"
+PR_python-fcntl="ml7"
 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="ml6"
+PR_python-netclient="ml7"
 RDEPENDS_python-netclient="python-core python-crypt 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="ml6"
+PR_python-pprint="ml7"
 RDEPENDS_python-pprint="python-core"
 FILES_python-pprint="${libdir}/python2.5/pprint.* "
 
 DESCRIPTION_python-netserver="Python Internet Protocol Servers"
-PR_python-netserver="ml6"
+PR_python-netserver="ml7"
 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="ml6"
+PR_python-curses="ml7"
 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="ml6"
+PR_python-smtpd="ml7"
 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="ml6"
+PR_python-html="ml7"
 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="ml6"
+PR_python-readline="ml7"
 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="ml6"
+PR_python-subprocess="ml7"
 RDEPENDS_python-subprocess="python-core python-io python-re python-fcntl python-pickle"
 FILES_python-sub%s
>>> DIFF TRUNCATED @ 16K






More information about the Openembedded-commits mailing list