From e18aba581c7f3f8518b8a9a850b6fe1eabc285ff Mon Sep 17 00:00:00 2001 From: Nitin A Kamble Date: Tue, 6 Jul 2010 05:07:49 -0700 Subject: python: upgrade from 2.6.2 to 2.6.5 python-native: upgrade from 2.6.1 to 2.6.5 Also removed these older version files: python_2.5.2 python-native_2.5.1 Rebased the patches to the newer code. Signed-off-by: Nitin A Kamble --- meta/packages/python/python-2.5.2/autohell.patch | 50 -------- .../python/python-2.5.2/bindir-libdir.patch | 20 ---- .../python/python-2.5.2/crosscompile.patch | 110 ----------------- .../python/python-2.5.2/default-is-optimized.patch | 13 --- .../python/python-2.5.2/enable-ctypes-module.patch | 106 ----------------- .../python-2.5.2/fix-tkinter-detection.patch | 41 ------- .../python/python-2.5.2/sitebranding.patch | 21 ---- meta/packages/python/python-2.5.2/sitecustomize.py | 44 ------- .../00-fix-bindir-libdir-for-cross.patch | 20 ---- .../01-use-proper-tools-for-cross-build.patch | 116 ------------------ .../python-2.6.1/02-remove-test-for-cross.patch | 94 --------------- .../python-2.6.1/03-fix-tkinter-detection.patch | 40 ------- .../python-2.6.1/04-default-is-optimized.patch | 52 --------- .../05-enable-ctypes-cross-build.patch | 28 ----- .../python/python-2.6.1/07-export-grammer.patch | 10 -- .../python-2.6.1/99-ignore-optimization-flag.patch | 19 --- meta/packages/python/python-2.6.1/sitecustomize.py | 45 ------- .../00-fix-bindir-libdir-for-cross.patch | 20 ---- .../01-use-proper-tools-for-cross-build.patch | 116 ------------------ .../python-2.6.2/02-remove-test-for-cross.patch | 94 --------------- .../python-2.6.2/03-fix-tkinter-detection.patch | 40 ------- .../python-2.6.2/04-default-is-optimized.patch | 52 --------- .../05-enable-ctypes-cross-build.patch | 28 ----- .../python-2.6.2/99-ignore-optimization-flag.patch | 19 --- meta/packages/python/python-2.6.2/sitecustomize.py | 45 ------- .../python/python-native-2.5.1/bindir-libdir.patch | 18 --- .../python-native-2.5.1/catchup-with-swig.patch | 13 --- .../python-native-2.5.1/cross-distutils.patch | 36 ------ .../python-native-2.5.1/default-is-optimized.patch | 13 --- .../dont-modify-shebang-line.patch | 16 --- .../python-native-2.5.1/enable-ctypes-module.patch | 106 ----------------- .../python/python-native-2.5.1/fix-staging.patch | 38 ------ .../00-fix-bindir-libdir-for-cross.patch | 20 ---- .../04-default-is-optimized.patch | 18 --- .../10-distutils-fix-swig-parameter.patch | 16 --- .../11-distutils-never-modify-shebang-line.patch | 18 --- ...2-distutils-prefix-is-inside-staging-area.patch | 60 ---------- .../python/python-native-2.6.1/debug.patch | 27 ----- .../python/python-native-2.6.1/nohostlibs.patch | 53 --------- .../python/python-native-2.6.1/sitecustomize.py | 45 ------- .../00-fix-bindir-libdir-for-cross.patch | 20 ++++ .../04-default-is-optimized.patch | 18 +++ .../10-distutils-fix-swig-parameter.patch | 16 +++ .../11-distutils-never-modify-shebang-line.patch | 18 +++ ...2-distutils-prefix-is-inside-staging-area.patch | 60 ++++++++++ .../python/python-native-2.6.5/debug.patch | 27 +++++ .../python/python-native-2.6.5/nohostlibs.patch | 53 +++++++++ .../python/python-native-2.6.5/sitecustomize.py | 45 +++++++ meta/packages/python/python-native_2.6.1.bb | 33 ------ meta/packages/python/python-native_2.6.5.bb | 31 +++++ .../python/00-fix-bindir-libdir-for-cross.patch | 20 ++++ .../01-use-proper-tools-for-cross-build.patch | 116 ++++++++++++++++++ .../python/python/02-remove-test-for-cross.patch | 106 +++++++++++++++++ .../python/python/03-fix-tkinter-detection.patch | 40 +++++++ .../python/python/04-default-is-optimized.patch | 52 +++++++++ .../python/05-enable-ctypes-cross-build.patch | 28 +++++ .../python/99-ignore-optimization-flag.patch | 19 +++ meta/packages/python/python/sitecustomize.py | 45 +++++++ meta/packages/python/python_2.6.1.bb | 113 ------------------ meta/packages/python/python_2.6.2.bb | 130 --------------------- meta/packages/python/python_2.6.5.bb | 121 +++++++++++++++++++ 61 files changed, 835 insertions(+), 2016 deletions(-) delete mode 100644 meta/packages/python/python-2.5.2/autohell.patch delete mode 100644 meta/packages/python/python-2.5.2/bindir-libdir.patch delete mode 100644 meta/packages/python/python-2.5.2/crosscompile.patch delete mode 100644 meta/packages/python/python-2.5.2/default-is-optimized.patch delete mode 100644 meta/packages/python/python-2.5.2/enable-ctypes-module.patch delete mode 100644 meta/packages/python/python-2.5.2/fix-tkinter-detection.patch delete mode 100644 meta/packages/python/python-2.5.2/sitebranding.patch delete mode 100644 meta/packages/python/python-2.5.2/sitecustomize.py delete mode 100644 meta/packages/python/python-2.6.1/00-fix-bindir-libdir-for-cross.patch delete mode 100644 meta/packages/python/python-2.6.1/01-use-proper-tools-for-cross-build.patch delete mode 100644 meta/packages/python/python-2.6.1/02-remove-test-for-cross.patch delete mode 100644 meta/packages/python/python-2.6.1/03-fix-tkinter-detection.patch delete mode 100644 meta/packages/python/python-2.6.1/04-default-is-optimized.patch delete mode 100644 meta/packages/python/python-2.6.1/05-enable-ctypes-cross-build.patch delete mode 100644 meta/packages/python/python-2.6.1/07-export-grammer.patch delete mode 100644 meta/packages/python/python-2.6.1/99-ignore-optimization-flag.patch delete mode 100644 meta/packages/python/python-2.6.1/sitecustomize.py delete mode 100644 meta/packages/python/python-2.6.2/00-fix-bindir-libdir-for-cross.patch delete mode 100644 meta/packages/python/python-2.6.2/01-use-proper-tools-for-cross-build.patch delete mode 100644 meta/packages/python/python-2.6.2/02-remove-test-for-cross.patch delete mode 100644 meta/packages/python/python-2.6.2/03-fix-tkinter-detection.patch delete mode 100644 meta/packages/python/python-2.6.2/04-default-is-optimized.patch delete mode 100644 meta/packages/python/python-2.6.2/05-enable-ctypes-cross-build.patch delete mode 100644 meta/packages/python/python-2.6.2/99-ignore-optimization-flag.patch delete mode 100644 meta/packages/python/python-2.6.2/sitecustomize.py delete mode 100644 meta/packages/python/python-native-2.5.1/bindir-libdir.patch delete mode 100644 meta/packages/python/python-native-2.5.1/catchup-with-swig.patch delete mode 100644 meta/packages/python/python-native-2.5.1/cross-distutils.patch delete mode 100644 meta/packages/python/python-native-2.5.1/default-is-optimized.patch delete mode 100644 meta/packages/python/python-native-2.5.1/dont-modify-shebang-line.patch delete mode 100644 meta/packages/python/python-native-2.5.1/enable-ctypes-module.patch delete mode 100644 meta/packages/python/python-native-2.5.1/fix-staging.patch delete mode 100644 meta/packages/python/python-native-2.6.1/00-fix-bindir-libdir-for-cross.patch delete mode 100644 meta/packages/python/python-native-2.6.1/04-default-is-optimized.patch delete mode 100644 meta/packages/python/python-native-2.6.1/10-distutils-fix-swig-parameter.patch delete mode 100644 meta/packages/python/python-native-2.6.1/11-distutils-never-modify-shebang-line.patch delete mode 100644 meta/packages/python/python-native-2.6.1/12-distutils-prefix-is-inside-staging-area.patch delete mode 100644 meta/packages/python/python-native-2.6.1/debug.patch delete mode 100644 meta/packages/python/python-native-2.6.1/nohostlibs.patch delete mode 100644 meta/packages/python/python-native-2.6.1/sitecustomize.py create mode 100644 meta/packages/python/python-native-2.6.5/00-fix-bindir-libdir-for-cross.patch create mode 100644 meta/packages/python/python-native-2.6.5/04-default-is-optimized.patch create mode 100644 meta/packages/python/python-native-2.6.5/10-distutils-fix-swig-parameter.patch create mode 100644 meta/packages/python/python-native-2.6.5/11-distutils-never-modify-shebang-line.patch create mode 100644 meta/packages/python/python-native-2.6.5/12-distutils-prefix-is-inside-staging-area.patch create mode 100644 meta/packages/python/python-native-2.6.5/debug.patch create mode 100644 meta/packages/python/python-native-2.6.5/nohostlibs.patch create mode 100644 meta/packages/python/python-native-2.6.5/sitecustomize.py delete mode 100644 meta/packages/python/python-native_2.6.1.bb create mode 100644 meta/packages/python/python-native_2.6.5.bb create mode 100644 meta/packages/python/python/00-fix-bindir-libdir-for-cross.patch create mode 100644 meta/packages/python/python/01-use-proper-tools-for-cross-build.patch create mode 100644 meta/packages/python/python/02-remove-test-for-cross.patch create mode 100644 meta/packages/python/python/03-fix-tkinter-detection.patch create mode 100644 meta/packages/python/python/04-default-is-optimized.patch create mode 100644 meta/packages/python/python/05-enable-ctypes-cross-build.patch create mode 100644 meta/packages/python/python/99-ignore-optimization-flag.patch create mode 100644 meta/packages/python/python/sitecustomize.py delete mode 100644 meta/packages/python/python_2.6.1.bb delete mode 100644 meta/packages/python/python_2.6.2.bb create mode 100644 meta/packages/python/python_2.6.5.bb (limited to 'meta/packages') diff --git a/meta/packages/python/python-2.5.2/autohell.patch b/meta/packages/python/python-2.5.2/autohell.patch deleted file mode 100644 index 32977955d..000000000 --- a/meta/packages/python/python-2.5.2/autohell.patch +++ /dev/null @@ -1,50 +0,0 @@ -Index: Python-2.5.2/configure.in -=================================================================== ---- Python-2.5.2.orig/configure.in -+++ Python-2.5.2/configure.in -@@ -3410,45 +3410,6 @@ esac - - - --AC_MSG_CHECKING(for %zd printf() format support) --AC_TRY_RUN([#include --#include --#include -- --#ifdef HAVE_SYS_TYPES_H --#include --#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 does not define.),[ diff --git a/meta/packages/python/python-2.5.2/bindir-libdir.patch b/meta/packages/python/python-2.5.2/bindir-libdir.patch deleted file mode 100644 index 047c358a5..000000000 --- a/meta/packages/python/python-2.5.2/bindir-libdir.patch +++ /dev/null @@ -1,20 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - -Index: Python-2.5.1/Makefile.pre.in -=================================================================== ---- Python-2.5.1.orig/Makefile.pre.in -+++ Python-2.5.1/Makefile.pre.in -@@ -83,8 +83,8 @@ prefix= @prefix@ - exec_prefix= @exec_prefix@ - - # Expanded directories --BINDIR= $(exec_prefix)/bin --LIBDIR= $(exec_prefix)/lib -+BINDIR= @bindir@ -+LIBDIR= @libdir@ - MANDIR= @mandir@ - INCLUDEDIR= @includedir@ - CONFINCLUDEDIR= $(exec_prefix)/include diff --git a/meta/packages/python/python-2.5.2/crosscompile.patch b/meta/packages/python/python-2.5.2/crosscompile.patch deleted file mode 100644 index f1b1c6f3e..000000000 --- a/meta/packages/python/python-2.5.2/crosscompile.patch +++ /dev/null @@ -1,110 +0,0 @@ -# -# Patch (C) by Michael 'Mickey' Lauer -# -Index: Python-2.5.2/Makefile.pre.in -=================================================================== ---- Python-2.5.2.orig/Makefile.pre.in -+++ Python-2.5.2/Makefile.pre.in -@@ -173,6 +173,7 @@ UNICODE_OBJS= @UNICODE_OBJS@ - - PYTHON= python$(EXE) - BUILDPYTHON= python$(BUILDEXE) -+HOSTPYTHON= $(BUILDPYTHON) - - # === Definitions added by makesetup === - -@@ -199,7 +200,7 @@ GRAMMAR_INPUT= $(srcdir)/Grammar/Grammar - ########################################################################## - # Parser - PGEN= Parser/pgen$(EXE) -- -+HOSTPGEN= $(PGEN)$(EXE) - POBJS= \ - Parser/acceler.o \ - Parser/grammar1.o \ -@@ -348,8 +349,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 -@@ -474,7 +475,7 @@ Modules/python.o: $(srcdir)/Modules/pyth - - $(GRAMMAR_H) $(GRAMMAR_C): $(PGEN) $(GRAMMAR_INPUT) - -@ mkdir Include -- -$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) -+ -$(HOSTPGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) - - $(PGEN): $(PGENOBJS) - $(CC) $(OPT) $(LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN) -@@ -782,19 +783,19 @@ libinstall: $(BUILDPYTHON) $(srcdir)/Lib - 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 - -@@ -894,7 +895,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.5.2/setup.py -=================================================================== ---- Python-2.5.2.orig/setup.py -+++ Python-2.5.2/setup.py -@@ -211,6 +211,7 @@ class PyBuildExt(build_ext): - except ImportError, why: - 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 -@@ -244,8 +245,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. -@@ -342,6 +343,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. diff --git a/meta/packages/python/python-2.5.2/default-is-optimized.patch b/meta/packages/python/python-2.5.2/default-is-optimized.patch deleted file mode 100644 index 6beeb6e02..000000000 --- a/meta/packages/python/python-2.5.2/default-is-optimized.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: Python-2.5.1/Python/compile.c -=================================================================== ---- Python-2.5.1.orig/Python/compile.c -+++ Python-2.5.1/Python/compile.c -@@ -30,7 +30,7 @@ - #include "symtable.h" - #include "opcode.h" - --int Py_OptimizeFlag = 0; -+int Py_OptimizeFlag = 1; - - /* - ISSUES: diff --git a/meta/packages/python/python-2.5.2/enable-ctypes-module.patch b/meta/packages/python/python-2.5.2/enable-ctypes-module.patch deleted file mode 100644 index dd5adaf0e..000000000 --- a/meta/packages/python/python-2.5.2/enable-ctypes-module.patch +++ /dev/null @@ -1,106 +0,0 @@ -diff -Naur Python-2.5.1.orig/setup.py Python-2.5.1/setup.py ---- Python-2.5.orig/setup.py 2006-08-10 01:42:18.000000000 +0200 -+++ Python-2.5/setup.py 2007-11-21 18:00:43.000000000 +0100 -@@ -1321,16 +1329,16 @@ - ffi_configfile): - from distutils.dir_util import mkpath - mkpath(ffi_builddir) -- config_args = [] -+ config_args = ['--host=%s' % os.environ["HOST_SYS"], ] - - # Pass empty CFLAGS because we'll just append the resulting - # CFLAGS to Python's; -g or -O2 is to be avoided. -- cmd = "cd %s && env CFLAGS='' '%s/configure' %s" \ -- % (ffi_builddir, ffi_srcdir, " ".join(config_args)) -+ cmd = "(cd %s && autoconf -W cross) && (cd %s && env CFLAGS='' '%s/configure' %s)" \ -+ % (ffi_srcdir, ffi_builddir, ffi_srcdir, " ".join(config_args)) - - res = os.system(cmd) - if res or not os.path.exists(ffi_configfile): -- print "Failed to configure _ctypes module" -+ print "Failed to configure _ctypes module, ret %d or missing %s"% (res, ffi_configfile, ) - return False - - fficonfig = {} -diff -Naur Python-2.5.1.orig/Modules/_ctypes/callbacks.c Python-2.5.1/Modules/_ctypes/callbacks.c ---- Python-2.5.1.orig/Modules/_ctypes/callbacks.c 2006-10-17 21:41:10.000000000 +0200 -+++ Python-2.5.1/Modules/_ctypes/callbacks.c 2007-11-22 10:29:33.000000000 +0100 -@@ -273,11 +273,13 @@ - PyErr_NoMemory(); - return NULL; - } -+#if FFI_CLOSURES - p->pcl = MallocClosure(); - if (p->pcl == NULL) { - PyErr_NoMemory(); - goto error; - } -+#endif - - for (i = 0; i < nArgs; ++i) { - PyObject *cnv = PySequence_GetItem(converters, i); -@@ -315,12 +317,14 @@ - "ffi_prep_cif failed with %d", result); - goto error; - } -+#if FFI_CLOSURES - result = ffi_prep_closure(p->pcl, &p->cif, closure_fcn, p); - if (result != FFI_OK) { - PyErr_Format(PyExc_RuntimeError, - "ffi_prep_closure failed with %d", result); - goto error; - } -+#endif - - p->converters = converters; - p->callable = callable; -@@ -328,8 +332,10 @@ - - error: - if (p) { -+#if FFI_CLOSURES - if (p->pcl) - FreeClosure(p->pcl); -+#endif - PyMem_Free(p); - } - return NULL; -diff -Naur Python-2.5.1.orig/Modules/_ctypes/_ctypes.c Python-2.5.1/Modules/_ctypes/_ctypes.c ---- Python-2.5.1.orig/Modules/_ctypes/_ctypes.c 2007-03-23 20:56:45.000000000 +0100 -+++ Python-2.5.1/Modules/_ctypes/_ctypes.c 2007-11-22 10:29:01.000000000 +0100 -@@ -3419,7 +3419,9 @@ - Py_CLEAR(self->paramflags); - - if (self->thunk) { -+#if FFI_CLOSURES - FreeClosure(self->thunk->pcl); -+#endif - PyMem_Free(self->thunk); - self->thunk = NULL; - } -diff -Naur Python-2.5.1.orig/Modules/_ctypes/ctypes.h Python-2.5.1/Modules/_ctypes/ctypes.h ---- Python-2.5.1.orig/Modules/_ctypes/ctypes.h 2006-08-14 13:17:48.000000000 +0200 -+++ Python-2.5.1/Modules/_ctypes/ctypes.h 2007-11-22 10:29:44.000000000 +0100 -@@ -68,7 +68,9 @@ - }; - - typedef struct { -+#if FFI_CLOSURES - ffi_closure *pcl; /* the C callable */ -+#endif - ffi_cif cif; - PyObject *converters; - PyObject *callable; -diff -Naur Python-2.5.1.orig/Modules/_ctypes/malloc_closure.c Python-2.5.1/Modules/_ctypes/malloc_closure.c ---- Python-2.5.1.orig/Modules/_ctypes/malloc_closure.c 2006-06-12 22:56:48.000000000 +0200 -+++ Python-2.5.1/Modules/_ctypes/malloc_closure.c 2007-11-22 10:30:17.000000000 +0100 -@@ -27,7 +27,9 @@ - /******************************************************************/ - - typedef union _tagITEM { -+#if FFI_CLOSURES - ffi_closure closure; -+#endif - union _tagITEM *next; - } ITEM; - diff --git a/meta/packages/python/python-2.5.2/fix-tkinter-detection.patch b/meta/packages/python/python-2.5.2/fix-tkinter-detection.patch deleted file mode 100644 index 93bd34338..000000000 --- a/meta/packages/python/python-2.5.2/fix-tkinter-detection.patch +++ /dev/null @@ -1,41 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - -Index: Python-2.5.1/setup.py -=================================================================== ---- Python-2.5.1.orig/setup.py -+++ Python-2.5.1/setup.py -@@ -1227,7 +1227,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 -@@ -1246,22 +1246,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) diff --git a/meta/packages/python/python-2.5.2/sitebranding.patch b/meta/packages/python/python-2.5.2/sitebranding.patch deleted file mode 100644 index c6e486ae9..000000000 --- a/meta/packages/python/python-2.5.2/sitebranding.patch +++ /dev/null @@ -1,21 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - -Index: Python-2.5.1/Lib/site.py -=================================================================== ---- Python-2.5.1.orig/Lib/site.py -+++ Python-2.5.1/Lib/site.py -@@ -323,8 +323,9 @@ def setcopyright(): - "Jython is maintained by the Jython developers (www.jython.org).") - else: - __builtin__.credits = _Printer("credits", """\ -- Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands -- for supporting Python development. See www.python.org for more information.""") -+ This version of Python has been built by the OpenEmbedded buildsystem (http://openembedded.org). -+ It is a part of the Python-For-Embedded-Systems initiative which is maintained by -+ Michael 'Mickey' Lauer (http://www.Vanille.de/projects/python.spy).""") - here = os.path.dirname(os.__file__) - __builtin__.license = _Printer( - "license", "See http://www.python.org/%.3s/license.html" % sys.version, diff --git a/meta/packages/python/python-2.5.2/sitecustomize.py b/meta/packages/python/python-2.5.2/sitecustomize.py deleted file mode 100644 index ec626b4b6..000000000 --- a/meta/packages/python/python-2.5.2/sitecustomize.py +++ /dev/null @@ -1,44 +0,0 @@ -# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer -# 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 - -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.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() diff --git a/meta/packages/python/python-2.6.1/00-fix-bindir-libdir-for-cross.patch b/meta/packages/python/python-2.6.1/00-fix-bindir-libdir-for-cross.patch deleted file mode 100644 index 2559e3a0e..000000000 --- a/meta/packages/python/python-2.6.1/00-fix-bindir-libdir-for-cross.patch +++ /dev/null @@ -1,20 +0,0 @@ -# $(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 - -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 diff --git a/meta/packages/python/python-2.6.1/01-use-proper-tools-for-cross-build.patch b/meta/packages/python/python-2.6.1/01-use-proper-tools-for-cross-build.patch deleted file mode 100644 index e89faa4fb..000000000 --- a/meta/packages/python/python-2.6.1/01-use-proper-tools-for-cross-build.patch +++ /dev/null @@ -1,116 +0,0 @@ -# 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 - -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. diff --git a/meta/packages/python/python-2.6.1/02-remove-test-for-cross.patch b/meta/packages/python/python-2.6.1/02-remove-test-for-cross.patch deleted file mode 100644 index 48386ea46..000000000 --- a/meta/packages/python/python-2.6.1/02-remove-test-for-cross.patch +++ /dev/null @@ -1,94 +0,0 @@ -# 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 -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 --#include --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 --#include --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 --#include --#include -- --#ifdef HAVE_SYS_TYPES_H --#include --#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 does not define.),[ diff --git a/meta/packages/python/python-2.6.1/03-fix-tkinter-detection.patch b/meta/packages/python/python-2.6.1/03-fix-tkinter-detection.patch deleted file mode 100644 index a1a385a07..000000000 --- a/meta/packages/python/python-2.6.1/03-fix-tkinter-detection.patch +++ /dev/null @@ -1,40 +0,0 @@ -# We need to supply STAGING_INCDIR here, otherwise the Tk headers -# will not be found. -# Signed-Off: Michael 'Mickey' Lauer - -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) diff --git a/meta/packages/python/python-2.6.1/04-default-is-optimized.patch b/meta/packages/python/python-2.6.1/04-default-is-optimized.patch deleted file mode 100644 index 805f4f696..000000000 --- a/meta/packages/python/python-2.6.1/04-default-is-optimized.patch +++ /dev/null @@ -1,52 +0,0 @@ -# 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 - -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': diff --git a/meta/packages/python/python-2.6.1/05-enable-ctypes-cross-build.patch b/meta/packages/python/python-2.6.1/05-enable-ctypes-cross-build.patch deleted file mode 100644 index 58b807806..000000000 --- a/meta/packages/python/python-2.6.1/05-enable-ctypes-cross-build.patch +++ /dev/null @@ -1,28 +0,0 @@ -# CTypes need to know the actual host we are building on. -# Signed-Off: Michael Dietrich - -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 = {} diff --git a/meta/packages/python/python-2.6.1/07-export-grammer.patch b/meta/packages/python/python-2.6.1/07-export-grammer.patch deleted file mode 100644 index b7ec2bbc6..000000000 --- a/meta/packages/python/python-2.6.1/07-export-grammer.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- 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"); diff --git a/meta/packages/python/python-2.6.1/99-ignore-optimization-flag.patch b/meta/packages/python/python-2.6.1/99-ignore-optimization-flag.patch deleted file mode 100644 index 02dc44c84..000000000 --- a/meta/packages/python/python-2.6.1/99-ignore-optimization-flag.patch +++ /dev/null @@ -1,19 +0,0 @@ -# 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 - -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; diff --git a/meta/packages/python/python-2.6.1/sitecustomize.py b/meta/packages/python/python-2.6.1/sitecustomize.py deleted file mode 100644 index 273901898..000000000 --- a/meta/packages/python/python-2.6.1/sitecustomize.py +++ /dev/null @@ -1,45 +0,0 @@ -# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer -# 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() diff --git a/meta/packages/python/python-2.6.2/00-fix-bindir-libdir-for-cross.patch b/meta/packages/python/python-2.6.2/00-fix-bindir-libdir-for-cross.patch deleted file mode 100644 index 2559e3a0e..000000000 --- a/meta/packages/python/python-2.6.2/00-fix-bindir-libdir-for-cross.patch +++ /dev/null @@ -1,20 +0,0 @@ -# $(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 - -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 diff --git a/meta/packages/python/python-2.6.2/01-use-proper-tools-for-cross-build.patch b/meta/packages/python/python-2.6.2/01-use-proper-tools-for-cross-build.patch deleted file mode 100644 index e89faa4fb..000000000 --- a/meta/packages/python/python-2.6.2/01-use-proper-tools-for-cross-build.patch +++ /dev/null @@ -1,116 +0,0 @@ -# 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 - -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. diff --git a/meta/packages/python/python-2.6.2/02-remove-test-for-cross.patch b/meta/packages/python/python-2.6.2/02-remove-test-for-cross.patch deleted file mode 100644 index 48386ea46..000000000 --- a/meta/packages/python/python-2.6.2/02-remove-test-for-cross.patch +++ /dev/null @@ -1,94 +0,0 @@ -# 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 -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 --#include --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 --#include --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 --#include --#include -- --#ifdef HAVE_SYS_TYPES_H --#include --#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 does not define.),[ diff --git a/meta/packages/python/python-2.6.2/03-fix-tkinter-detection.patch b/meta/packages/python/python-2.6.2/03-fix-tkinter-detection.patch deleted file mode 100644 index a1a385a07..000000000 --- a/meta/packages/python/python-2.6.2/03-fix-tkinter-detection.patch +++ /dev/null @@ -1,40 +0,0 @@ -# We need to supply STAGING_INCDIR here, otherwise the Tk headers -# will not be found. -# Signed-Off: Michael 'Mickey' Lauer - -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) diff --git a/meta/packages/python/python-2.6.2/04-default-is-optimized.patch b/meta/packages/python/python-2.6.2/04-default-is-optimized.patch deleted file mode 100644 index 805f4f696..000000000 --- a/meta/packages/python/python-2.6.2/04-default-is-optimized.patch +++ /dev/null @@ -1,52 +0,0 @@ -# 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 - -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': diff --git a/meta/packages/python/python-2.6.2/05-enable-ctypes-cross-build.patch b/meta/packages/python/python-2.6.2/05-enable-ctypes-cross-build.patch deleted file mode 100644 index 58b807806..000000000 --- a/meta/packages/python/python-2.6.2/05-enable-ctypes-cross-build.patch +++ /dev/null @@ -1,28 +0,0 @@ -# CTypes need to know the actual host we are building on. -# Signed-Off: Michael Dietrich - -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 = {} diff --git a/meta/packages/python/python-2.6.2/99-ignore-optimization-flag.patch b/meta/packages/python/python-2.6.2/99-ignore-optimization-flag.patch deleted file mode 100644 index 02dc44c84..000000000 --- a/meta/packages/python/python-2.6.2/99-ignore-optimization-flag.patch +++ /dev/null @@ -1,19 +0,0 @@ -# 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 - -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; diff --git a/meta/packages/python/python-2.6.2/sitecustomize.py b/meta/packages/python/python-2.6.2/sitecustomize.py deleted file mode 100644 index 273901898..000000000 --- a/meta/packages/python/python-2.6.2/sitecustomize.py +++ /dev/null @@ -1,45 +0,0 @@ -# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer -# 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() diff --git a/meta/packages/python/python-native-2.5.1/bindir-libdir.patch b/meta/packages/python/python-native-2.5.1/bindir-libdir.patch deleted file mode 100644 index 999bddc44..000000000 --- a/meta/packages/python/python-native-2.5.1/bindir-libdir.patch +++ /dev/null @@ -1,18 +0,0 @@ - -# -# Made by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- Python-2.3.1/Makefile.pre.in~bindir-libdir 2003-09-20 12:50:28.000000000 +0200 -+++ Python-2.3.1/Makefile.pre.in 2003-11-02 19:53:17.000000000 +0100 -@@ -78,8 +78,8 @@ - exec_prefix= @exec_prefix@ - - # Expanded directories --BINDIR= $(exec_prefix)/bin --LIBDIR= $(exec_prefix)/lib -+BINDIR= @bindir@ -+LIBDIR= @libdir@ - MANDIR= @mandir@ - INCLUDEDIR= @includedir@ - CONFINCLUDEDIR= $(exec_prefix)/include diff --git a/meta/packages/python/python-native-2.5.1/catchup-with-swig.patch b/meta/packages/python/python-native-2.5.1/catchup-with-swig.patch deleted file mode 100644 index f049b759f..000000000 --- a/meta/packages/python/python-native-2.5.1/catchup-with-swig.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: Python-2.5.1/Lib/distutils/command/build_ext.py -=================================================================== ---- Python-2.5.1.orig/Lib/distutils/command/build_ext.py -+++ Python-2.5.1/Lib/distutils/command/build_ext.py -@@ -513,7 +513,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 diff --git a/meta/packages/python/python-native-2.5.1/cross-distutils.patch b/meta/packages/python/python-native-2.5.1/cross-distutils.patch deleted file mode 100644 index 3356c1abb..000000000 --- a/meta/packages/python/python-native-2.5.1/cross-distutils.patch +++ /dev/null @@ -1,36 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- Python-2.3.3/Lib/distutils/sysconfig.py~cross-distutils 2003-02-10 15:02:33.000000000 +0100 -+++ Python-2.3.3/Lib/distutils/sysconfig.py 2004-03-02 20:15:05.000000000 +0100 -@@ -19,8 +19,8 @@ - from 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") ) - - # python_build: (Boolean) if true, we're either building Python or - # building an extension with an un-installed Python, so we use -@@ -192,7 +192,7 @@ - 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(): -@@ -200,7 +200,7 @@ - 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): diff --git a/meta/packages/python/python-native-2.5.1/default-is-optimized.patch b/meta/packages/python/python-native-2.5.1/default-is-optimized.patch deleted file mode 100644 index 6beeb6e02..000000000 --- a/meta/packages/python/python-native-2.5.1/default-is-optimized.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: Python-2.5.1/Python/compile.c -=================================================================== ---- Python-2.5.1.orig/Python/compile.c -+++ Python-2.5.1/Python/compile.c -@@ -30,7 +30,7 @@ - #include "symtable.h" - #include "opcode.h" - --int Py_OptimizeFlag = 0; -+int Py_OptimizeFlag = 1; - - /* - ISSUES: diff --git a/meta/packages/python/python-native-2.5.1/dont-modify-shebang-line.patch b/meta/packages/python/python-native-2.5.1/dont-modify-shebang-line.patch deleted file mode 100644 index 54109afd6..000000000 --- a/meta/packages/python/python-native-2.5.1/dont-modify-shebang-line.patch +++ /dev/null @@ -1,16 +0,0 @@ - -# -# Signed off by Michael 'Mickey' Lauer -# - ---- Python-2.4/Lib/distutils/command/build_scripts.py~dont-modify-shebang-line -+++ Python-2.4/Lib/distutils/command/build_scripts.py -@@ -87,7 +87,7 @@ - continue - - match = first_line_re.match(first_line) -- if match: -+ if False: #match: - adjust = 1 - post_interp = match.group(1) or '' - diff --git a/meta/packages/python/python-native-2.5.1/enable-ctypes-module.patch b/meta/packages/python/python-native-2.5.1/enable-ctypes-module.patch deleted file mode 100644 index dd5adaf0e..000000000 --- a/meta/packages/python/python-native-2.5.1/enable-ctypes-module.patch +++ /dev/null @@ -1,106 +0,0 @@ -diff -Naur Python-2.5.1.orig/setup.py Python-2.5.1/setup.py ---- Python-2.5.orig/setup.py 2006-08-10 01:42:18.000000000 +0200 -+++ Python-2.5/setup.py 2007-11-21 18:00:43.000000000 +0100 -@@ -1321,16 +1329,16 @@ - ffi_configfile): - from distutils.dir_util import mkpath - mkpath(ffi_builddir) -- config_args = [] -+ config_args = ['--host=%s' % os.environ["HOST_SYS"], ] - - # Pass empty CFLAGS because we'll just append the resulting - # CFLAGS to Python's; -g or -O2 is to be avoided. -- cmd = "cd %s && env CFLAGS='' '%s/configure' %s" \ -- % (ffi_builddir, ffi_srcdir, " ".join(config_args)) -+ cmd = "(cd %s && autoconf -W cross) && (cd %s && env CFLAGS='' '%s/configure' %s)" \ -+ % (ffi_srcdir, ffi_builddir, ffi_srcdir, " ".join(config_args)) - - res = os.system(cmd) - if res or not os.path.exists(ffi_configfile): -- print "Failed to configure _ctypes module" -+ print "Failed to configure _ctypes module, ret %d or missing %s"% (res, ffi_configfile, ) - return False - - fficonfig = {} -diff -Naur Python-2.5.1.orig/Modules/_ctypes/callbacks.c Python-2.5.1/Modules/_ctypes/callbacks.c ---- Python-2.5.1.orig/Modules/_ctypes/callbacks.c 2006-10-17 21:41:10.000000000 +0200 -+++ Python-2.5.1/Modules/_ctypes/callbacks.c 2007-11-22 10:29:33.000000000 +0100 -@@ -273,11 +273,13 @@ - PyErr_NoMemory(); - return NULL; - } -+#if FFI_CLOSURES - p->pcl = MallocClosure(); - if (p->pcl == NULL) { - PyErr_NoMemory(); - goto error; - } -+#endif - - for (i = 0; i < nArgs; ++i) { - PyObject *cnv = PySequence_GetItem(converters, i); -@@ -315,12 +317,14 @@ - "ffi_prep_cif failed with %d", result); - goto error; - } -+#if FFI_CLOSURES - result = ffi_prep_closure(p->pcl, &p->cif, closure_fcn, p); - if (result != FFI_OK) { - PyErr_Format(PyExc_RuntimeError, - "ffi_prep_closure failed with %d", result); - goto error; - } -+#endif - - p->converters = converters; - p->callable = callable; -@@ -328,8 +332,10 @@ - - error: - if (p) { -+#if FFI_CLOSURES - if (p->pcl) - FreeClosure(p->pcl); -+#endif - PyMem_Free(p); - } - return NULL; -diff -Naur Python-2.5.1.orig/Modules/_ctypes/_ctypes.c Python-2.5.1/Modules/_ctypes/_ctypes.c ---- Python-2.5.1.orig/Modules/_ctypes/_ctypes.c 2007-03-23 20:56:45.000000000 +0100 -+++ Python-2.5.1/Modules/_ctypes/_ctypes.c 2007-11-22 10:29:01.000000000 +0100 -@@ -3419,7 +3419,9 @@ - Py_CLEAR(self->paramflags); - - if (self->thunk) { -+#if FFI_CLOSURES - FreeClosure(self->thunk->pcl); -+#endif - PyMem_Free(self->thunk); - self->thunk = NULL; - } -diff -Naur Python-2.5.1.orig/Modules/_ctypes/ctypes.h Python-2.5.1/Modules/_ctypes/ctypes.h ---- Python-2.5.1.orig/Modules/_ctypes/ctypes.h 2006-08-14 13:17:48.000000000 +0200 -+++ Python-2.5.1/Modules/_ctypes/ctypes.h 2007-11-22 10:29:44.000000000 +0100 -@@ -68,7 +68,9 @@ - }; - - typedef struct { -+#if FFI_CLOSURES - ffi_closure *pcl; /* the C callable */ -+#endif - ffi_cif cif; - PyObject *converters; - PyObject *callable; -diff -Naur Python-2.5.1.orig/Modules/_ctypes/malloc_closure.c Python-2.5.1/Modules/_ctypes/malloc_closure.c ---- Python-2.5.1.orig/Modules/_ctypes/malloc_closure.c 2006-06-12 22:56:48.000000000 +0200 -+++ Python-2.5.1/Modules/_ctypes/malloc_closure.c 2007-11-22 10:30:17.000000000 +0100 -@@ -27,7 +27,9 @@ - /******************************************************************/ - - typedef union _tagITEM { -+#if FFI_CLOSURES - ffi_closure closure; -+#endif - union _tagITEM *next; - } ITEM; - diff --git a/meta/packages/python/python-native-2.5.1/fix-staging.patch b/meta/packages/python/python-native-2.5.1/fix-staging.patch deleted file mode 100644 index 087c813fd..000000000 --- a/meta/packages/python/python-native-2.5.1/fix-staging.patch +++ /dev/null @@ -1,38 +0,0 @@ ---- - Lib/distutils/sysconfig.py | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - ---- Python-2.5.1.orig/Lib/distutils/sysconfig.py -+++ Python-2.5.1/Lib/distutils/sysconfig.py -@@ -52,11 +52,14 @@ def get_python_inc(plat_specific=0, pref - - If 'prefix' is supplied, use it instead of sys.prefix or - 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)) - if plat_specific: - inc_dir = base -@@ -94,11 +97,14 @@ def get_python_lib(plat_specific=0, stan - - If 'prefix' is supplied, use it instead of sys.prefix or - 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, - "lib", "python" + get_python_version()) - if standard_lib: diff --git a/meta/packages/python/python-native-2.6.1/00-fix-bindir-libdir-for-cross.patch b/meta/packages/python/python-native-2.6.1/00-fix-bindir-libdir-for-cross.patch deleted file mode 100644 index 2559e3a0e..000000000 --- a/meta/packages/python/python-native-2.6.1/00-fix-bindir-libdir-for-cross.patch +++ /dev/null @@ -1,20 +0,0 @@ -# $(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 - -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 diff --git a/meta/packages/python/python-native-2.6.1/04-default-is-optimized.patch b/meta/packages/python/python-native-2.6.1/04-default-is-optimized.patch deleted file mode 100644 index 5131e0ba6..000000000 --- a/meta/packages/python/python-native-2.6.1/04-default-is-optimized.patch +++ /dev/null @@ -1,18 +0,0 @@ -# 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 - -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 diff --git a/meta/packages/python/python-native-2.6.1/10-distutils-fix-swig-parameter.patch b/meta/packages/python/python-native-2.6.1/10-distutils-fix-swig-parameter.patch deleted file mode 100644 index f5e852a11..000000000 --- a/meta/packages/python/python-native-2.6.1/10-distutils-fix-swig-parameter.patch +++ /dev/null @@ -1,16 +0,0 @@ -# Some versions of SWIG do not use the extension parameter. -# Make it optional. -# Signed-Off: Michael 'Mickey' Lauer -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 diff --git a/meta/packages/python/python-native-2.6.1/11-distutils-never-modify-shebang-line.patch b/meta/packages/python/python-native-2.6.1/11-distutils-never-modify-shebang-line.patch deleted file mode 100644 index 8354e266f..000000000 --- a/meta/packages/python/python-native-2.6.1/11-distutils-never-modify-shebang-line.patch +++ /dev/null @@ -1,18 +0,0 @@ -# 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 - -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 '' - diff --git a/meta/packages/python/python-native-2.6.1/12-distutils-prefix-is-inside-staging-area.patch b/meta/packages/python/python-native-2.6.1/12-distutils-prefix-is-inside-staging-area.patch deleted file mode 100644 index aa4393679..000000000 --- a/meta/packages/python/python-native-2.6.1/12-distutils-prefix-is-inside-staging-area.patch +++ /dev/null @@ -1,60 +0,0 @@ -# The proper prefix is inside our staging area. -# Signed-Off: Michael 'Mickey' Lauer - -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): diff --git a/meta/packages/python/python-native-2.6.1/debug.patch b/meta/packages/python/python-native-2.6.1/debug.patch deleted file mode 100644 index beb3adc6d..000000000 --- a/meta/packages/python/python-native-2.6.1/debug.patch +++ /dev/null @@ -1,27 +0,0 @@ -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' diff --git a/meta/packages/python/python-native-2.6.1/nohostlibs.patch b/meta/packages/python/python-native-2.6.1/nohostlibs.patch deleted file mode 100644 index 7020f3c2a..000000000 --- a/meta/packages/python/python-native-2.6.1/nohostlibs.patch +++ /dev/null @@ -1,53 +0,0 @@ -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'], diff --git a/meta/packages/python/python-native-2.6.1/sitecustomize.py b/meta/packages/python/python-native-2.6.1/sitecustomize.py deleted file mode 100644 index 273901898..000000000 --- a/meta/packages/python/python-native-2.6.1/sitecustomize.py +++ /dev/null @@ -1,45 +0,0 @@ -# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer -# 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() diff --git a/meta/packages/python/python-native-2.6.5/00-fix-bindir-libdir-for-cross.patch b/meta/packages/python/python-native-2.6.5/00-fix-bindir-libdir-for-cross.patch new file mode 100644 index 000000000..2559e3a0e --- /dev/null +++ b/meta/packages/python/python-native-2.6.5/00-fix-bindir-libdir-for-cross.patch @@ -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 + +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 diff --git a/meta/packages/python/python-native-2.6.5/04-default-is-optimized.patch b/meta/packages/python/python-native-2.6.5/04-default-is-optimized.patch new file mode 100644 index 000000000..5131e0ba6 --- /dev/null +++ b/meta/packages/python/python-native-2.6.5/04-default-is-optimized.patch @@ -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 + +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 diff --git a/meta/packages/python/python-native-2.6.5/10-distutils-fix-swig-parameter.patch b/meta/packages/python/python-native-2.6.5/10-distutils-fix-swig-parameter.patch new file mode 100644 index 000000000..f5e852a11 --- /dev/null +++ b/meta/packages/python/python-native-2.6.5/10-distutils-fix-swig-parameter.patch @@ -0,0 +1,16 @@ +# Some versions of SWIG do not use the extension parameter. +# Make it optional. +# Signed-Off: Michael 'Mickey' Lauer +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 diff --git a/meta/packages/python/python-native-2.6.5/11-distutils-never-modify-shebang-line.patch b/meta/packages/python/python-native-2.6.5/11-distutils-never-modify-shebang-line.patch new file mode 100644 index 000000000..8354e266f --- /dev/null +++ b/meta/packages/python/python-native-2.6.5/11-distutils-never-modify-shebang-line.patch @@ -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 + +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 '' + diff --git a/meta/packages/python/python-native-2.6.5/12-distutils-prefix-is-inside-staging-area.patch b/meta/packages/python/python-native-2.6.5/12-distutils-prefix-is-inside-staging-area.patch new file mode 100644 index 000000000..aa4393679 --- /dev/null +++ b/meta/packages/python/python-native-2.6.5/12-distutils-prefix-is-inside-staging-area.patch @@ -0,0 +1,60 @@ +# The proper prefix is inside our staging area. +# Signed-Off: Michael 'Mickey' Lauer + +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): diff --git a/meta/packages/python/python-native-2.6.5/debug.patch b/meta/packages/python/python-native-2.6.5/debug.patch new file mode 100644 index 000000000..beb3adc6d --- /dev/null +++ b/meta/packages/python/python-native-2.6.5/debug.patch @@ -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' diff --git a/meta/packages/python/python-native-2.6.5/nohostlibs.patch b/meta/packages/python/python-native-2.6.5/nohostlibs.patch new file mode 100644 index 000000000..7020f3c2a --- /dev/null +++ b/meta/packages/python/python-native-2.6.5/nohostlibs.patch @@ -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'], diff --git a/meta/packages/python/python-native-2.6.5/sitecustomize.py b/meta/packages/python/python-native-2.6.5/sitecustomize.py new file mode 100644 index 000000000..273901898 --- /dev/null +++ b/meta/packages/python/python-native-2.6.5/sitecustomize.py @@ -0,0 +1,45 @@ +# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer +# 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() diff --git a/meta/packages/python/python-native_2.6.1.bb b/meta/packages/python/python-native_2.6.1.bb deleted file mode 100644 index 943943589..000000000 --- a/meta/packages/python/python-native_2.6.1.bb +++ /dev/null @@ -1,33 +0,0 @@ -require python.inc -DEPENDS = "openssl-native bzip2-full-native zlib-native readline-native sqlite3-native" -PR = "${INC_PR}.3" - -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}/ -} diff --git a/meta/packages/python/python-native_2.6.5.bb b/meta/packages/python/python-native_2.6.5.bb new file mode 100644 index 000000000..d766853c1 --- /dev/null +++ b/meta/packages/python/python-native_2.6.5.bb @@ -0,0 +1,31 @@ +require python.inc +DEPENDS = "openssl-native bzip2-full-native zlib-native readline-native sqlite3-native" +PR = "${INC_PR}.3" + +SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2 \ + file://00-fix-bindir-libdir-for-cross.patch \ + file://04-default-is-optimized.patch \ + file://05-enable-ctypes-cross-build.patch \ + file://10-distutils-fix-swig-parameter.patch \ + file://11-distutils-never-modify-shebang-line.patch \ + file://12-distutils-prefix-is-inside-staging-area.patch \ + file://debug.patch \ + file://nohostlibs.patch" +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}/ +} diff --git a/meta/packages/python/python/00-fix-bindir-libdir-for-cross.patch b/meta/packages/python/python/00-fix-bindir-libdir-for-cross.patch new file mode 100644 index 000000000..2559e3a0e --- /dev/null +++ b/meta/packages/python/python/00-fix-bindir-libdir-for-cross.patch @@ -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 + +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 diff --git a/meta/packages/python/python/01-use-proper-tools-for-cross-build.patch b/meta/packages/python/python/01-use-proper-tools-for-cross-build.patch new file mode 100644 index 000000000..e89faa4fb --- /dev/null +++ b/meta/packages/python/python/01-use-proper-tools-for-cross-build.patch @@ -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 + +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. diff --git a/meta/packages/python/python/02-remove-test-for-cross.patch b/meta/packages/python/python/02-remove-test-for-cross.patch new file mode 100644 index 000000000..b1c0bfb85 --- /dev/null +++ b/meta/packages/python/python/02-remove-test-for-cross.patch @@ -0,0 +1,106 @@ +# 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 +Index: Python-2.6.1/configure.in +=================================================================== +--- Python-2.6.5.orig/configure.in 2010-07-06 04:37:09.000000000 -0700 ++++ Python-2.6.5/configure.in 2010-07-06 04:40:18.000000000 -0700 +@@ -2697,50 +2697,6 @@ + AC_CHECK_LIB(resolv, inet_aton) + ) + +-# On Tru64, chflags seems to be present, but calling it will +-# exit Python +-AC_CACHE_CHECK([for chflags], [ac_cv_have_chflags], [dnl +-AC_TRY_RUN([[ +-#include +-#include +-int main(int argc, char*argv[]) +-{ +- if(chflags(argv[0], 0) != 0) +- return 1; +- return 0; +-} +-]], ac_cv_have_chflags=yes, +- ac_cv_have_chflags=no, +- ac_cv_have_chflags=cross) +-]) +-if test "$ac_cv_have_chflags" = cross ; then +- AC_CHECK_FUNC([chflags], [ac_cv_have_chflags="yes"], [ac_cv_have_chflags="no"]) +-fi +-if test "$ac_cv_have_chflags" = yes ; then +- AC_DEFINE(HAVE_CHFLAGS, 1, Define to 1 if you have the `chflags' function.) +-fi +- +-AC_CACHE_CHECK([for lchflags], [ac_cv_have_lchflags], [dnl +-AC_TRY_RUN([[ +-#include +-#include +-int main(int argc, char*argv[]) +-{ +- if(lchflags(argv[0], 0) != 0) +- return 1; +- return 0; +-} +-]], ac_cv_have_lchflags=yes, +- ac_cv_have_lchflags=no, +- ac_cv_have_lchflags=cross) +-]) +-if test "$ac_cv_have_lchflags" = cross ; then +- AC_CHECK_FUNC([lchflags], [ac_cv_have_lchflags="yes"], [ac_cv_have_lchflags="no"]) +-fi +-if test "$ac_cv_have_lchflags" = yes ; then +- AC_DEFINE(HAVE_LCHFLAGS, 1, Define to 1 if you have the `lchflags' function.) +-fi +- + dnl Check if system zlib has *Copy() functions + dnl + dnl On MacOSX the linker will search for dylibs on the entire linker path +@@ -3844,45 +3800,6 @@ + AC_MSG_RESULT(no) + fi + +-AC_MSG_CHECKING(for %zd printf() format support) +-AC_TRY_RUN([#include +-#include +-#include +- +-#ifdef HAVE_SYS_TYPES_H +-#include +-#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 does not define.),[ diff --git a/meta/packages/python/python/03-fix-tkinter-detection.patch b/meta/packages/python/python/03-fix-tkinter-detection.patch new file mode 100644 index 000000000..a1a385a07 --- /dev/null +++ b/meta/packages/python/python/03-fix-tkinter-detection.patch @@ -0,0 +1,40 @@ +# We need to supply STAGING_INCDIR here, otherwise the Tk headers +# will not be found. +# Signed-Off: Michael 'Mickey' Lauer + +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) diff --git a/meta/packages/python/python/04-default-is-optimized.patch b/meta/packages/python/python/04-default-is-optimized.patch new file mode 100644 index 000000000..805f4f696 --- /dev/null +++ b/meta/packages/python/python/04-default-is-optimized.patch @@ -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 + +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': diff --git a/meta/packages/python/python/05-enable-ctypes-cross-build.patch b/meta/packages/python/python/05-enable-ctypes-cross-build.patch new file mode 100644 index 000000000..58b807806 --- /dev/null +++ b/meta/packages/python/python/05-enable-ctypes-cross-build.patch @@ -0,0 +1,28 @@ +# CTypes need to know the actual host we are building on. +# Signed-Off: Michael Dietrich + +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 = {} diff --git a/meta/packages/python/python/99-ignore-optimization-flag.patch b/meta/packages/python/python/99-ignore-optimization-flag.patch new file mode 100644 index 000000000..02dc44c84 --- /dev/null +++ b/meta/packages/python/python/99-ignore-optimization-flag.patch @@ -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 + +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; diff --git a/meta/packages/python/python/sitecustomize.py b/meta/packages/python/python/sitecustomize.py new file mode 100644 index 000000000..273901898 --- /dev/null +++ b/meta/packages/python/python/sitecustomize.py @@ -0,0 +1,45 @@ +# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer +# 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() diff --git a/meta/packages/python/python_2.6.1.bb b/meta/packages/python/python_2.6.1.bb deleted file mode 100644 index 46e14f84e..000000000 --- a/meta/packages/python/python_2.6.1.bb +++ /dev/null @@ -1,113 +0,0 @@ -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" diff --git a/meta/packages/python/python_2.6.2.bb b/meta/packages/python/python_2.6.2.bb deleted file mode 100644 index e17aa5820..000000000 --- a/meta/packages/python/python_2.6.2.bb +++ /dev/null @@ -1,130 +0,0 @@ -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}.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://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" diff --git a/meta/packages/python/python_2.6.5.bb b/meta/packages/python/python_2.6.5.bb new file mode 100644 index 000000000..9658fd48d --- /dev/null +++ b/meta/packages/python/python_2.6.5.bb @@ -0,0 +1,121 @@ +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}.2" + +SRC_URI = "\ + http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2 \ + file://00-fix-bindir-libdir-for-cross.patch \ + file://01-use-proper-tools-for-cross-build.patch \ + file://02-remove-test-for-cross.patch \ + file://03-fix-tkinter-detection.patch \ + file://04-default-is-optimized.patch \ + file://05-enable-ctypes-cross-build.patch \ + file://99-ignore-optimization-flag.patch \ + 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" -- cgit v1.2.3