python: Update 2.5 -> 2.6 (from OE.dev)
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
This commit is contained in:
parent
3b5336f7cf
commit
ba1c4fa944
|
@ -0,0 +1,268 @@
|
|||
|
||||
# WARNING: This file is AUTO GENERATED: Manual edits will be lost next time I regenerate the file.
|
||||
# Generator: '../../contrib/python/generate-manifest-2.6.py' Version 20091004 (C) 2002-2009 Michael 'Mickey' Lauer <mlauer@vanille-media.de>
|
||||
# Visit the Python for Embedded Systems Site => http://www.Vanille.de/projects/python.spy
|
||||
|
||||
|
||||
|
||||
PROVIDES+="python-profile python-threading python-distutils python-doctest python-stringold 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-tests python-core-dbg python-resource python-json python-devel python-difflib python-math python-syslog python-hotshot python-unixadmin python-textutils python-tkinter python-gdbm python-elementtree 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-sqlite3-tests python-unittest python-multiprocessing python-robotparser python-compile python-debugger python-pkgutil python-shell python-bsddb python-mmap python-zlib python-db python-crypt python-idle python-lang python-audio "
|
||||
|
||||
PACKAGES="python-core-dbg python-profile python-threading python-distutils python-doctest python-stringold 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-tests python-resource python-json python-devel python-difflib python-math python-syslog python-hotshot python-unixadmin python-textutils python-tkinter python-gdbm python-elementtree 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-sqlite3-tests python-unittest python-multiprocessing python-robotparser python-compile python-debugger python-pkgutil python-shell python-bsddb python-mmap python-zlib python-db python-crypt python-idle python-lang python-audio python-modules"
|
||||
|
||||
DESCRIPTION_python-profile="Python Basic Profiling Support"
|
||||
RDEPENDS_python-profile="python-core python-textutils"
|
||||
FILES_python-profile="${libdir}/python2.6/profile.* ${libdir}/python2.6/pstats.* ${libdir}/python2.6/cProfile.* ${libdir}/python2.6/lib-dynload/_lsprof.so "
|
||||
|
||||
DESCRIPTION_python-threading="Python Threading & Synchronization Support"
|
||||
RDEPENDS_python-threading="python-core python-lang"
|
||||
FILES_python-threading="${libdir}/python2.6/_threading_local.* ${libdir}/python2.6/dummy_thread.* ${libdir}/python2.6/dummy_threading.* ${libdir}/python2.6/mutex.* ${libdir}/python2.6/threading.* ${libdir}/python2.6/Queue.* "
|
||||
|
||||
DESCRIPTION_python-distutils="Python Distribution Utilities"
|
||||
RDEPENDS_python-distutils="python-core"
|
||||
FILES_python-distutils="${libdir}/python2.6/config ${libdir}/python2.6/distutils "
|
||||
|
||||
DESCRIPTION_python-doctest="Python framework for running examples in docstrings."
|
||||
RDEPENDS_python-doctest="python-core python-lang python-io python-re python-unittest python-debugger python-difflib"
|
||||
FILES_python-doctest="${libdir}/python2.6/doctest.* "
|
||||
|
||||
DESCRIPTION_python-stringold="Python String APIs [deprecated]"
|
||||
RDEPENDS_python-stringold="python-core python-re"
|
||||
FILES_python-stringold="${libdir}/python2.6/lib-dynload/strop.so ${libdir}/python2.6/string.* "
|
||||
|
||||
DESCRIPTION_python-codecs="Python Codecs, Encodings & i18n Support"
|
||||
RDEPENDS_python-codecs="python-core python-lang"
|
||||
FILES_python-codecs="${libdir}/python2.6/codecs.* ${libdir}/python2.6/encodings ${libdir}/python2.6/gettext.* ${libdir}/python2.6/locale.* ${libdir}/python2.6/lib-dynload/_locale.so ${libdir}/python2.6/lib-dynload/unicodedata.so ${libdir}/python2.6/stringprep.* ${libdir}/python2.6/xdrlib.* "
|
||||
|
||||
DESCRIPTION_python-ctypes="Python C Types Support"
|
||||
RDEPENDS_python-ctypes="python-core"
|
||||
FILES_python-ctypes="${libdir}/python2.6/ctypes ${libdir}/python2.6/lib-dynload/_ctypes.so "
|
||||
|
||||
DESCRIPTION_python-pickle="Python Persistence Support"
|
||||
RDEPENDS_python-pickle="python-core python-codecs python-io python-re"
|
||||
FILES_python-pickle="${libdir}/python2.6/pickle.* ${libdir}/python2.6/shelve.* ${libdir}/python2.6/lib-dynload/cPickle.so "
|
||||
|
||||
DESCRIPTION_python-datetime="Python Calendar and Time support"
|
||||
RDEPENDS_python-datetime="python-core python-codecs"
|
||||
FILES_python-datetime="${libdir}/python2.6/_strptime.* ${libdir}/python2.6/calendar.* ${libdir}/python2.6/lib-dynload/datetime.so "
|
||||
|
||||
DESCRIPTION_python-core="Python Interpreter and core modules (needed!)"
|
||||
RDEPENDS_python-core=""
|
||||
FILES_python-core="${libdir}/python2.6/__future__.* ${libdir}/python2.6/_abcoll.* ${libdir}/python2.6/abc.* ${libdir}/python2.6/copy.* ${libdir}/python2.6/copy_reg.* ${libdir}/python2.6/ConfigParser.* ${libdir}/python2.6/genericpath.* ${libdir}/python2.6/getopt.* ${libdir}/python2.6/linecache.* ${libdir}/python2.6/new.* ${libdir}/python2.6/os.* ${libdir}/python2.6/posixpath.* ${libdir}/python2.6/struct.* ${libdir}/python2.6/warnings.* ${libdir}/python2.6/site.* ${libdir}/python2.6/stat.* ${libdir}/python2.6/UserDict.* ${libdir}/python2.6/UserList.* ${libdir}/python2.6/UserString.* ${libdir}/python2.6/lib-dynload/binascii.so ${libdir}/python2.6/lib-dynload/_struct.so ${libdir}/python2.6/lib-dynload/time.so ${libdir}/python2.6/lib-dynload/xreadlines.so ${libdir}/python2.6/types.* ${bindir}/python* "
|
||||
|
||||
DESCRIPTION_python-io="Python Low-Level I/O"
|
||||
RDEPENDS_python-io="python-core python-math"
|
||||
FILES_python-io="${libdir}/python2.6/lib-dynload/_socket.so ${libdir}/python2.6/lib-dynload/_ssl.so ${libdir}/python2.6/lib-dynload/select.so ${libdir}/python2.6/lib-dynload/termios.so ${libdir}/python2.6/lib-dynload/cStringIO.so ${libdir}/python2.6/pipes.* ${libdir}/python2.6/socket.* ${libdir}/python2.6/tempfile.* ${libdir}/python2.6/StringIO.* "
|
||||
|
||||
DESCRIPTION_python-compiler="Python Compiler Support"
|
||||
RDEPENDS_python-compiler="python-core"
|
||||
FILES_python-compiler="${libdir}/python2.6/compiler "
|
||||
|
||||
DESCRIPTION_python-compression="Python High Level Compression Support"
|
||||
RDEPENDS_python-compression="python-core python-zlib"
|
||||
FILES_python-compression="${libdir}/python2.6/gzip.* ${libdir}/python2.6/zipfile.* ${libdir}/python2.6/tarfile.* ${libdir}/python2.6/lib-dynload/bz2.so "
|
||||
|
||||
DESCRIPTION_python-re="Python Regular Expression APIs"
|
||||
RDEPENDS_python-re="python-core"
|
||||
FILES_python-re="${libdir}/python2.6/re.* ${libdir}/python2.6/sre.* ${libdir}/python2.6/sre_compile.* ${libdir}/python2.6/sre_constants* ${libdir}/python2.6/sre_parse.* "
|
||||
|
||||
DESCRIPTION_python-xmlrpc="Python XMLRPC Support"
|
||||
RDEPENDS_python-xmlrpc="python-core python-xml python-netserver python-lang"
|
||||
FILES_python-xmlrpc="${libdir}/python2.6/xmlrpclib.* ${libdir}/python2.6/SimpleXMLRPCServer.* "
|
||||
|
||||
DESCRIPTION_python-terminal="Python Terminal Controlling Support"
|
||||
RDEPENDS_python-terminal="python-core python-io"
|
||||
FILES_python-terminal="${libdir}/python2.6/pty.* ${libdir}/python2.6/tty.* "
|
||||
|
||||
DESCRIPTION_python-email="Python Email Support"
|
||||
RDEPENDS_python-email="python-core python-io python-re python-mime python-audio python-image python-netclient"
|
||||
FILES_python-email="${libdir}/python2.6/imaplib.* ${libdir}/python2.6/email "
|
||||
|
||||
DESCRIPTION_python-image="Python Graphical Image Handling"
|
||||
RDEPENDS_python-image="python-core"
|
||||
FILES_python-image="${libdir}/python2.6/colorsys.* ${libdir}/python2.6/imghdr.* ${libdir}/python2.6/lib-dynload/imageop.so ${libdir}/python2.6/lib-dynload/rgbimg.so "
|
||||
|
||||
DESCRIPTION_python-tests="Python Tests"
|
||||
RDEPENDS_python-tests="python-core"
|
||||
FILES_python-tests="${libdir}/python2.6/test "
|
||||
|
||||
DESCRIPTION_python-core-dbg="Python core module debug information"
|
||||
RDEPENDS_python-core-dbg="python-core"
|
||||
FILES_python-core-dbg="${libdir}/python2.6/config/.debug ${libdir}/python2.6/lib-dynload/.debug ${bindir}/.debug ${libdir}/.debug "
|
||||
|
||||
DESCRIPTION_python-resource="Python Resource Control Interface"
|
||||
RDEPENDS_python-resource="python-core"
|
||||
FILES_python-resource="${libdir}/python2.6/lib-dynload/resource.so "
|
||||
|
||||
DESCRIPTION_python-json="Python JSON Support"
|
||||
RDEPENDS_python-json="python-core python-math python-re"
|
||||
FILES_python-json="${libdir}/python2.6/json "
|
||||
|
||||
DESCRIPTION_python-devel="Python Development Package"
|
||||
RDEPENDS_python-devel="python-core"
|
||||
FILES_python-devel="${includedir} ${libdir}/libpython2.6.so ${libdir}/python2.6/config "
|
||||
|
||||
DESCRIPTION_python-difflib="Python helpers for computing deltas between objects."
|
||||
RDEPENDS_python-difflib="python-lang python-re"
|
||||
FILES_python-difflib="${libdir}/python2.6/difflib.* "
|
||||
|
||||
DESCRIPTION_python-math="Python Math Support"
|
||||
RDEPENDS_python-math="python-core"
|
||||
FILES_python-math="${libdir}/python2.6/lib-dynload/cmath.so ${libdir}/python2.6/lib-dynload/math.so ${libdir}/python2.6/lib-dynload/_random.so ${libdir}/python2.6/random.* ${libdir}/python2.6/sets.* "
|
||||
|
||||
DESCRIPTION_python-syslog="Python Syslog Interface"
|
||||
RDEPENDS_python-syslog="python-core"
|
||||
FILES_python-syslog="${libdir}/python2.6/lib-dynload/syslog.so "
|
||||
|
||||
DESCRIPTION_python-hotshot="Python Hotshot Profiler"
|
||||
RDEPENDS_python-hotshot="python-core"
|
||||
FILES_python-hotshot="${libdir}/python2.6/hotshot ${libdir}/python2.6/lib-dynload/_hotshot.so "
|
||||
|
||||
DESCRIPTION_python-unixadmin="Python Unix Administration Support"
|
||||
RDEPENDS_python-unixadmin="python-core"
|
||||
FILES_python-unixadmin="${libdir}/python2.6/lib-dynload/nis.so ${libdir}/python2.6/lib-dynload/grp.so ${libdir}/python2.6/lib-dynload/pwd.so ${libdir}/python2.6/getpass.* "
|
||||
|
||||
DESCRIPTION_python-textutils="Python Option Parsing, Text Wrapping and Comma-Separated-Value Support"
|
||||
RDEPENDS_python-textutils="python-core python-io python-re python-stringold"
|
||||
FILES_python-textutils="${libdir}/python2.6/lib-dynload/_csv.so ${libdir}/python2.6/csv.* ${libdir}/python2.6/optparse.* ${libdir}/python2.6/textwrap.* "
|
||||
|
||||
DESCRIPTION_python-tkinter="Python Tcl/Tk Bindings"
|
||||
RDEPENDS_python-tkinter="python-core"
|
||||
FILES_python-tkinter="${libdir}/python2.6/lib-dynload/_tkinter.so ${libdir}/python2.6/lib-tk "
|
||||
|
||||
DESCRIPTION_python-gdbm="Python GNU Database Support"
|
||||
RDEPENDS_python-gdbm="python-core"
|
||||
FILES_python-gdbm="${libdir}/python2.6/lib-dynload/gdbm.so "
|
||||
|
||||
DESCRIPTION_python-elementtree="Python elementree"
|
||||
RDEPENDS_python-elementtree="python-core"
|
||||
FILES_python-elementtree="${libdir}/python2.6/lib-dynload/_elementtree.so "
|
||||
|
||||
DESCRIPTION_python-fcntl="Python's fcntl Interface"
|
||||
RDEPENDS_python-fcntl="python-core"
|
||||
FILES_python-fcntl="${libdir}/python2.6/lib-dynload/fcntl.so "
|
||||
|
||||
DESCRIPTION_python-netclient="Python Internet Protocol Clients"
|
||||
RDEPENDS_python-netclient="python-core python-crypt python-datetime python-io python-lang python-logging python-mime"
|
||||
FILES_python-netclient="${libdir}/python2.6/*Cookie*.* ${libdir}/python2.6/base64.* ${libdir}/python2.6/cookielib.* ${libdir}/python2.6/ftplib.* ${libdir}/python2.6/gopherlib.* ${libdir}/python2.6/hmac.* ${libdir}/python2.6/httplib.* ${libdir}/python2.6/mimetypes.* ${libdir}/python2.6/nntplib.* ${libdir}/python2.6/poplib.* ${libdir}/python2.6/smtplib.* ${libdir}/python2.6/telnetlib.* ${libdir}/python2.6/urllib.* ${libdir}/python2.6/urllib2.* ${libdir}/python2.6/urlparse.* ${libdir}/python2.6/uuid.* ${libdir}/python2.6/rfc822.* ${libdir}/python2.6/mimetools.* "
|
||||
|
||||
DESCRIPTION_python-pprint="Python Pretty-Print Support"
|
||||
RDEPENDS_python-pprint="python-core"
|
||||
FILES_python-pprint="${libdir}/python2.6/pprint.* "
|
||||
|
||||
DESCRIPTION_python-netserver="Python Internet Protocol Servers"
|
||||
RDEPENDS_python-netserver="python-core python-netclient"
|
||||
FILES_python-netserver="${libdir}/python2.6/cgi.* ${libdir}/python2.6/*HTTPServer.* ${libdir}/python2.6/SocketServer.* "
|
||||
|
||||
DESCRIPTION_python-curses="Python Curses Support"
|
||||
RDEPENDS_python-curses="python-core"
|
||||
FILES_python-curses="${libdir}/python2.6/curses ${libdir}/python2.6/lib-dynload/_curses.so ${libdir}/python2.6/lib-dynload/_curses_panel.so "
|
||||
|
||||
DESCRIPTION_python-smtpd="Python Simple Mail Transport Daemon"
|
||||
RDEPENDS_python-smtpd="python-core python-netserver python-email python-mime"
|
||||
FILES_python-smtpd="${bindir}/smtpd.* "
|
||||
|
||||
DESCRIPTION_python-html="Python HTML Processing"
|
||||
RDEPENDS_python-html="python-core"
|
||||
FILES_python-html="${libdir}/python2.6/formatter.* ${libdir}/python2.6/htmlentitydefs.* ${libdir}/python2.6/htmllib.* ${libdir}/python2.6/markupbase.* ${libdir}/python2.6/sgmllib.* "
|
||||
|
||||
DESCRIPTION_python-readline="Python Readline Support"
|
||||
RDEPENDS_python-readline="python-core"
|
||||
FILES_python-readline="${libdir}/python2.6/lib-dynload/readline.so ${libdir}/python2.6/rlcompleter.* "
|
||||
|
||||
DESCRIPTION_python-subprocess="Python Subprocess Support"
|
||||
RDEPENDS_python-subprocess="python-core python-io python-re python-fcntl python-pickle"
|
||||
FILES_python-subprocess="${libdir}/python2.6/subprocess.* "
|
||||
|
||||
DESCRIPTION_python-pydoc="Python Interactive Help Support"
|
||||
RDEPENDS_python-pydoc="python-core python-lang python-stringold python-re"
|
||||
FILES_python-pydoc="${bindir}/pydoc ${libdir}/python2.6/pydoc.* "
|
||||
|
||||
DESCRIPTION_python-logging="Python Logging Support"
|
||||
RDEPENDS_python-logging="python-core python-io python-lang python-pickle python-stringold"
|
||||
FILES_python-logging="${libdir}/python2.6/logging "
|
||||
|
||||
DESCRIPTION_python-mailbox="Python Mailbox Format Support"
|
||||
RDEPENDS_python-mailbox="python-core python-mime"
|
||||
FILES_python-mailbox="${libdir}/python2.6/mailbox.* "
|
||||
|
||||
DESCRIPTION_python-xml="Python basic XML support."
|
||||
RDEPENDS_python-xml="python-core python-re"
|
||||
FILES_python-xml="${libdir}/python2.6/lib-dynload/pyexpat.so ${libdir}/python2.6/xml ${libdir}/python2.6/xmllib.* "
|
||||
|
||||
DESCRIPTION_python-mime="Python MIME Handling APIs"
|
||||
RDEPENDS_python-mime="python-core python-io"
|
||||
FILES_python-mime="${libdir}/python2.6/mimetools.* ${libdir}/python2.6/uu.* ${libdir}/python2.6/quopri.* ${libdir}/python2.6/rfc822.* "
|
||||
|
||||
DESCRIPTION_python-sqlite3="Python Sqlite3 Database Support"
|
||||
RDEPENDS_python-sqlite3="python-core python-datetime python-lang python-crypt python-io python-threading python-zlib"
|
||||
FILES_python-sqlite3="${libdir}/python2.6/lib-dynload/_sqlite3.so ${libdir}/python2.6/sqlite3/dbapi2.* ${libdir}/python2.6/sqlite3/__init__.* ${libdir}/python2.6/sqlite3/dump.* "
|
||||
|
||||
DESCRIPTION_python-sqlite3-tests="Python Sqlite3 Database Support Tests"
|
||||
RDEPENDS_python-sqlite3-tests="python-core python-sqlite3"
|
||||
FILES_python-sqlite3-tests="${libdir}/python2.6/sqlite3/test "
|
||||
|
||||
DESCRIPTION_python-unittest="Python Unit Testing Framework"
|
||||
RDEPENDS_python-unittest="python-core python-stringold python-lang"
|
||||
FILES_python-unittest="${libdir}/python2.6/unittest.* "
|
||||
|
||||
DESCRIPTION_python-multiprocessing="Python Multiprocessing Support"
|
||||
RDEPENDS_python-multiprocessing="python-core python-io python-lang"
|
||||
FILES_python-multiprocessing="${libdir}/python2.6/lib-dynload/_multiprocessing.so ${libdir}/python2.6/multiprocessing "
|
||||
|
||||
DESCRIPTION_python-robotparser="Python robots.txt parser"
|
||||
RDEPENDS_python-robotparser="python-core python-netclient"
|
||||
FILES_python-robotparser="${libdir}/python2.6/robotparser.* "
|
||||
|
||||
DESCRIPTION_python-compile="Python Bytecode Compilation Support"
|
||||
RDEPENDS_python-compile="python-core"
|
||||
FILES_python-compile="${libdir}/python2.6/py_compile.* ${libdir}/python2.6/compileall.* "
|
||||
|
||||
DESCRIPTION_python-debugger="Python Debugger"
|
||||
RDEPENDS_python-debugger="python-core python-io python-lang python-re python-stringold python-shell python-pprint"
|
||||
FILES_python-debugger="${libdir}/python2.6/bdb.* ${libdir}/python2.6/pdb.* "
|
||||
|
||||
DESCRIPTION_python-pkgutil="Python Package Extension Utility Support"
|
||||
RDEPENDS_python-pkgutil="python-core"
|
||||
FILES_python-pkgutil="${libdir}/python2.6/pkgutil.* "
|
||||
|
||||
DESCRIPTION_python-shell="Python Shell-Like Functionality"
|
||||
RDEPENDS_python-shell="python-core python-re"
|
||||
FILES_python-shell="${libdir}/python2.6/cmd.* ${libdir}/python2.6/commands.* ${libdir}/python2.6/dircache.* ${libdir}/python2.6/fnmatch.* ${libdir}/python2.6/glob.* ${libdir}/python2.6/popen2.* ${libdir}/python2.6/shlex.* ${libdir}/python2.6/shutil.* "
|
||||
|
||||
DESCRIPTION_python-bsddb="Python Berkeley Database Bindings"
|
||||
RDEPENDS_python-bsddb="python-core"
|
||||
FILES_python-bsddb="${libdir}/python2.6/bsddb ${libdir}/python2.6/lib-dynload/_bsddb.so "
|
||||
|
||||
DESCRIPTION_python-mmap="Python Memory-Mapped-File Support"
|
||||
RDEPENDS_python-mmap="python-core python-io"
|
||||
FILES_python-mmap="${libdir}/python2.6/lib-dynload/mmap.so "
|
||||
|
||||
DESCRIPTION_python-zlib="Python zlib Support."
|
||||
RDEPENDS_python-zlib="python-core"
|
||||
FILES_python-zlib="${libdir}/python2.6/lib-dynload/zlib.so "
|
||||
|
||||
DESCRIPTION_python-db="Python File-Based Database Support"
|
||||
RDEPENDS_python-db="python-core"
|
||||
FILES_python-db="${libdir}/python2.6/anydbm.* ${libdir}/python2.6/dumbdbm.* ${libdir}/python2.6/whichdb.* "
|
||||
|
||||
DESCRIPTION_python-crypt="Python Basic Cryptographic and Hashing Support"
|
||||
RDEPENDS_python-crypt="python-core"
|
||||
FILES_python-crypt="${libdir}/python2.6/hashlib.* ${libdir}/python2.6/md5.* ${libdir}/python2.6/sha.* ${libdir}/python2.6/lib-dynload/crypt.so ${libdir}/python2.6/lib-dynload/_hashlib.so ${libdir}/python2.6/lib-dynload/_sha256.so ${libdir}/python2.6/lib-dynload/_sha512.so "
|
||||
|
||||
DESCRIPTION_python-idle="Python Integrated Development Environment"
|
||||
RDEPENDS_python-idle="python-core python-tkinter"
|
||||
FILES_python-idle="${bindir}/idle ${libdir}/python2.6/idlelib "
|
||||
|
||||
DESCRIPTION_python-lang="Python Low-Level Language Support"
|
||||
RDEPENDS_python-lang="python-core"
|
||||
FILES_python-lang="${libdir}/python2.6/lib-dynload/_bisect.so ${libdir}/python2.6/lib-dynload/_collections.so ${libdir}/python2.6/lib-dynload/_heapq.so ${libdir}/python2.6/lib-dynload/_weakref.so ${libdir}/python2.6/lib-dynload/_functools.so ${libdir}/python2.6/lib-dynload/array.so ${libdir}/python2.6/lib-dynload/itertools.so ${libdir}/python2.6/lib-dynload/operator.so ${libdir}/python2.6/lib-dynload/parser.so ${libdir}/python2.6/atexit.* ${libdir}/python2.6/bisect.* ${libdir}/python2.6/code.* ${libdir}/python2.6/codeop.* ${libdir}/python2.6/collections.* ${libdir}/python2.6/dis.* ${libdir}/python2.6/functools.* ${libdir}/python2.6/heapq.* ${libdir}/python2.6/inspect.* ${libdir}/python2.6/keyword.* ${libdir}/python2.6/opcode.* ${libdir}/python2.6/symbol.* ${libdir}/python2.6/repr.* ${libdir}/python2.6/token.* ${libdir}/python2.6/tokenize.* ${libdir}/python2.6/traceback.* ${libdir}/python2.6/linecache.* ${libdir}/python2.6/weakref.* "
|
||||
|
||||
DESCRIPTION_python-audio="Python Audio Handling"
|
||||
RDEPENDS_python-audio="python-core"
|
||||
FILES_python-audio="${libdir}/python2.6/wave.* ${libdir}/python2.6/chunk.* ${libdir}/python2.6/sndhdr.* ${libdir}/python2.6/lib-dynload/ossaudiodev.so ${libdir}/python2.6/lib-dynload/audioop.so "
|
||||
|
||||
DESCRIPTION_python-modules="All Python modules"
|
||||
RDEPENDS_python-modules="python-profile python-threading python-distutils python-doctest python-stringold 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-tests python-resource python-json python-devel python-difflib python-math python-syslog python-hotshot python-unixadmin python-textutils python-tkinter python-gdbm python-elementtree 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-sqlite3-tests python-unittest python-multiprocessing python-robotparser python-compile python-debugger python-pkgutil python-shell python-bsddb python-mmap python-zlib python-db python-crypt python-idle python-lang python-audio "
|
||||
ALLOW_EMPTY_python-modules = "1"
|
||||
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
# $(exec_prefix) points to the wrong directory, when installing
|
||||
# a cross-build. @bindir@ and @libdir@ works better and doesn't
|
||||
# affect the native build.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
|
||||
Index: Python-2.6.1/Makefile.pre.in
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Makefile.pre.in
|
||||
+++ Python-2.6.1/Makefile.pre.in
|
||||
@@ -86,8 +86,8 @@ exec_prefix= @exec_prefix@
|
||||
datarootdir= @datarootdir@
|
||||
|
||||
# Expanded directories
|
||||
-BINDIR= $(exec_prefix)/bin
|
||||
-LIBDIR= $(exec_prefix)/lib
|
||||
+BINDIR= @bindir@
|
||||
+LIBDIR= @libdir@
|
||||
MANDIR= @mandir@
|
||||
INCLUDEDIR= @includedir@
|
||||
CONFINCLUDEDIR= $(exec_prefix)/include
|
116
meta/packages/python/python-2.6.1/01-use-proper-tools-for-cross-build.patch
vendored
Normal file
116
meta/packages/python/python-2.6.1/01-use-proper-tools-for-cross-build.patch
vendored
Normal file
|
@ -0,0 +1,116 @@
|
|||
# We need to ensure our host tools get run during build, not the freshly
|
||||
# built cross-tools (this will not work), so we introduce HOSTPYTHON and HOSTPGEN.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
|
||||
Index: Python-2.6.1/Makefile.pre.in
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Makefile.pre.in
|
||||
+++ Python-2.6.1/Makefile.pre.in
|
||||
@@ -175,6 +175,7 @@ UNICODE_OBJS= @UNICODE_OBJS@
|
||||
|
||||
PYTHON= python$(EXE)
|
||||
BUILDPYTHON= python$(BUILDEXE)
|
||||
+HOSTPYTHON= $(BUILDPYTHON)
|
||||
|
||||
# The task to run while instrument when building the profile-opt target
|
||||
PROFILE_TASK= $(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck
|
||||
@@ -205,7 +206,7 @@ GRAMMAR_INPUT= $(srcdir)/Grammar/Grammar
|
||||
##########################################################################
|
||||
# Parser
|
||||
PGEN= Parser/pgen$(EXE)
|
||||
-
|
||||
+HOSTPGEN= $(PGEN)$(EXE)
|
||||
POBJS= \
|
||||
Parser/acceler.o \
|
||||
Parser/grammar1.o \
|
||||
@@ -394,8 +395,8 @@ platform: $(BUILDPYTHON)
|
||||
# Build the shared modules
|
||||
sharedmods: $(BUILDPYTHON)
|
||||
@case $$MAKEFLAGS in \
|
||||
- *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \
|
||||
- *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \
|
||||
+ *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' $(HOSTPYTHON) -E $(srcdir)/setup.py -q build;; \
|
||||
+ *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' $(HOSTPYTHON) -E $(srcdir)/setup.py build;; \
|
||||
esac
|
||||
|
||||
# Build static library
|
||||
@@ -513,7 +514,7 @@ Modules/python.o: $(srcdir)/Modules/pyth
|
||||
|
||||
$(GRAMMAR_H) $(GRAMMAR_C): $(PGEN) $(GRAMMAR_INPUT)
|
||||
-@$(INSTALL) -d Include
|
||||
- -$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
|
||||
+ -$(HOSTPGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
|
||||
|
||||
$(PGEN): $(PGENOBJS)
|
||||
$(CC) $(OPT) $(LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN)
|
||||
@@ -879,23 +880,23 @@ libinstall: build_all $(srcdir)/Lib/$(PL
|
||||
done
|
||||
$(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt
|
||||
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||
- ./$(BUILDPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
+ $(HOSTPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
-d $(LIBDEST) -f \
|
||||
-x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST)
|
||||
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||
- ./$(BUILDPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
+ $(HOSTPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
-d $(LIBDEST) -f \
|
||||
-x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST)
|
||||
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||
- ./$(BUILDPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
+ $(HOSTPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
-d $(LIBDEST)/site-packages -f \
|
||||
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
|
||||
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||
- ./$(BUILDPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
+ $(HOSTPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
-d $(LIBDEST)/site-packages -f \
|
||||
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
|
||||
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||
- ./$(BUILDPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()"
|
||||
+ $(HOSTPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()"
|
||||
|
||||
# Create the PLATDIR source directory, if one wasn't distributed..
|
||||
$(srcdir)/Lib/$(PLATDIR):
|
||||
@@ -993,7 +994,7 @@ libainstall: all
|
||||
# Install the dynamically loadable modules
|
||||
# This goes into $(exec_prefix)
|
||||
sharedinstall:
|
||||
- $(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py install \
|
||||
+ $(RUNSHARED) $(HOSTPYTHON) -E $(srcdir)/setup.py install \
|
||||
--prefix=$(prefix) \
|
||||
--install-scripts=$(BINDIR) \
|
||||
--install-platlib=$(DESTSHARED) \
|
||||
Index: Python-2.6.1/setup.py
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/setup.py
|
||||
+++ Python-2.6.1/setup.py
|
||||
@@ -276,6 +276,7 @@ class PyBuildExt(build_ext):
|
||||
self.failed.append(ext.name)
|
||||
self.announce('*** WARNING: renaming "%s" since importing it'
|
||||
' failed: %s' % (ext.name, why), level=3)
|
||||
+ return
|
||||
assert not self.inplace
|
||||
basename, tail = os.path.splitext(ext_filename)
|
||||
newname = basename + "_failed" + tail
|
||||
@@ -310,8 +311,8 @@ class PyBuildExt(build_ext):
|
||||
|
||||
def detect_modules(self):
|
||||
# Ensure that /usr/local is always used
|
||||
- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
||||
- add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
||||
+ # add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
||||
+ # add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
||||
|
||||
# Add paths specified in the environment variables LDFLAGS and
|
||||
# CPPFLAGS for header and library files.
|
||||
@@ -410,6 +411,9 @@ class PyBuildExt(build_ext):
|
||||
|
||||
# XXX Omitted modules: gl, pure, dl, SGI-specific modules
|
||||
|
||||
+ lib_dirs = [ os.getenv( "STAGING_LIBDIR" ) ]
|
||||
+ inc_dirs = [ os.getenv( "STAGING_INCDIR" ) ]
|
||||
+
|
||||
#
|
||||
# The following modules are all pretty straightforward, and compile
|
||||
# on pretty much any POSIXish platform.
|
|
@ -0,0 +1,94 @@
|
|||
# OpenEmbedded prepopulates the autotools site cache, so if this
|
||||
# would be using AC_TRY_CACHE, we could patch it in a more sane way
|
||||
# Alas, I don't have enough autotalent to do that.
|
||||
#
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
Index: Python-2.6.1/configure.in
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/configure.in
|
||||
+++ Python-2.6.1/configure.in
|
||||
@@ -2556,38 +2556,6 @@ AC_CHECK_LIB(c, inet_aton, [$ac_cv_prog_
|
||||
AC_CHECK_LIB(resolv, inet_aton)
|
||||
)
|
||||
|
||||
-# On Tru64, chflags seems to be present, but calling it will
|
||||
-# exit Python
|
||||
-AC_MSG_CHECKING(for chflags)
|
||||
-AC_TRY_RUN([
|
||||
-#include <sys/stat.h>
|
||||
-#include <unistd.h>
|
||||
-int main(int argc, char*argv[])
|
||||
-{
|
||||
- if(chflags(argv[0], 0) != 0)
|
||||
- return 1;
|
||||
- return 0;
|
||||
-}
|
||||
-],AC_DEFINE(HAVE_CHFLAGS, 1, Define to 1 if you have the `chflags' function.)
|
||||
- AC_MSG_RESULT(yes),
|
||||
- AC_MSG_RESULT(no)
|
||||
-)
|
||||
-
|
||||
-AC_MSG_CHECKING(for lchflags)
|
||||
-AC_TRY_RUN([
|
||||
-#include <sys/stat.h>
|
||||
-#include <unistd.h>
|
||||
-int main(int argc, char*argv[])
|
||||
-{
|
||||
- if(lchflags(argv[0], 0) != 0)
|
||||
- return 1;
|
||||
- return 0;
|
||||
-}
|
||||
-],AC_DEFINE(HAVE_LCHFLAGS, 1, Define to 1 if you have the `lchflags' function.)
|
||||
- AC_MSG_RESULT(yes),
|
||||
- AC_MSG_RESULT(no)
|
||||
-)
|
||||
-
|
||||
dnl Check if system zlib has *Copy() functions
|
||||
dnl
|
||||
dnl On MacOSX the linker will search for dylibs on the entire linker path
|
||||
@@ -3649,45 +3617,6 @@ else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
|
||||
-AC_MSG_CHECKING(for %zd printf() format support)
|
||||
-AC_TRY_RUN([#include <stdio.h>
|
||||
-#include <stddef.h>
|
||||
-#include <string.h>
|
||||
-
|
||||
-#ifdef HAVE_SYS_TYPES_H
|
||||
-#include <sys/types.h>
|
||||
-#endif
|
||||
-
|
||||
-#ifdef HAVE_SSIZE_T
|
||||
-typedef ssize_t Py_ssize_t;
|
||||
-#elif SIZEOF_VOID_P == SIZEOF_LONG
|
||||
-typedef long Py_ssize_t;
|
||||
-#else
|
||||
-typedef int Py_ssize_t;
|
||||
-#endif
|
||||
-
|
||||
-int main()
|
||||
-{
|
||||
- char buffer[256];
|
||||
-
|
||||
- if(sprintf(buffer, "%zd", (size_t)123) < 0)
|
||||
- return 1;
|
||||
-
|
||||
- if (strcmp(buffer, "123"))
|
||||
- return 1;
|
||||
-
|
||||
- if (sprintf(buffer, "%zd", (Py_ssize_t)-123) < 0)
|
||||
- return 1;
|
||||
-
|
||||
- if (strcmp(buffer, "-123"))
|
||||
- return 1;
|
||||
-
|
||||
- return 0;
|
||||
-}],
|
||||
-[AC_MSG_RESULT(yes)
|
||||
- AC_DEFINE(PY_FORMAT_SIZE_T, "z", [Define to printf format modifier for Py_ssize_t])],
|
||||
- AC_MSG_RESULT(no))
|
||||
-
|
||||
AC_CHECK_TYPE(socklen_t,,
|
||||
AC_DEFINE(socklen_t,int,
|
||||
Define to `int' if <sys/socket.h> does not define.),[
|
|
@ -0,0 +1,40 @@
|
|||
# We need to supply STAGING_INCDIR here, otherwise the Tk headers
|
||||
# will not be found.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille.de>
|
||||
|
||||
Index: Python-2.6.1/setup.py
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/setup.py
|
||||
+++ Python-2.6.1/setup.py
|
||||
@@ -1543,7 +1543,7 @@ class PyBuildExt(build_ext):
|
||||
dotversion = dotversion[:-1] + '.' + dotversion[-1]
|
||||
tcl_include_sub = []
|
||||
tk_include_sub = []
|
||||
- for dir in inc_dirs:
|
||||
+ for dir in [os.getenv("STAGING_INCDIR")]:
|
||||
tcl_include_sub += [dir + os.sep + "tcl" + dotversion]
|
||||
tk_include_sub += [dir + os.sep + "tk" + dotversion]
|
||||
tk_include_sub += tcl_include_sub
|
||||
@@ -1562,22 +1562,6 @@ class PyBuildExt(build_ext):
|
||||
if dir not in include_dirs:
|
||||
include_dirs.append(dir)
|
||||
|
||||
- # Check for various platform-specific directories
|
||||
- if platform == 'sunos5':
|
||||
- include_dirs.append('/usr/openwin/include')
|
||||
- added_lib_dirs.append('/usr/openwin/lib')
|
||||
- elif os.path.exists('/usr/X11R6/include'):
|
||||
- include_dirs.append('/usr/X11R6/include')
|
||||
- added_lib_dirs.append('/usr/X11R6/lib64')
|
||||
- added_lib_dirs.append('/usr/X11R6/lib')
|
||||
- elif os.path.exists('/usr/X11R5/include'):
|
||||
- include_dirs.append('/usr/X11R5/include')
|
||||
- added_lib_dirs.append('/usr/X11R5/lib')
|
||||
- else:
|
||||
- # Assume default location for X11
|
||||
- include_dirs.append('/usr/X11/include')
|
||||
- added_lib_dirs.append('/usr/X11/lib')
|
||||
-
|
||||
# If Cygwin, then verify that X is installed before proceeding
|
||||
if platform == 'cygwin':
|
||||
x11_inc = find_file('X11/Xlib.h', [], include_dirs)
|
|
@ -0,0 +1,52 @@
|
|||
# when compiling for an embedded system, we need every bit of
|
||||
# performance we can get. default to optimized with the option
|
||||
# of opt-out.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
|
||||
Index: Python-2.6.1/Python/compile.c
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Python/compile.c
|
||||
+++ Python-2.6.1/Python/compile.c
|
||||
@@ -32,7 +32,7 @@
|
||||
#include "symtable.h"
|
||||
#include "opcode.h"
|
||||
|
||||
-int Py_OptimizeFlag = 0;
|
||||
+int Py_OptimizeFlag = 1;
|
||||
|
||||
#define DEFAULT_BLOCK_SIZE 16
|
||||
#define DEFAULT_BLOCKS 8
|
||||
Index: Python-2.6.1/Modules/main.c
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Modules/main.c
|
||||
+++ Python-2.6.1/Modules/main.c
|
||||
@@ -40,7 +40,7 @@ static char **orig_argv;
|
||||
static int orig_argc;
|
||||
|
||||
/* command line options */
|
||||
-#define BASE_OPTS "3bBc:dEhiJm:OQ:sStuUvVW:xX?"
|
||||
+#define BASE_OPTS "3bBc:dEhiJm:NOQ:sStuUvVW:xX?"
|
||||
|
||||
#ifndef RISCOS
|
||||
#define PROGRAM_OPTS BASE_OPTS
|
||||
@@ -69,8 +69,7 @@ Options and arguments (and corresponding
|
||||
static char *usage_2 = "\
|
||||
if stdin does not appear to be a terminal; also PYTHONINSPECT=x\n\
|
||||
-m mod : run library module as a script (terminates option list)\n\
|
||||
--O : optimize generated bytecode slightly; also PYTHONOPTIMIZE=x\n\
|
||||
--OO : remove doc-strings in addition to the -O optimizations\n\
|
||||
+-N : do NOT optimize generated bytecode\n\
|
||||
-Q arg : division options: -Qold (default), -Qwarn, -Qwarnall, -Qnew\n\
|
||||
-s : don't add user site directory to sys.path; also PYTHONNOUSERSITE\n\
|
||||
-S : don't imply 'import site' on initialization\n\
|
||||
@@ -353,8 +352,8 @@ Py_Main(int argc, char **argv)
|
||||
|
||||
/* case 'J': reserved for Jython */
|
||||
|
||||
- case 'O':
|
||||
- Py_OptimizeFlag++;
|
||||
+ case 'N':
|
||||
+ Py_OptimizeFlag=0;
|
||||
break;
|
||||
|
||||
case 'B':
|
|
@ -0,0 +1,28 @@
|
|||
# CTypes need to know the actual host we are building on.
|
||||
# Signed-Off: Michael Dietrich <mdt@emdete.de>
|
||||
|
||||
Index: Python-2.6.1/setup.py
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/setup.py
|
||||
+++ Python-2.6.1/setup.py
|
||||
@@ -1656,16 +1656,16 @@ class PyBuildExt(build_ext):
|
||||
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 (res=%d) or missing conffile=%s" % ( res, ffi_configfile )
|
||||
return False
|
||||
|
||||
fficonfig = {}
|
|
@ -0,0 +1,10 @@
|
|||
--- Python-2.6.1.orig/Parser/printgrammar.c 2008-04-13 15:35:56.000000000 -0500
|
||||
+++ Python-2.6.1/Parser/printgrammar.c 2008-12-28 00:01:28.675633800 -0600
|
||||
@@ -16,6 +16,7 @@
|
||||
fprintf(fp, "/* Generated by Parser/pgen */\n\n");
|
||||
fprintf(fp, "#include \"pgenheaders.h\"\n");
|
||||
fprintf(fp, "#include \"grammar.h\"\n");
|
||||
+ fprintf(fp, "PyAPI_DATA(grammar) _PyParser_Grammar;\n");
|
||||
printdfas(g, fp);
|
||||
printlabels(g, fp);
|
||||
fprintf(fp, "grammar _PyParser_Grammar = {\n");
|
|
@ -0,0 +1,19 @@
|
|||
# Reinstate the empty -O option to fix weird mixing of native and target
|
||||
# binaries and libraries with LD_LIBRARY_PATH when host==target
|
||||
#
|
||||
# Signed-off-by: Denys Dmytriyenko <denis@denix.org>
|
||||
|
||||
Index: Python-2.6.1/Modules/main.c
|
||||
===================================================================
|
||||
--- Python-2.6.1-orig/Modules/main.c
|
||||
+++ Python-2.6.1/Modules/main.c
|
||||
@@ -352,6 +352,9 @@ Py_Main(int argc, char **argv)
|
||||
|
||||
/* case 'J': reserved for Jython */
|
||||
|
||||
+ case 'O': /* ignore it */
|
||||
+ break;
|
||||
+
|
||||
case 'N':
|
||||
Py_OptimizeFlag=0;
|
||||
break;
|
|
@ -0,0 +1,45 @@
|
|||
# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer <mlauer@vanille-media.de>
|
||||
# GPLv2 or later
|
||||
# Version: 20081123
|
||||
# Features:
|
||||
# * set proper default encoding
|
||||
# * enable readline completion in the interactive interpreter
|
||||
# * load command line history on startup
|
||||
# * save command line history on exit
|
||||
|
||||
import os
|
||||
|
||||
def __exithandler():
|
||||
try:
|
||||
readline.write_history_file( "%s/.python-history" % os.getenv( "HOME", "/tmp" ) )
|
||||
except IOError:
|
||||
pass
|
||||
|
||||
def __registerExitHandler():
|
||||
import atexit
|
||||
atexit.register( __exithandler )
|
||||
|
||||
def __enableReadlineSupport():
|
||||
readline.set_history_length( 1000 )
|
||||
readline.parse_and_bind( "tab: complete" )
|
||||
try:
|
||||
readline.read_history_file( "%s/.python-history" % os.getenv( "HOME", "/tmp" ) )
|
||||
except IOError:
|
||||
pass
|
||||
|
||||
def __enableDefaultEncoding():
|
||||
import sys
|
||||
try:
|
||||
sys.setdefaultencoding( "utf8" )
|
||||
except LookupError:
|
||||
pass
|
||||
|
||||
import sys
|
||||
try:
|
||||
import rlcompleter, readline
|
||||
except ImportError:
|
||||
pass
|
||||
else:
|
||||
__enableDefaultEncoding()
|
||||
__registerExitHandler()
|
||||
__enableReadlineSupport()
|
|
@ -0,0 +1,20 @@
|
|||
# $(exec_prefix) points to the wrong directory, when installing
|
||||
# a cross-build. @bindir@ and @libdir@ works better and doesn't
|
||||
# affect the native build.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
|
||||
Index: Python-2.6.1/Makefile.pre.in
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Makefile.pre.in
|
||||
+++ Python-2.6.1/Makefile.pre.in
|
||||
@@ -86,8 +86,8 @@ exec_prefix= @exec_prefix@
|
||||
datarootdir= @datarootdir@
|
||||
|
||||
# Expanded directories
|
||||
-BINDIR= $(exec_prefix)/bin
|
||||
-LIBDIR= $(exec_prefix)/lib
|
||||
+BINDIR= @bindir@
|
||||
+LIBDIR= @libdir@
|
||||
MANDIR= @mandir@
|
||||
INCLUDEDIR= @includedir@
|
||||
CONFINCLUDEDIR= $(exec_prefix)/include
|
116
meta/packages/python/python-2.6.2/01-use-proper-tools-for-cross-build.patch
vendored
Normal file
116
meta/packages/python/python-2.6.2/01-use-proper-tools-for-cross-build.patch
vendored
Normal file
|
@ -0,0 +1,116 @@
|
|||
# We need to ensure our host tools get run during build, not the freshly
|
||||
# built cross-tools (this will not work), so we introduce HOSTPYTHON and HOSTPGEN.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
|
||||
Index: Python-2.6.1/Makefile.pre.in
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Makefile.pre.in
|
||||
+++ Python-2.6.1/Makefile.pre.in
|
||||
@@ -175,6 +175,7 @@ UNICODE_OBJS= @UNICODE_OBJS@
|
||||
|
||||
PYTHON= python$(EXE)
|
||||
BUILDPYTHON= python$(BUILDEXE)
|
||||
+HOSTPYTHON= $(BUILDPYTHON)
|
||||
|
||||
# The task to run while instrument when building the profile-opt target
|
||||
PROFILE_TASK= $(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck
|
||||
@@ -205,7 +206,7 @@ GRAMMAR_INPUT= $(srcdir)/Grammar/Grammar
|
||||
##########################################################################
|
||||
# Parser
|
||||
PGEN= Parser/pgen$(EXE)
|
||||
-
|
||||
+HOSTPGEN= $(PGEN)$(EXE)
|
||||
POBJS= \
|
||||
Parser/acceler.o \
|
||||
Parser/grammar1.o \
|
||||
@@ -394,8 +395,8 @@ platform: $(BUILDPYTHON)
|
||||
# Build the shared modules
|
||||
sharedmods: $(BUILDPYTHON)
|
||||
@case $$MAKEFLAGS in \
|
||||
- *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \
|
||||
- *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \
|
||||
+ *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' $(HOSTPYTHON) -E $(srcdir)/setup.py -q build;; \
|
||||
+ *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' $(HOSTPYTHON) -E $(srcdir)/setup.py build;; \
|
||||
esac
|
||||
|
||||
# Build static library
|
||||
@@ -513,7 +514,7 @@ Modules/python.o: $(srcdir)/Modules/pyth
|
||||
|
||||
$(GRAMMAR_H) $(GRAMMAR_C): $(PGEN) $(GRAMMAR_INPUT)
|
||||
-@$(INSTALL) -d Include
|
||||
- -$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
|
||||
+ -$(HOSTPGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
|
||||
|
||||
$(PGEN): $(PGENOBJS)
|
||||
$(CC) $(OPT) $(LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN)
|
||||
@@ -879,23 +880,23 @@ libinstall: build_all $(srcdir)/Lib/$(PL
|
||||
done
|
||||
$(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt
|
||||
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||
- ./$(BUILDPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
+ $(HOSTPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
-d $(LIBDEST) -f \
|
||||
-x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST)
|
||||
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||
- ./$(BUILDPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
+ $(HOSTPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
-d $(LIBDEST) -f \
|
||||
-x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST)
|
||||
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||
- ./$(BUILDPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
+ $(HOSTPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
-d $(LIBDEST)/site-packages -f \
|
||||
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
|
||||
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||
- ./$(BUILDPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
+ $(HOSTPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
||||
-d $(LIBDEST)/site-packages -f \
|
||||
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
|
||||
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
||||
- ./$(BUILDPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()"
|
||||
+ $(HOSTPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()"
|
||||
|
||||
# Create the PLATDIR source directory, if one wasn't distributed..
|
||||
$(srcdir)/Lib/$(PLATDIR):
|
||||
@@ -993,7 +994,7 @@ libainstall: all
|
||||
# Install the dynamically loadable modules
|
||||
# This goes into $(exec_prefix)
|
||||
sharedinstall:
|
||||
- $(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py install \
|
||||
+ $(RUNSHARED) $(HOSTPYTHON) -E $(srcdir)/setup.py install \
|
||||
--prefix=$(prefix) \
|
||||
--install-scripts=$(BINDIR) \
|
||||
--install-platlib=$(DESTSHARED) \
|
||||
Index: Python-2.6.1/setup.py
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/setup.py
|
||||
+++ Python-2.6.1/setup.py
|
||||
@@ -276,6 +276,7 @@ class PyBuildExt(build_ext):
|
||||
self.failed.append(ext.name)
|
||||
self.announce('*** WARNING: renaming "%s" since importing it'
|
||||
' failed: %s' % (ext.name, why), level=3)
|
||||
+ return
|
||||
assert not self.inplace
|
||||
basename, tail = os.path.splitext(ext_filename)
|
||||
newname = basename + "_failed" + tail
|
||||
@@ -310,8 +311,8 @@ class PyBuildExt(build_ext):
|
||||
|
||||
def detect_modules(self):
|
||||
# Ensure that /usr/local is always used
|
||||
- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
||||
- add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
||||
+ # add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
||||
+ # add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
||||
|
||||
# Add paths specified in the environment variables LDFLAGS and
|
||||
# CPPFLAGS for header and library files.
|
||||
@@ -410,6 +411,9 @@ class PyBuildExt(build_ext):
|
||||
|
||||
# XXX Omitted modules: gl, pure, dl, SGI-specific modules
|
||||
|
||||
+ lib_dirs = [ os.getenv( "STAGING_LIBDIR" ) ]
|
||||
+ inc_dirs = [ os.getenv( "STAGING_INCDIR" ) ]
|
||||
+
|
||||
#
|
||||
# The following modules are all pretty straightforward, and compile
|
||||
# on pretty much any POSIXish platform.
|
|
@ -0,0 +1,94 @@
|
|||
# OpenEmbedded prepopulates the autotools site cache, so if this
|
||||
# would be using AC_TRY_CACHE, we could patch it in a more sane way
|
||||
# Alas, I don't have enough autotalent to do that.
|
||||
#
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
Index: Python-2.6.1/configure.in
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/configure.in
|
||||
+++ Python-2.6.1/configure.in
|
||||
@@ -2556,38 +2556,6 @@ AC_CHECK_LIB(c, inet_aton, [$ac_cv_prog_
|
||||
AC_CHECK_LIB(resolv, inet_aton)
|
||||
)
|
||||
|
||||
-# On Tru64, chflags seems to be present, but calling it will
|
||||
-# exit Python
|
||||
-AC_MSG_CHECKING(for chflags)
|
||||
-AC_TRY_RUN([
|
||||
-#include <sys/stat.h>
|
||||
-#include <unistd.h>
|
||||
-int main(int argc, char*argv[])
|
||||
-{
|
||||
- if(chflags(argv[0], 0) != 0)
|
||||
- return 1;
|
||||
- return 0;
|
||||
-}
|
||||
-],AC_DEFINE(HAVE_CHFLAGS, 1, Define to 1 if you have the `chflags' function.)
|
||||
- AC_MSG_RESULT(yes),
|
||||
- AC_MSG_RESULT(no)
|
||||
-)
|
||||
-
|
||||
-AC_MSG_CHECKING(for lchflags)
|
||||
-AC_TRY_RUN([
|
||||
-#include <sys/stat.h>
|
||||
-#include <unistd.h>
|
||||
-int main(int argc, char*argv[])
|
||||
-{
|
||||
- if(lchflags(argv[0], 0) != 0)
|
||||
- return 1;
|
||||
- return 0;
|
||||
-}
|
||||
-],AC_DEFINE(HAVE_LCHFLAGS, 1, Define to 1 if you have the `lchflags' function.)
|
||||
- AC_MSG_RESULT(yes),
|
||||
- AC_MSG_RESULT(no)
|
||||
-)
|
||||
-
|
||||
dnl Check if system zlib has *Copy() functions
|
||||
dnl
|
||||
dnl On MacOSX the linker will search for dylibs on the entire linker path
|
||||
@@ -3649,45 +3617,6 @@ else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
|
||||
-AC_MSG_CHECKING(for %zd printf() format support)
|
||||
-AC_TRY_RUN([#include <stdio.h>
|
||||
-#include <stddef.h>
|
||||
-#include <string.h>
|
||||
-
|
||||
-#ifdef HAVE_SYS_TYPES_H
|
||||
-#include <sys/types.h>
|
||||
-#endif
|
||||
-
|
||||
-#ifdef HAVE_SSIZE_T
|
||||
-typedef ssize_t Py_ssize_t;
|
||||
-#elif SIZEOF_VOID_P == SIZEOF_LONG
|
||||
-typedef long Py_ssize_t;
|
||||
-#else
|
||||
-typedef int Py_ssize_t;
|
||||
-#endif
|
||||
-
|
||||
-int main()
|
||||
-{
|
||||
- char buffer[256];
|
||||
-
|
||||
- if(sprintf(buffer, "%zd", (size_t)123) < 0)
|
||||
- return 1;
|
||||
-
|
||||
- if (strcmp(buffer, "123"))
|
||||
- return 1;
|
||||
-
|
||||
- if (sprintf(buffer, "%zd", (Py_ssize_t)-123) < 0)
|
||||
- return 1;
|
||||
-
|
||||
- if (strcmp(buffer, "-123"))
|
||||
- return 1;
|
||||
-
|
||||
- return 0;
|
||||
-}],
|
||||
-[AC_MSG_RESULT(yes)
|
||||
- AC_DEFINE(PY_FORMAT_SIZE_T, "z", [Define to printf format modifier for Py_ssize_t])],
|
||||
- AC_MSG_RESULT(no))
|
||||
-
|
||||
AC_CHECK_TYPE(socklen_t,,
|
||||
AC_DEFINE(socklen_t,int,
|
||||
Define to `int' if <sys/socket.h> does not define.),[
|
|
@ -0,0 +1,40 @@
|
|||
# We need to supply STAGING_INCDIR here, otherwise the Tk headers
|
||||
# will not be found.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille.de>
|
||||
|
||||
Index: Python-2.6.1/setup.py
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/setup.py
|
||||
+++ Python-2.6.1/setup.py
|
||||
@@ -1543,7 +1543,7 @@ class PyBuildExt(build_ext):
|
||||
dotversion = dotversion[:-1] + '.' + dotversion[-1]
|
||||
tcl_include_sub = []
|
||||
tk_include_sub = []
|
||||
- for dir in inc_dirs:
|
||||
+ for dir in [os.getenv("STAGING_INCDIR")]:
|
||||
tcl_include_sub += [dir + os.sep + "tcl" + dotversion]
|
||||
tk_include_sub += [dir + os.sep + "tk" + dotversion]
|
||||
tk_include_sub += tcl_include_sub
|
||||
@@ -1562,22 +1562,6 @@ class PyBuildExt(build_ext):
|
||||
if dir not in include_dirs:
|
||||
include_dirs.append(dir)
|
||||
|
||||
- # Check for various platform-specific directories
|
||||
- if platform == 'sunos5':
|
||||
- include_dirs.append('/usr/openwin/include')
|
||||
- added_lib_dirs.append('/usr/openwin/lib')
|
||||
- elif os.path.exists('/usr/X11R6/include'):
|
||||
- include_dirs.append('/usr/X11R6/include')
|
||||
- added_lib_dirs.append('/usr/X11R6/lib64')
|
||||
- added_lib_dirs.append('/usr/X11R6/lib')
|
||||
- elif os.path.exists('/usr/X11R5/include'):
|
||||
- include_dirs.append('/usr/X11R5/include')
|
||||
- added_lib_dirs.append('/usr/X11R5/lib')
|
||||
- else:
|
||||
- # Assume default location for X11
|
||||
- include_dirs.append('/usr/X11/include')
|
||||
- added_lib_dirs.append('/usr/X11/lib')
|
||||
-
|
||||
# If Cygwin, then verify that X is installed before proceeding
|
||||
if platform == 'cygwin':
|
||||
x11_inc = find_file('X11/Xlib.h', [], include_dirs)
|
|
@ -0,0 +1,52 @@
|
|||
# when compiling for an embedded system, we need every bit of
|
||||
# performance we can get. default to optimized with the option
|
||||
# of opt-out.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
|
||||
Index: Python-2.6.1/Python/compile.c
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Python/compile.c
|
||||
+++ Python-2.6.1/Python/compile.c
|
||||
@@ -32,7 +32,7 @@
|
||||
#include "symtable.h"
|
||||
#include "opcode.h"
|
||||
|
||||
-int Py_OptimizeFlag = 0;
|
||||
+int Py_OptimizeFlag = 1;
|
||||
|
||||
#define DEFAULT_BLOCK_SIZE 16
|
||||
#define DEFAULT_BLOCKS 8
|
||||
Index: Python-2.6.1/Modules/main.c
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Modules/main.c
|
||||
+++ Python-2.6.1/Modules/main.c
|
||||
@@ -40,7 +40,7 @@ static char **orig_argv;
|
||||
static int orig_argc;
|
||||
|
||||
/* command line options */
|
||||
-#define BASE_OPTS "3bBc:dEhiJm:OQ:sStuUvVW:xX?"
|
||||
+#define BASE_OPTS "3bBc:dEhiJm:NOQ:sStuUvVW:xX?"
|
||||
|
||||
#ifndef RISCOS
|
||||
#define PROGRAM_OPTS BASE_OPTS
|
||||
@@ -69,8 +69,7 @@ Options and arguments (and corresponding
|
||||
static char *usage_2 = "\
|
||||
if stdin does not appear to be a terminal; also PYTHONINSPECT=x\n\
|
||||
-m mod : run library module as a script (terminates option list)\n\
|
||||
--O : optimize generated bytecode slightly; also PYTHONOPTIMIZE=x\n\
|
||||
--OO : remove doc-strings in addition to the -O optimizations\n\
|
||||
+-N : do NOT optimize generated bytecode\n\
|
||||
-Q arg : division options: -Qold (default), -Qwarn, -Qwarnall, -Qnew\n\
|
||||
-s : don't add user site directory to sys.path; also PYTHONNOUSERSITE\n\
|
||||
-S : don't imply 'import site' on initialization\n\
|
||||
@@ -353,8 +352,8 @@ Py_Main(int argc, char **argv)
|
||||
|
||||
/* case 'J': reserved for Jython */
|
||||
|
||||
- case 'O':
|
||||
- Py_OptimizeFlag++;
|
||||
+ case 'N':
|
||||
+ Py_OptimizeFlag=0;
|
||||
break;
|
||||
|
||||
case 'B':
|
|
@ -0,0 +1,28 @@
|
|||
# CTypes need to know the actual host we are building on.
|
||||
# Signed-Off: Michael Dietrich <mdt@emdete.de>
|
||||
|
||||
Index: Python-2.6.1/setup.py
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/setup.py
|
||||
+++ Python-2.6.1/setup.py
|
||||
@@ -1656,16 +1656,16 @@ class PyBuildExt(build_ext):
|
||||
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 (res=%d) or missing conffile=%s" % ( res, ffi_configfile )
|
||||
return False
|
||||
|
||||
fficonfig = {}
|
|
@ -0,0 +1,19 @@
|
|||
# Reinstate the empty -O option to fix weird mixing of native and target
|
||||
# binaries and libraries with LD_LIBRARY_PATH when host==target
|
||||
#
|
||||
# Signed-off-by: Denys Dmytriyenko <denis@denix.org>
|
||||
|
||||
Index: Python-2.6.1/Modules/main.c
|
||||
===================================================================
|
||||
--- Python-2.6.1-orig/Modules/main.c
|
||||
+++ Python-2.6.1/Modules/main.c
|
||||
@@ -352,6 +352,9 @@ Py_Main(int argc, char **argv)
|
||||
|
||||
/* case 'J': reserved for Jython */
|
||||
|
||||
+ case 'O': /* ignore it */
|
||||
+ break;
|
||||
+
|
||||
case 'N':
|
||||
Py_OptimizeFlag=0;
|
||||
break;
|
|
@ -0,0 +1,45 @@
|
|||
# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer <mlauer@vanille-media.de>
|
||||
# GPLv2 or later
|
||||
# Version: 20081123
|
||||
# Features:
|
||||
# * set proper default encoding
|
||||
# * enable readline completion in the interactive interpreter
|
||||
# * load command line history on startup
|
||||
# * save command line history on exit
|
||||
|
||||
import os
|
||||
|
||||
def __exithandler():
|
||||
try:
|
||||
readline.write_history_file( "%s/.python-history" % os.getenv( "HOME", "/tmp" ) )
|
||||
except IOError:
|
||||
pass
|
||||
|
||||
def __registerExitHandler():
|
||||
import atexit
|
||||
atexit.register( __exithandler )
|
||||
|
||||
def __enableReadlineSupport():
|
||||
readline.set_history_length( 1000 )
|
||||
readline.parse_and_bind( "tab: complete" )
|
||||
try:
|
||||
readline.read_history_file( "%s/.python-history" % os.getenv( "HOME", "/tmp" ) )
|
||||
except IOError:
|
||||
pass
|
||||
|
||||
def __enableDefaultEncoding():
|
||||
import sys
|
||||
try:
|
||||
sys.setdefaultencoding( "utf8" )
|
||||
except LookupError:
|
||||
pass
|
||||
|
||||
import sys
|
||||
try:
|
||||
import rlcompleter, readline
|
||||
except ImportError:
|
||||
pass
|
||||
else:
|
||||
__enableDefaultEncoding()
|
||||
__registerExitHandler()
|
||||
__enableReadlineSupport()
|
20
meta/packages/python/python-native-2.6.1/00-fix-bindir-libdir-for-cross.patch
vendored
Normal file
20
meta/packages/python/python-native-2.6.1/00-fix-bindir-libdir-for-cross.patch
vendored
Normal file
|
@ -0,0 +1,20 @@
|
|||
# $(exec_prefix) points to the wrong directory, when installing
|
||||
# a cross-build. @bindir@ and @libdir@ works better and doesn't
|
||||
# affect the native build.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
|
||||
Index: Python-2.6.1/Makefile.pre.in
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Makefile.pre.in
|
||||
+++ Python-2.6.1/Makefile.pre.in
|
||||
@@ -86,8 +86,8 @@ exec_prefix= @exec_prefix@
|
||||
datarootdir= @datarootdir@
|
||||
|
||||
# Expanded directories
|
||||
-BINDIR= $(exec_prefix)/bin
|
||||
-LIBDIR= $(exec_prefix)/lib
|
||||
+BINDIR= @bindir@
|
||||
+LIBDIR= @libdir@
|
||||
MANDIR= @mandir@
|
||||
INCLUDEDIR= @includedir@
|
||||
CONFINCLUDEDIR= $(exec_prefix)/include
|
|
@ -0,0 +1,18 @@
|
|||
# When compiling for an embedded system, we need every bit of
|
||||
# performance we can get. default to optimized with the option
|
||||
# of opt-out.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
|
||||
Index: Python-2.6.1/Python/compile.c
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Python/compile.c
|
||||
+++ Python-2.6.1/Python/compile.c
|
||||
@@ -32,7 +32,7 @@
|
||||
#include "symtable.h"
|
||||
#include "opcode.h"
|
||||
|
||||
-int Py_OptimizeFlag = 0;
|
||||
+int Py_OptimizeFlag = 1;
|
||||
|
||||
#define DEFAULT_BLOCK_SIZE 16
|
||||
#define DEFAULT_BLOCKS 8
|
16
meta/packages/python/python-native-2.6.1/10-distutils-fix-swig-parameter.patch
vendored
Normal file
16
meta/packages/python/python-native-2.6.1/10-distutils-fix-swig-parameter.patch
vendored
Normal file
|
@ -0,0 +1,16 @@
|
|||
# Some versions of SWIG do not use the extension parameter.
|
||||
# Make it optional.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
Index: Python-2.6.1/Lib/distutils/command/build_ext.py
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Lib/distutils/command/build_ext.py
|
||||
+++ Python-2.6.1/Lib/distutils/command/build_ext.py
|
||||
@@ -566,7 +566,7 @@ class build_ext (Command):
|
||||
target_lang=language)
|
||||
|
||||
|
||||
- def swig_sources (self, sources, extension):
|
||||
+ def swig_sources (self, sources, extension=None):
|
||||
|
||||
"""Walk the list of source files in 'sources', looking for SWIG
|
||||
interface (.i) files. Run SWIG on all that are found, and
|
18
meta/packages/python/python-native-2.6.1/11-distutils-never-modify-shebang-line.patch
vendored
Normal file
18
meta/packages/python/python-native-2.6.1/11-distutils-never-modify-shebang-line.patch
vendored
Normal file
|
@ -0,0 +1,18 @@
|
|||
# Don't modify the she-bang line for a cross-build.
|
||||
# Otherwise it points to our hostpython (which we do not want)
|
||||
#
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
|
||||
Index: Python-2.6.1/Lib/distutils/command/build_scripts.py
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Lib/distutils/command/build_scripts.py
|
||||
+++ Python-2.6.1/Lib/distutils/command/build_scripts.py
|
||||
@@ -87,7 +87,7 @@ class build_scripts (Command):
|
||||
continue
|
||||
|
||||
match = first_line_re.match(first_line)
|
||||
- if match:
|
||||
+ if False: #match:
|
||||
adjust = 1
|
||||
post_interp = match.group(1) or ''
|
||||
|
60
meta/packages/python/python-native-2.6.1/12-distutils-prefix-is-inside-staging-area.patch
vendored
Normal file
60
meta/packages/python/python-native-2.6.1/12-distutils-prefix-is-inside-staging-area.patch
vendored
Normal file
|
@ -0,0 +1,60 @@
|
|||
# The proper prefix is inside our staging area.
|
||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||
|
||||
Index: Python-2.6.1/Lib/distutils/sysconfig.py
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Lib/distutils/sysconfig.py
|
||||
+++ Python-2.6.1/Lib/distutils/sysconfig.py
|
||||
@@ -19,8 +19,8 @@ import sys
|
||||
from distutils.errors import DistutilsPlatformError
|
||||
|
||||
# These are needed in a couple of spots, so just compute them once.
|
||||
-PREFIX = os.path.normpath(sys.prefix)
|
||||
-EXEC_PREFIX = os.path.normpath(sys.exec_prefix)
|
||||
+PREFIX = os.path.normpath(sys.prefix).replace( os.getenv("BUILD_SYS"), os.getenv("HOST_SYS") )
|
||||
+EXEC_PREFIX = os.path.normpath(sys.exec_prefix).replace( os.getenv("BUILD_SYS"), os.getenv("HOST_SYS") )
|
||||
|
||||
# Path to the base directory of the project. On Windows the binary may
|
||||
# live in project/PCBuild9. If we're dealing with an x64 Windows build,
|
||||
@@ -70,7 +70,10 @@ def get_python_inc(plat_specific=0, pref
|
||||
sys.exec_prefix -- i.e., ignore 'plat_specific'.
|
||||
"""
|
||||
if prefix is None:
|
||||
- prefix = plat_specific and EXEC_PREFIX or PREFIX
|
||||
+ if plat_specific:
|
||||
+ prefix = plat_specific and os.environ['STAGING_INCDIR'].rstrip('include')
|
||||
+ else:
|
||||
+ prefix = plat_specific and EXEC_PREFIX or PREFIX
|
||||
if os.name == "posix":
|
||||
if python_build:
|
||||
base = os.path.dirname(os.path.abspath(sys.executable))
|
||||
@@ -112,7 +115,10 @@ def get_python_lib(plat_specific=0, stan
|
||||
sys.exec_prefix -- i.e., ignore 'plat_specific'.
|
||||
"""
|
||||
if prefix is None:
|
||||
- prefix = plat_specific and EXEC_PREFIX or PREFIX
|
||||
+ if plat_specific:
|
||||
+ prefix = plat_specific and os.environ['STAGING_LIBDIR'].rstrip('lib')
|
||||
+ else:
|
||||
+ prefix = plat_specific and EXEC_PREFIX or PREFIX
|
||||
|
||||
if os.name == "posix":
|
||||
libpython = os.path.join(prefix,
|
||||
@@ -218,7 +218,7 @@ def get_config_h_filename():
|
||||
else:
|
||||
# The name of the config.h file changed in 2.2
|
||||
config_h = 'pyconfig.h'
|
||||
- return os.path.join(inc_dir, config_h)
|
||||
+ return os.path.join(inc_dir, config_h).replace( os.getenv("BUILD_SYS"), os.getenv("HOST_SYS") )
|
||||
|
||||
|
||||
def get_makefile_filename():
|
||||
@@ -226,7 +226,7 @@ def get_makefile_filename():
|
||||
if python_build:
|
||||
return os.path.join(os.path.dirname(sys.executable), "Makefile")
|
||||
lib_dir = get_python_lib(plat_specific=1, standard_lib=1)
|
||||
- return os.path.join(lib_dir, "config", "Makefile")
|
||||
+ return os.path.join(lib_dir, "config", "Makefile").replace( os.getenv("BUILD_SYS"), os.getenv("HOST_SYS") )
|
||||
|
||||
|
||||
def parse_config_h(fp, g=None):
|
|
@ -0,0 +1,27 @@
|
|||
Index: Python-2.6.1/Lib/distutils/unixccompiler.py
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/Lib/distutils/unixccompiler.py 2009-11-13 16:04:54.000000000 +0000
|
||||
+++ Python-2.6.1/Lib/distutils/unixccompiler.py 2009-11-13 16:06:27.000000000 +0000
|
||||
@@ -300,6 +300,8 @@
|
||||
dylib_f = self.library_filename(lib, lib_type='dylib')
|
||||
static_f = self.library_filename(lib, lib_type='static')
|
||||
|
||||
+ print "Looking in %s for %s" % (lib, dirs)
|
||||
+
|
||||
for dir in dirs:
|
||||
shared = os.path.join(dir, shared_f)
|
||||
dylib = os.path.join(dir, dylib_f)
|
||||
@@ -309,10 +311,13 @@
|
||||
# assuming that *all* Unix C compilers do. And of course I'm
|
||||
# ignoring even GCC's "-static" option. So sue me.
|
||||
if os.path.exists(dylib):
|
||||
+ print "Found %s" % (dylib)
|
||||
return dylib
|
||||
elif os.path.exists(shared):
|
||||
+ print "Found %s" % (shared)
|
||||
return shared
|
||||
elif os.path.exists(static):
|
||||
+ print "Found %s" % (static)
|
||||
return static
|
||||
|
||||
# Oops, didn't find it in *any* of 'dirs'
|
|
@ -0,0 +1,53 @@
|
|||
Index: Python-2.6.1/setup.py
|
||||
===================================================================
|
||||
--- Python-2.6.1.orig/setup.py 2009-11-13 16:20:47.000000000 +0000
|
||||
+++ Python-2.6.1/setup.py 2009-11-13 16:28:00.000000000 +0000
|
||||
@@ -310,8 +310,8 @@
|
||||
|
||||
def detect_modules(self):
|
||||
# Ensure that /usr/local is always used
|
||||
- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
||||
- add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
||||
+ #add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
||||
+ #add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
||||
|
||||
# Add paths specified in the environment variables LDFLAGS and
|
||||
# CPPFLAGS for header and library files.
|
||||
@@ -347,10 +347,10 @@
|
||||
for directory in reversed(options.dirs):
|
||||
add_dir_to_list(dir_list, directory)
|
||||
|
||||
- if os.path.normpath(sys.prefix) != '/usr':
|
||||
- add_dir_to_list(self.compiler.library_dirs,
|
||||
+
|
||||
+ add_dir_to_list(self.compiler.library_dirs,
|
||||
sysconfig.get_config_var("LIBDIR"))
|
||||
- add_dir_to_list(self.compiler.include_dirs,
|
||||
+ add_dir_to_list(self.compiler.include_dirs,
|
||||
sysconfig.get_config_var("INCLUDEDIR"))
|
||||
|
||||
try:
|
||||
@@ -361,11 +361,8 @@
|
||||
# lib_dirs and inc_dirs are used to search for files;
|
||||
# if a file is found in one of those directories, it can
|
||||
# be assumed that no additional -I,-L directives are needed.
|
||||
- lib_dirs = self.compiler.library_dirs + [
|
||||
- '/lib64', '/usr/lib64',
|
||||
- '/lib', '/usr/lib',
|
||||
- ]
|
||||
- inc_dirs = self.compiler.include_dirs + ['/usr/include']
|
||||
+ lib_dirs = self.compiler.library_dirs
|
||||
+ inc_dirs = self.compiler.include_dirs
|
||||
exts = []
|
||||
missing = []
|
||||
|
||||
@@ -583,8 +580,7 @@
|
||||
readline_libs.append('ncurses')
|
||||
elif self.compiler.find_library_file(lib_dirs, 'curses'):
|
||||
readline_libs.append('curses')
|
||||
- elif self.compiler.find_library_file(lib_dirs +
|
||||
- ['/usr/lib/termcap'],
|
||||
+ elif self.compiler.find_library_file(lib_dirs,
|
||||
'termcap'):
|
||||
readline_libs.append('termcap')
|
||||
exts.append( Extension('readline', ['readline.c'],
|
|
@ -0,0 +1,45 @@
|
|||
# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer <mlauer@vanille-media.de>
|
||||
# GPLv2 or later
|
||||
# Version: 20081123
|
||||
# Features:
|
||||
# * set proper default encoding
|
||||
# * enable readline completion in the interactive interpreter
|
||||
# * load command line history on startup
|
||||
# * save command line history on exit
|
||||
|
||||
import os
|
||||
|
||||
def __exithandler():
|
||||
try:
|
||||
readline.write_history_file( "%s/.python-history" % os.getenv( "HOME", "/tmp" ) )
|
||||
except IOError:
|
||||
pass
|
||||
|
||||
def __registerExitHandler():
|
||||
import atexit
|
||||
atexit.register( __exithandler )
|
||||
|
||||
def __enableReadlineSupport():
|
||||
readline.set_history_length( 1000 )
|
||||
readline.parse_and_bind( "tab: complete" )
|
||||
try:
|
||||
readline.read_history_file( "%s/.python-history" % os.getenv( "HOME", "/tmp" ) )
|
||||
except IOError:
|
||||
pass
|
||||
|
||||
def __enableDefaultEncoding():
|
||||
import sys
|
||||
try:
|
||||
sys.setdefaultencoding( "utf8" )
|
||||
except LookupError:
|
||||
pass
|
||||
|
||||
import sys
|
||||
try:
|
||||
import rlcompleter, readline
|
||||
except ImportError:
|
||||
pass
|
||||
else:
|
||||
__enableDefaultEncoding()
|
||||
__registerExitHandler()
|
||||
__enableReadlineSupport()
|
|
@ -0,0 +1,33 @@
|
|||
require python.inc
|
||||
DEPENDS = "openssl-native bzip2-full-native zlib-native readline-native"
|
||||
PR = "${INC_PR}.2"
|
||||
|
||||
SRC_URI = "\
|
||||
http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2 \
|
||||
file://00-fix-bindir-libdir-for-cross.patch;patch=1 \
|
||||
file://04-default-is-optimized.patch;patch=1 \
|
||||
file://05-enable-ctypes-cross-build.patch;patch=1 \
|
||||
file://10-distutils-fix-swig-parameter.patch;patch=1 \
|
||||
file://11-distutils-never-modify-shebang-line.patch;patch=1 \
|
||||
file://12-distutils-prefix-is-inside-staging-area.patch;patch=1 \
|
||||
file://debug.patch;patch=1 \
|
||||
file://nohostlibs.patch;patch=1 \
|
||||
"
|
||||
S = "${WORKDIR}/Python-${PV}"
|
||||
|
||||
inherit native
|
||||
|
||||
EXTRA_OEMAKE = '\
|
||||
BUILD_SYS="" \
|
||||
HOST_SYS="" \
|
||||
LIBC="" \
|
||||
STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE} \
|
||||
STAGING_INCDIR=${STAGING_INCDIR_NATIVE} \
|
||||
'
|
||||
|
||||
NATIVE_INSTALL_WORKS = "1"
|
||||
do_install() {
|
||||
oe_runmake 'DESTDIR=${D}' install
|
||||
install -d ${D}${bindir}/
|
||||
install -m 0755 Parser/pgen ${D}${bindir}/
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
DESCRIPTION = "The Python Programming Language"
|
||||
HOMEPAGE = "http://www.python.org"
|
||||
LICENSE = "PSF"
|
||||
SECTION = "devel/python"
|
||||
PRIORITY = "optional"
|
||||
# bump this on every change in contrib/python/generate-manifest-2.6.py
|
||||
INC_PR = "ml8"
|
||||
|
||||
DEFAULT_PREFERENCE = "-26"
|
||||
|
||||
PYTHON_MAJMIN = "2.6"
|
||||
|
||||
inherit autotools
|
||||
|
||||
EXTRA_OECONF = "\
|
||||
--with-threads \
|
||||
--with-pymalloc \
|
||||
--with-cyclic-gc \
|
||||
--without-cxx \
|
||||
--with-signal-module \
|
||||
--with-wctype-functions \
|
||||
--enable-shared \
|
||||
"
|
|
@ -0,0 +1,113 @@
|
|||
require python.inc
|
||||
DEPENDS = "python-native db gdbm openssl readline sqlite3 zlib"
|
||||
DEPENDS_sharprom = "python-native db readline zlib gdbm openssl"
|
||||
PR = "${INC_PR}.0"
|
||||
|
||||
SRC_URI = "\
|
||||
http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2 \
|
||||
file://00-fix-bindir-libdir-for-cross.patch;patch=1 \
|
||||
file://01-use-proper-tools-for-cross-build.patch;patch=1 \
|
||||
file://02-remove-test-for-cross.patch;patch=1 \
|
||||
file://03-fix-tkinter-detection.patch;patch=1 \
|
||||
file://04-default-is-optimized.patch;patch=1 \
|
||||
file://05-enable-ctypes-cross-build.patch;patch=1 \
|
||||
file://06-libffi-enable-default-mips.patch;patch=1 \
|
||||
file://07-export-grammer.patch;patch=1 \
|
||||
file://99-ignore-optimization-flag.patch;patch=1 \
|
||||
\
|
||||
# not yet pushed forward
|
||||
# sitecustomize, sitebranding
|
||||
\
|
||||
# file://05-install.patch;patch=1 \
|
||||
# file://06-fix-urllib-exception.patch;patch=1 \
|
||||
# file://16-bug1179-imageop.patch;patch=1 \
|
||||
# file://13-set-wakeup-fix.patch;patch=1 \
|
||||
\
|
||||
file://sitecustomize.py \
|
||||
"
|
||||
S = "${WORKDIR}/Python-${PV}"
|
||||
|
||||
inherit autotools
|
||||
|
||||
# The 3 lines below are copied from the libffi recipe, ctypes ships its own copy of the libffi sources
|
||||
#Somehow gcc doesn't set __SOFTFP__ when passing -mfloatabi=softp :(
|
||||
TARGET_CC_ARCH_append_armv6 = " -D__SOFTFP__"
|
||||
TARGET_CC_ARCH_append_armv7a = " -D__SOFTFP__"
|
||||
|
||||
#
|
||||
# copy config.h and an appropriate Makefile for distutils.sysconfig
|
||||
# which laters uses the information out of these to compile extensions
|
||||
#
|
||||
do_compile_prepend() {
|
||||
install -d ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/
|
||||
install -d ${STAGING_LIBDIR}/python${PYTHON_MAJMIN}/config/
|
||||
install -m 0644 pyconfig.h ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/
|
||||
install -m 0644 Makefile Makefile.orig
|
||||
install -m 0644 Makefile Makefile.backup
|
||||
sed -e 's,${includedir},${STAGING_INCDIR},' < Makefile.backup > Makefile
|
||||
install -m 0644 Makefile Makefile.backup
|
||||
sed -e 's,${libdir},${STAGING_LIBDIR},' < Makefile.backup > Makefile
|
||||
install -m 0644 Makefile ${STAGING_LIBDIR}/python${PYTHON_MAJMIN}/config/
|
||||
}
|
||||
|
||||
do_compile() {
|
||||
oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \
|
||||
HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \
|
||||
STAGING_LIBDIR=${STAGING_LIBDIR} \
|
||||
STAGING_INCDIR=${STAGING_INCDIR} \
|
||||
BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
|
||||
OPT="${CFLAGS}" libpython${PYTHON_MAJMIN}.so
|
||||
|
||||
oe_libinstall -so libpython${PYTHON_MAJMIN} ${STAGING_LIBDIR}
|
||||
|
||||
oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \
|
||||
HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \
|
||||
STAGING_LIBDIR=${STAGING_LIBDIR} \
|
||||
STAGING_INCDIR=${STAGING_INCDIR} \
|
||||
BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
|
||||
OPT="${CFLAGS}"
|
||||
}
|
||||
|
||||
do_install() {
|
||||
install -m 0644 Makefile.orig Makefile
|
||||
|
||||
oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \
|
||||
HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \
|
||||
STAGING_LIBDIR=${STAGING_LIBDIR} \
|
||||
STAGING_INCDIR=${STAGING_INCDIR} \
|
||||
BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
|
||||
DESTDIR=${D} LIBDIR=${libdir} install
|
||||
|
||||
install -m 0644 ${WORKDIR}/sitecustomize.py ${D}/${libdir}/python${PYTHON_MAJMIN}
|
||||
|
||||
# remove hardcoded ccache, see http://bugs.openembedded.net/show_bug.cgi?id=4144
|
||||
sed -i -e s,ccache,'$(CCACHE)', ${D}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile
|
||||
}
|
||||
|
||||
require python-${PYTHON_MAJMIN}-manifest.inc
|
||||
|
||||
# manual dependency additions
|
||||
RPROVIDES_python-core = "python"
|
||||
RRECOMMENDS_python-core = "python-readline"
|
||||
RRECOMMENDS_python-crypt = "openssl"
|
||||
|
||||
# add sitecustomize
|
||||
FILES_python-core += "${libdir}/python${PYTHON_MAJMIN}/sitecustomize.py"
|
||||
|
||||
# 2to3
|
||||
FILES_python-core += "${bindir}/2to3"
|
||||
|
||||
# package libpython
|
||||
PACKAGES =+ "libpython2"
|
||||
FILES_libpython2 = "${libdir}/libpython*.so.*"
|
||||
|
||||
# catch debug extensions (isn't that already in python-core-dbg?)
|
||||
FILES_python-dbg += "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/.debug"
|
||||
|
||||
# catch all the rest (unsorted)
|
||||
PACKAGES += "python-misc"
|
||||
FILES_python-misc = "${libdir}/python${PYTHON_MAJMIN}"
|
||||
|
||||
# catch manpage
|
||||
PACKAGES += "python-man"
|
||||
FILES_python-man = "${datadir}/man"
|
|
@ -0,0 +1,130 @@
|
|||
require python.inc
|
||||
DEPENDS = "python-native db gdbm openssl readline sqlite3 zlib"
|
||||
DEPENDS_sharprom = "python-native db readline zlib gdbm openssl"
|
||||
# set to .0 on every increase of INC_PR
|
||||
PR = "${INC_PR}.0"
|
||||
|
||||
SRC_URI = "\
|
||||
http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2 \
|
||||
file://00-fix-bindir-libdir-for-cross.patch;patch=1 \
|
||||
file://01-use-proper-tools-for-cross-build.patch;patch=1 \
|
||||
file://02-remove-test-for-cross.patch;patch=1 \
|
||||
file://03-fix-tkinter-detection.patch;patch=1 \
|
||||
file://04-default-is-optimized.patch;patch=1 \
|
||||
file://05-enable-ctypes-cross-build.patch;patch=1 \
|
||||
file://99-ignore-optimization-flag.patch;patch=1 \
|
||||
\
|
||||
# not yet pushed forward
|
||||
# sitebranding
|
||||
\
|
||||
# file://05-install.patch;patch=1 \
|
||||
# file://06-fix-urllib-exception.patch;patch=1 \
|
||||
# file://16-bug1179-imageop.patch;patch=1 \
|
||||
# file://13-set-wakeup-fix.patch;patch=1 \
|
||||
\
|
||||
file://sitecustomize.py \
|
||||
"
|
||||
S = "${WORKDIR}/Python-${PV}"
|
||||
|
||||
inherit autotools
|
||||
|
||||
# The 3 lines below are copied from the libffi recipe, ctypes ships its own copy of the libffi sources
|
||||
#Somehow gcc doesn't set __SOFTFP__ when passing -mfloatabi=softp :(
|
||||
TARGET_CC_ARCH_append_armv6 = " -D__SOFTFP__"
|
||||
TARGET_CC_ARCH_append_armv7a = " -D__SOFTFP__"
|
||||
|
||||
do_configure_prepend() {
|
||||
autoreconf -Wcross --verbose --install --force --exclude=autopoint Modules/_ctypes/libffi || oenote "_ctypes failed to autoreconf"
|
||||
}
|
||||
|
||||
#
|
||||
# Copy config.h and an appropriate Makefile for distutils.sysconfig,
|
||||
# which laters uses the information out of these to compile extensions
|
||||
#
|
||||
do_compile_prepend() {
|
||||
install -d ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/
|
||||
install -d ${STAGING_LIBDIR}/python${PYTHON_MAJMIN}/config/
|
||||
install -m 0644 pyconfig.h ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/
|
||||
install -m 0644 Makefile Makefile.orig
|
||||
install -m 0644 Makefile Makefile.backup
|
||||
sed -e 's,${includedir},${STAGING_INCDIR},' < Makefile.backup > Makefile
|
||||
install -m 0644 Makefile Makefile.backup
|
||||
sed -e 's,${libdir},${STAGING_LIBDIR},' < Makefile.backup > Makefile
|
||||
install -m 0644 Makefile ${STAGING_LIBDIR}/python${PYTHON_MAJMIN}/config/
|
||||
}
|
||||
|
||||
do_compile() {
|
||||
oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \
|
||||
HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \
|
||||
STAGING_LIBDIR=${STAGING_LIBDIR} \
|
||||
STAGING_INCDIR=${STAGING_INCDIR} \
|
||||
BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
|
||||
OPT="${CFLAGS}" libpython${PYTHON_MAJMIN}.so
|
||||
|
||||
oe_libinstall -so libpython${PYTHON_MAJMIN} ${STAGING_LIBDIR}
|
||||
|
||||
oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \
|
||||
HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \
|
||||
STAGING_LIBDIR=${STAGING_LIBDIR} \
|
||||
STAGING_INCDIR=${STAGING_INCDIR} \
|
||||
BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
|
||||
OPT="${CFLAGS}"
|
||||
}
|
||||
|
||||
do_install() {
|
||||
install -m 0644 Makefile.orig Makefile
|
||||
|
||||
oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \
|
||||
HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \
|
||||
STAGING_LIBDIR=${STAGING_LIBDIR} \
|
||||
STAGING_INCDIR=${STAGING_INCDIR} \
|
||||
BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
|
||||
DESTDIR=${D} LIBDIR=${libdir} install
|
||||
|
||||
install -m 0644 ${WORKDIR}/sitecustomize.py ${D}/${libdir}/python${PYTHON_MAJMIN}
|
||||
|
||||
# remove hardcoded ccache, see http://bugs.openembedded.net/show_bug.cgi?id=4144
|
||||
sed -i -e s,ccache,'$(CCACHE)', ${D}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile
|
||||
}
|
||||
|
||||
require python-${PYTHON_MAJMIN}-manifest.inc
|
||||
|
||||
# manual dependency additions
|
||||
RPROVIDES_python-core = "python"
|
||||
RRECOMMENDS_python-core = "python-readline"
|
||||
RRECOMMENDS_python-crypt = "openssl"
|
||||
|
||||
# add sitecustomize
|
||||
FILES_python-core += "${libdir}/python${PYTHON_MAJMIN}/sitecustomize.py"
|
||||
# ship 2to3
|
||||
FILES_python-core += "${bindir}/2to3"
|
||||
|
||||
# package libpython2
|
||||
PACKAGES =+ "libpython2"
|
||||
FILES_libpython2 = "${libdir}/libpython*.so*"
|
||||
|
||||
# additional stuff -dev
|
||||
|
||||
FILES_${PN}-dev = "\
|
||||
${includedir} \
|
||||
${libdir}/lib*${SOLIBSDEV} \
|
||||
${libdir}/*.la \
|
||||
${libdir}/*.a \
|
||||
${libdir}/*.o \
|
||||
${libdir}/pkgconfig \
|
||||
${base_libdir}/*.a \
|
||||
${base_libdir}/*.o \
|
||||
${datadir}/aclocal \
|
||||
${datadir}/pkgconfig \
|
||||
"
|
||||
|
||||
# catch debug extensions (isn't that already in python-core-dbg?)
|
||||
FILES_python-dbg += "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/.debug"
|
||||
|
||||
# catch all the rest (unsorted)
|
||||
PACKAGES += "python-misc"
|
||||
FILES_python-misc = "${libdir}/python${PYTHON_MAJMIN}"
|
||||
|
||||
# catch manpage
|
||||
PACKAGES += "python-man"
|
||||
FILES_python-man = "${datadir}/man"
|
Loading…
Reference in New Issue