mirror of
https://git.yoctoproject.org/poky
synced 2026-05-30 12:29:55 +00:00
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 <nitin.a.kamble@intel.com>
This commit is contained in:
committed by
Saul Wold
parent
936a73eae5
commit
e18aba581c
@@ -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 <stdio.h>
|
|
||||||
-#include <stddef.h>
|
|
||||||
-#include <string.h>
|
|
||||||
-
|
|
||||||
-#ifdef HAVE_SYS_TYPES_H
|
|
||||||
-#include <sys/types.h>
|
|
||||||
-#endif
|
|
||||||
-
|
|
||||||
-#ifdef HAVE_SSIZE_T
|
|
||||||
-typedef ssize_t Py_ssize_t;
|
|
||||||
-#elif SIZEOF_VOID_P == SIZEOF_LONG
|
|
||||||
-typedef long Py_ssize_t;
|
|
||||||
-#else
|
|
||||||
-typedef int Py_ssize_t;
|
|
||||||
-#endif
|
|
||||||
-
|
|
||||||
-int main()
|
|
||||||
-{
|
|
||||||
- char buffer[256];
|
|
||||||
-
|
|
||||||
- if(sprintf(buffer, "%zd", (size_t)123) < 0)
|
|
||||||
- return 1;
|
|
||||||
-
|
|
||||||
- if (strcmp(buffer, "123"))
|
|
||||||
- return 1;
|
|
||||||
-
|
|
||||||
- if (sprintf(buffer, "%zd", (Py_ssize_t)-123) < 0)
|
|
||||||
- return 1;
|
|
||||||
-
|
|
||||||
- if (strcmp(buffer, "-123"))
|
|
||||||
- return 1;
|
|
||||||
-
|
|
||||||
- return 0;
|
|
||||||
-}],
|
|
||||||
-[AC_MSG_RESULT(yes)
|
|
||||||
- AC_DEFINE(PY_FORMAT_SIZE_T, "z", [Define to printf format modifier for Py_ssize_t])],
|
|
||||||
- AC_MSG_RESULT(no))
|
|
||||||
-
|
|
||||||
AC_CHECK_TYPE(socklen_t,,
|
|
||||||
AC_DEFINE(socklen_t,int,
|
|
||||||
Define to `int' if <sys/socket.h> does not define.),[
|
|
||||||
@@ -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
|
|
||||||
@@ -1,110 +0,0 @@
|
|||||||
#
|
|
||||||
# Patch (C) by Michael 'Mickey' Lauer <mlauer@vanille-media.de>
|
|
||||||
#
|
|
||||||
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.
|
|
||||||
@@ -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:
|
|
||||||
@@ -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;
|
|
||||||
|
|
||||||
@@ -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)
|
|
||||||
@@ -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,
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer <mlauer@vanille-media.de>
|
|
||||||
# GPLv2 or later
|
|
||||||
# Version: 20082201
|
|
||||||
# Features:
|
|
||||||
# * set proper default encoding
|
|
||||||
# * enable readline completion in the interactive interpreter
|
|
||||||
# * load command line history on startup
|
|
||||||
# * save command line history on exit
|
|
||||||
|
|
||||||
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()
|
|
||||||
@@ -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 <mickey@vanille-media.de>
|
|
||||||
Index: Python-2.6.1/configure.in
|
|
||||||
===================================================================
|
|
||||||
--- Python-2.6.1.orig/configure.in
|
|
||||||
+++ Python-2.6.1/configure.in
|
|
||||||
@@ -2556,38 +2556,6 @@ AC_CHECK_LIB(c, inet_aton, [$ac_cv_prog_
|
|
||||||
AC_CHECK_LIB(resolv, inet_aton)
|
|
||||||
)
|
|
||||||
|
|
||||||
-# On Tru64, chflags seems to be present, but calling it will
|
|
||||||
-# exit Python
|
|
||||||
-AC_MSG_CHECKING(for chflags)
|
|
||||||
-AC_TRY_RUN([
|
|
||||||
-#include <sys/stat.h>
|
|
||||||
-#include <unistd.h>
|
|
||||||
-int main(int argc, char*argv[])
|
|
||||||
-{
|
|
||||||
- if(chflags(argv[0], 0) != 0)
|
|
||||||
- return 1;
|
|
||||||
- return 0;
|
|
||||||
-}
|
|
||||||
-],AC_DEFINE(HAVE_CHFLAGS, 1, Define to 1 if you have the `chflags' function.)
|
|
||||||
- AC_MSG_RESULT(yes),
|
|
||||||
- AC_MSG_RESULT(no)
|
|
||||||
-)
|
|
||||||
-
|
|
||||||
-AC_MSG_CHECKING(for lchflags)
|
|
||||||
-AC_TRY_RUN([
|
|
||||||
-#include <sys/stat.h>
|
|
||||||
-#include <unistd.h>
|
|
||||||
-int main(int argc, char*argv[])
|
|
||||||
-{
|
|
||||||
- if(lchflags(argv[0], 0) != 0)
|
|
||||||
- return 1;
|
|
||||||
- return 0;
|
|
||||||
-}
|
|
||||||
-],AC_DEFINE(HAVE_LCHFLAGS, 1, Define to 1 if you have the `lchflags' function.)
|
|
||||||
- AC_MSG_RESULT(yes),
|
|
||||||
- AC_MSG_RESULT(no)
|
|
||||||
-)
|
|
||||||
-
|
|
||||||
dnl Check if system zlib has *Copy() functions
|
|
||||||
dnl
|
|
||||||
dnl On MacOSX the linker will search for dylibs on the entire linker path
|
|
||||||
@@ -3649,45 +3617,6 @@ else
|
|
||||||
AC_MSG_RESULT(no)
|
|
||||||
fi
|
|
||||||
|
|
||||||
-AC_MSG_CHECKING(for %zd printf() format support)
|
|
||||||
-AC_TRY_RUN([#include <stdio.h>
|
|
||||||
-#include <stddef.h>
|
|
||||||
-#include <string.h>
|
|
||||||
-
|
|
||||||
-#ifdef HAVE_SYS_TYPES_H
|
|
||||||
-#include <sys/types.h>
|
|
||||||
-#endif
|
|
||||||
-
|
|
||||||
-#ifdef HAVE_SSIZE_T
|
|
||||||
-typedef ssize_t Py_ssize_t;
|
|
||||||
-#elif SIZEOF_VOID_P == SIZEOF_LONG
|
|
||||||
-typedef long Py_ssize_t;
|
|
||||||
-#else
|
|
||||||
-typedef int Py_ssize_t;
|
|
||||||
-#endif
|
|
||||||
-
|
|
||||||
-int main()
|
|
||||||
-{
|
|
||||||
- char buffer[256];
|
|
||||||
-
|
|
||||||
- if(sprintf(buffer, "%zd", (size_t)123) < 0)
|
|
||||||
- return 1;
|
|
||||||
-
|
|
||||||
- if (strcmp(buffer, "123"))
|
|
||||||
- return 1;
|
|
||||||
-
|
|
||||||
- if (sprintf(buffer, "%zd", (Py_ssize_t)-123) < 0)
|
|
||||||
- return 1;
|
|
||||||
-
|
|
||||||
- if (strcmp(buffer, "-123"))
|
|
||||||
- return 1;
|
|
||||||
-
|
|
||||||
- return 0;
|
|
||||||
-}],
|
|
||||||
-[AC_MSG_RESULT(yes)
|
|
||||||
- AC_DEFINE(PY_FORMAT_SIZE_T, "z", [Define to printf format modifier for Py_ssize_t])],
|
|
||||||
- AC_MSG_RESULT(no))
|
|
||||||
-
|
|
||||||
AC_CHECK_TYPE(socklen_t,,
|
|
||||||
AC_DEFINE(socklen_t,int,
|
|
||||||
Define to `int' if <sys/socket.h> does not define.),[
|
|
||||||
@@ -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");
|
|
||||||
@@ -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 <mickey@vanille-media.de>
|
|
||||||
|
|
||||||
Index: Python-2.6.1/Makefile.pre.in
|
|
||||||
===================================================================
|
|
||||||
--- Python-2.6.1.orig/Makefile.pre.in
|
|
||||||
+++ Python-2.6.1/Makefile.pre.in
|
|
||||||
@@ -175,6 +175,7 @@ UNICODE_OBJS= @UNICODE_OBJS@
|
|
||||||
|
|
||||||
PYTHON= python$(EXE)
|
|
||||||
BUILDPYTHON= python$(BUILDEXE)
|
|
||||||
+HOSTPYTHON= $(BUILDPYTHON)
|
|
||||||
|
|
||||||
# The task to run while instrument when building the profile-opt target
|
|
||||||
PROFILE_TASK= $(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck
|
|
||||||
@@ -205,7 +206,7 @@ GRAMMAR_INPUT= $(srcdir)/Grammar/Grammar
|
|
||||||
##########################################################################
|
|
||||||
# Parser
|
|
||||||
PGEN= Parser/pgen$(EXE)
|
|
||||||
-
|
|
||||||
+HOSTPGEN= $(PGEN)$(EXE)
|
|
||||||
POBJS= \
|
|
||||||
Parser/acceler.o \
|
|
||||||
Parser/grammar1.o \
|
|
||||||
@@ -394,8 +395,8 @@ platform: $(BUILDPYTHON)
|
|
||||||
# Build the shared modules
|
|
||||||
sharedmods: $(BUILDPYTHON)
|
|
||||||
@case $$MAKEFLAGS in \
|
|
||||||
- *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \
|
|
||||||
- *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \
|
|
||||||
+ *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' $(HOSTPYTHON) -E $(srcdir)/setup.py -q build;; \
|
|
||||||
+ *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' $(HOSTPYTHON) -E $(srcdir)/setup.py build;; \
|
|
||||||
esac
|
|
||||||
|
|
||||||
# Build static library
|
|
||||||
@@ -513,7 +514,7 @@ Modules/python.o: $(srcdir)/Modules/pyth
|
|
||||||
|
|
||||||
$(GRAMMAR_H) $(GRAMMAR_C): $(PGEN) $(GRAMMAR_INPUT)
|
|
||||||
-@$(INSTALL) -d Include
|
|
||||||
- -$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
|
|
||||||
+ -$(HOSTPGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
|
|
||||||
|
|
||||||
$(PGEN): $(PGENOBJS)
|
|
||||||
$(CC) $(OPT) $(LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN)
|
|
||||||
@@ -879,23 +880,23 @@ libinstall: build_all $(srcdir)/Lib/$(PL
|
|
||||||
done
|
|
||||||
$(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt
|
|
||||||
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
|
||||||
- ./$(BUILDPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
|
|
||||||
+ $(HOSTPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
|
|
||||||
-d $(LIBDEST) -f \
|
|
||||||
-x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST)
|
|
||||||
PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
|
||||||
- ./$(BUILDPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
|
||||||
+ $(HOSTPYTHON) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
|
||||||
-d $(LIBDEST) -f \
|
|
||||||
-x 'bad_coding|badsyntax|site-packages' $(DESTDIR)$(LIBDEST)
|
|
||||||
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
|
||||||
- ./$(BUILDPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \
|
|
||||||
+ $(HOSTPYTHON) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \
|
|
||||||
-d $(LIBDEST)/site-packages -f \
|
|
||||||
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
|
|
||||||
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
|
||||||
- ./$(BUILDPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
|
||||||
+ $(HOSTPYTHON) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \
|
|
||||||
-d $(LIBDEST)/site-packages -f \
|
|
||||||
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
|
|
||||||
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
|
|
||||||
- ./$(BUILDPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()"
|
|
||||||
+ $(HOSTPYTHON) -Wi -t -c "import lib2to3.pygram, lib2to3.patcomp;lib2to3.patcomp.PatternCompiler()"
|
|
||||||
|
|
||||||
# Create the PLATDIR source directory, if one wasn't distributed..
|
|
||||||
$(srcdir)/Lib/$(PLATDIR):
|
|
||||||
@@ -993,7 +994,7 @@ libainstall: all
|
|
||||||
# Install the dynamically loadable modules
|
|
||||||
# This goes into $(exec_prefix)
|
|
||||||
sharedinstall:
|
|
||||||
- $(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py install \
|
|
||||||
+ $(RUNSHARED) $(HOSTPYTHON) -E $(srcdir)/setup.py install \
|
|
||||||
--prefix=$(prefix) \
|
|
||||||
--install-scripts=$(BINDIR) \
|
|
||||||
--install-platlib=$(DESTSHARED) \
|
|
||||||
Index: Python-2.6.1/setup.py
|
|
||||||
===================================================================
|
|
||||||
--- Python-2.6.1.orig/setup.py
|
|
||||||
+++ Python-2.6.1/setup.py
|
|
||||||
@@ -276,6 +276,7 @@ class PyBuildExt(build_ext):
|
|
||||||
self.failed.append(ext.name)
|
|
||||||
self.announce('*** WARNING: renaming "%s" since importing it'
|
|
||||||
' failed: %s' % (ext.name, why), level=3)
|
|
||||||
+ return
|
|
||||||
assert not self.inplace
|
|
||||||
basename, tail = os.path.splitext(ext_filename)
|
|
||||||
newname = basename + "_failed" + tail
|
|
||||||
@@ -310,8 +311,8 @@ class PyBuildExt(build_ext):
|
|
||||||
|
|
||||||
def detect_modules(self):
|
|
||||||
# Ensure that /usr/local is always used
|
|
||||||
- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
|
||||||
- add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
|
||||||
+ # add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
|
||||||
+ # add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
|
||||||
|
|
||||||
# Add paths specified in the environment variables LDFLAGS and
|
|
||||||
# CPPFLAGS for header and library files.
|
|
||||||
@@ -410,6 +411,9 @@ class PyBuildExt(build_ext):
|
|
||||||
|
|
||||||
# XXX Omitted modules: gl, pure, dl, SGI-specific modules
|
|
||||||
|
|
||||||
+ lib_dirs = [ os.getenv( "STAGING_LIBDIR" ) ]
|
|
||||||
+ inc_dirs = [ os.getenv( "STAGING_INCDIR" ) ]
|
|
||||||
+
|
|
||||||
#
|
|
||||||
# The following modules are all pretty straightforward, and compile
|
|
||||||
# on pretty much any POSIXish platform.
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
# We need to supply STAGING_INCDIR here, otherwise the Tk headers
|
|
||||||
# will not be found.
|
|
||||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille.de>
|
|
||||||
|
|
||||||
Index: Python-2.6.1/setup.py
|
|
||||||
===================================================================
|
|
||||||
--- Python-2.6.1.orig/setup.py
|
|
||||||
+++ Python-2.6.1/setup.py
|
|
||||||
@@ -1543,7 +1543,7 @@ class PyBuildExt(build_ext):
|
|
||||||
dotversion = dotversion[:-1] + '.' + dotversion[-1]
|
|
||||||
tcl_include_sub = []
|
|
||||||
tk_include_sub = []
|
|
||||||
- for dir in inc_dirs:
|
|
||||||
+ for dir in [os.getenv("STAGING_INCDIR")]:
|
|
||||||
tcl_include_sub += [dir + os.sep + "tcl" + dotversion]
|
|
||||||
tk_include_sub += [dir + os.sep + "tk" + dotversion]
|
|
||||||
tk_include_sub += tcl_include_sub
|
|
||||||
@@ -1562,22 +1562,6 @@ class PyBuildExt(build_ext):
|
|
||||||
if dir not in include_dirs:
|
|
||||||
include_dirs.append(dir)
|
|
||||||
|
|
||||||
- # Check for various platform-specific directories
|
|
||||||
- if platform == 'sunos5':
|
|
||||||
- include_dirs.append('/usr/openwin/include')
|
|
||||||
- added_lib_dirs.append('/usr/openwin/lib')
|
|
||||||
- elif os.path.exists('/usr/X11R6/include'):
|
|
||||||
- include_dirs.append('/usr/X11R6/include')
|
|
||||||
- added_lib_dirs.append('/usr/X11R6/lib64')
|
|
||||||
- added_lib_dirs.append('/usr/X11R6/lib')
|
|
||||||
- elif os.path.exists('/usr/X11R5/include'):
|
|
||||||
- include_dirs.append('/usr/X11R5/include')
|
|
||||||
- added_lib_dirs.append('/usr/X11R5/lib')
|
|
||||||
- else:
|
|
||||||
- # Assume default location for X11
|
|
||||||
- include_dirs.append('/usr/X11/include')
|
|
||||||
- added_lib_dirs.append('/usr/X11/lib')
|
|
||||||
-
|
|
||||||
# If Cygwin, then verify that X is installed before proceeding
|
|
||||||
if platform == 'cygwin':
|
|
||||||
x11_inc = find_file('X11/Xlib.h', [], include_dirs)
|
|
||||||
@@ -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 <mickey@vanille-media.de>
|
|
||||||
|
|
||||||
Index: Python-2.6.1/Python/compile.c
|
|
||||||
===================================================================
|
|
||||||
--- Python-2.6.1.orig/Python/compile.c
|
|
||||||
+++ Python-2.6.1/Python/compile.c
|
|
||||||
@@ -32,7 +32,7 @@
|
|
||||||
#include "symtable.h"
|
|
||||||
#include "opcode.h"
|
|
||||||
|
|
||||||
-int Py_OptimizeFlag = 0;
|
|
||||||
+int Py_OptimizeFlag = 1;
|
|
||||||
|
|
||||||
#define DEFAULT_BLOCK_SIZE 16
|
|
||||||
#define DEFAULT_BLOCKS 8
|
|
||||||
Index: Python-2.6.1/Modules/main.c
|
|
||||||
===================================================================
|
|
||||||
--- Python-2.6.1.orig/Modules/main.c
|
|
||||||
+++ Python-2.6.1/Modules/main.c
|
|
||||||
@@ -40,7 +40,7 @@ static char **orig_argv;
|
|
||||||
static int orig_argc;
|
|
||||||
|
|
||||||
/* command line options */
|
|
||||||
-#define BASE_OPTS "3bBc:dEhiJm:OQ:sStuUvVW:xX?"
|
|
||||||
+#define BASE_OPTS "3bBc:dEhiJm:NOQ:sStuUvVW:xX?"
|
|
||||||
|
|
||||||
#ifndef RISCOS
|
|
||||||
#define PROGRAM_OPTS BASE_OPTS
|
|
||||||
@@ -69,8 +69,7 @@ Options and arguments (and corresponding
|
|
||||||
static char *usage_2 = "\
|
|
||||||
if stdin does not appear to be a terminal; also PYTHONINSPECT=x\n\
|
|
||||||
-m mod : run library module as a script (terminates option list)\n\
|
|
||||||
--O : optimize generated bytecode slightly; also PYTHONOPTIMIZE=x\n\
|
|
||||||
--OO : remove doc-strings in addition to the -O optimizations\n\
|
|
||||||
+-N : do NOT optimize generated bytecode\n\
|
|
||||||
-Q arg : division options: -Qold (default), -Qwarn, -Qwarnall, -Qnew\n\
|
|
||||||
-s : don't add user site directory to sys.path; also PYTHONNOUSERSITE\n\
|
|
||||||
-S : don't imply 'import site' on initialization\n\
|
|
||||||
@@ -353,8 +352,8 @@ Py_Main(int argc, char **argv)
|
|
||||||
|
|
||||||
/* case 'J': reserved for Jython */
|
|
||||||
|
|
||||||
- case 'O':
|
|
||||||
- Py_OptimizeFlag++;
|
|
||||||
+ case 'N':
|
|
||||||
+ Py_OptimizeFlag=0;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'B':
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
# CTypes need to know the actual host we are building on.
|
|
||||||
# Signed-Off: Michael Dietrich <mdt@emdete.de>
|
|
||||||
|
|
||||||
Index: Python-2.6.1/setup.py
|
|
||||||
===================================================================
|
|
||||||
--- Python-2.6.1.orig/setup.py
|
|
||||||
+++ Python-2.6.1/setup.py
|
|
||||||
@@ -1656,16 +1656,16 @@ class PyBuildExt(build_ext):
|
|
||||||
ffi_configfile):
|
|
||||||
from distutils.dir_util import mkpath
|
|
||||||
mkpath(ffi_builddir)
|
|
||||||
- config_args = []
|
|
||||||
+ config_args = ['--host=%s' % os.environ["HOST_SYS"], ]
|
|
||||||
|
|
||||||
# Pass empty CFLAGS because we'll just append the resulting
|
|
||||||
# CFLAGS to Python's; -g or -O2 is to be avoided.
|
|
||||||
- cmd = "cd %s && env CFLAGS='' '%s/configure' %s" \
|
|
||||||
- % (ffi_builddir, ffi_srcdir, " ".join(config_args))
|
|
||||||
+ cmd = "(cd %s && autoconf -W cross) && (cd %s && env CFLAGS='' '%s/configure' %s)" \
|
|
||||||
+ % (ffi_srcdir, ffi_builddir, ffi_srcdir, " ".join(config_args))
|
|
||||||
|
|
||||||
res = os.system(cmd)
|
|
||||||
if res or not os.path.exists(ffi_configfile):
|
|
||||||
- print "Failed to configure _ctypes module"
|
|
||||||
+ print "Failed to configure _ctypes module (res=%d) or missing conffile=%s" % ( res, ffi_configfile )
|
|
||||||
return False
|
|
||||||
|
|
||||||
fficonfig = {}
|
|
||||||
@@ -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 <denis@denix.org>
|
|
||||||
|
|
||||||
Index: Python-2.6.1/Modules/main.c
|
|
||||||
===================================================================
|
|
||||||
--- Python-2.6.1-orig/Modules/main.c
|
|
||||||
+++ Python-2.6.1/Modules/main.c
|
|
||||||
@@ -352,6 +352,9 @@ Py_Main(int argc, char **argv)
|
|
||||||
|
|
||||||
/* case 'J': reserved for Jython */
|
|
||||||
|
|
||||||
+ case 'O': /* ignore it */
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
case 'N':
|
|
||||||
Py_OptimizeFlag=0;
|
|
||||||
break;
|
|
||||||
@@ -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
|
|
||||||
@@ -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
|
|
||||||
@@ -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):
|
|
||||||
@@ -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:
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
|
|
||||||
#
|
|
||||||
# Signed off by Michael 'Mickey' Lauer <mickey@Vanille.de>
|
|
||||||
#
|
|
||||||
|
|
||||||
--- 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 ''
|
|
||||||
|
|
||||||
@@ -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;
|
|
||||||
|
|
||||||
@@ -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:
|
|
||||||
-20
@@ -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 <mickey@vanille-media.de>
|
|
||||||
|
|
||||||
Index: Python-2.6.1/Makefile.pre.in
|
|
||||||
===================================================================
|
|
||||||
--- Python-2.6.1.orig/Makefile.pre.in
|
|
||||||
+++ Python-2.6.1/Makefile.pre.in
|
|
||||||
@@ -86,8 +86,8 @@ exec_prefix= @exec_prefix@
|
|
||||||
datarootdir= @datarootdir@
|
|
||||||
|
|
||||||
# Expanded directories
|
|
||||||
-BINDIR= $(exec_prefix)/bin
|
|
||||||
-LIBDIR= $(exec_prefix)/lib
|
|
||||||
+BINDIR= @bindir@
|
|
||||||
+LIBDIR= @libdir@
|
|
||||||
MANDIR= @mandir@
|
|
||||||
INCLUDEDIR= @includedir@
|
|
||||||
CONFINCLUDEDIR= $(exec_prefix)/include
|
|
||||||
@@ -1,45 +0,0 @@
|
|||||||
# OpenEmbedded sitecustomize.py (C) 2002-2008 Michael 'Mickey' Lauer <mlauer@vanille-media.de>
|
|
||||||
# GPLv2 or later
|
|
||||||
# Version: 20081123
|
|
||||||
# Features:
|
|
||||||
# * set proper default encoding
|
|
||||||
# * enable readline completion in the interactive interpreter
|
|
||||||
# * load command line history on startup
|
|
||||||
# * save command line history on exit
|
|
||||||
|
|
||||||
import os
|
|
||||||
|
|
||||||
def __exithandler():
|
|
||||||
try:
|
|
||||||
readline.write_history_file( "%s/.python-history" % os.getenv( "HOME", "/tmp" ) )
|
|
||||||
except IOError:
|
|
||||||
pass
|
|
||||||
|
|
||||||
def __registerExitHandler():
|
|
||||||
import atexit
|
|
||||||
atexit.register( __exithandler )
|
|
||||||
|
|
||||||
def __enableReadlineSupport():
|
|
||||||
readline.set_history_length( 1000 )
|
|
||||||
readline.parse_and_bind( "tab: complete" )
|
|
||||||
try:
|
|
||||||
readline.read_history_file( "%s/.python-history" % os.getenv( "HOME", "/tmp" ) )
|
|
||||||
except IOError:
|
|
||||||
pass
|
|
||||||
|
|
||||||
def __enableDefaultEncoding():
|
|
||||||
import sys
|
|
||||||
try:
|
|
||||||
sys.setdefaultencoding( "utf8" )
|
|
||||||
except LookupError:
|
|
||||||
pass
|
|
||||||
|
|
||||||
import sys
|
|
||||||
try:
|
|
||||||
import rlcompleter, readline
|
|
||||||
except ImportError:
|
|
||||||
pass
|
|
||||||
else:
|
|
||||||
__enableDefaultEncoding()
|
|
||||||
__registerExitHandler()
|
|
||||||
__enableReadlineSupport()
|
|
||||||
@@ -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}/
|
|
||||||
}
|
|
||||||
@@ -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}/
|
||||||
|
}
|
||||||
+28
-16
@@ -5,16 +5,16 @@
|
|||||||
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
# Signed-Off: Michael 'Mickey' Lauer <mickey@vanille-media.de>
|
||||||
Index: Python-2.6.1/configure.in
|
Index: Python-2.6.1/configure.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- Python-2.6.1.orig/configure.in
|
--- Python-2.6.5.orig/configure.in 2010-07-06 04:37:09.000000000 -0700
|
||||||
+++ Python-2.6.1/configure.in
|
+++ Python-2.6.5/configure.in 2010-07-06 04:40:18.000000000 -0700
|
||||||
@@ -2556,38 +2556,6 @@ AC_CHECK_LIB(c, inet_aton, [$ac_cv_prog_
|
@@ -2697,50 +2697,6 @@
|
||||||
AC_CHECK_LIB(resolv, inet_aton)
|
AC_CHECK_LIB(resolv, inet_aton)
|
||||||
)
|
)
|
||||||
|
|
||||||
-# On Tru64, chflags seems to be present, but calling it will
|
-# On Tru64, chflags seems to be present, but calling it will
|
||||||
-# exit Python
|
-# exit Python
|
||||||
-AC_MSG_CHECKING(for chflags)
|
-AC_CACHE_CHECK([for chflags], [ac_cv_have_chflags], [dnl
|
||||||
-AC_TRY_RUN([
|
-AC_TRY_RUN([[
|
||||||
-#include <sys/stat.h>
|
-#include <sys/stat.h>
|
||||||
-#include <unistd.h>
|
-#include <unistd.h>
|
||||||
-int main(int argc, char*argv[])
|
-int main(int argc, char*argv[])
|
||||||
@@ -23,13 +23,19 @@ Index: Python-2.6.1/configure.in
|
|||||||
- return 1;
|
- return 1;
|
||||||
- return 0;
|
- return 0;
|
||||||
-}
|
-}
|
||||||
-],AC_DEFINE(HAVE_CHFLAGS, 1, Define to 1 if you have the `chflags' function.)
|
-]], ac_cv_have_chflags=yes,
|
||||||
- AC_MSG_RESULT(yes),
|
- ac_cv_have_chflags=no,
|
||||||
- AC_MSG_RESULT(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_MSG_CHECKING(for lchflags)
|
-AC_CACHE_CHECK([for lchflags], [ac_cv_have_lchflags], [dnl
|
||||||
-AC_TRY_RUN([
|
-AC_TRY_RUN([[
|
||||||
-#include <sys/stat.h>
|
-#include <sys/stat.h>
|
||||||
-#include <unistd.h>
|
-#include <unistd.h>
|
||||||
-int main(int argc, char*argv[])
|
-int main(int argc, char*argv[])
|
||||||
@@ -38,15 +44,21 @@ Index: Python-2.6.1/configure.in
|
|||||||
- return 1;
|
- return 1;
|
||||||
- return 0;
|
- return 0;
|
||||||
-}
|
-}
|
||||||
-],AC_DEFINE(HAVE_LCHFLAGS, 1, Define to 1 if you have the `lchflags' function.)
|
-]], ac_cv_have_lchflags=yes,
|
||||||
- AC_MSG_RESULT(yes),
|
- ac_cv_have_lchflags=no,
|
||||||
- AC_MSG_RESULT(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 Check if system zlib has *Copy() functions
|
||||||
dnl
|
dnl
|
||||||
dnl On MacOSX the linker will search for dylibs on the entire linker path
|
dnl On MacOSX the linker will search for dylibs on the entire linker path
|
||||||
@@ -3649,45 +3617,6 @@ else
|
@@ -3844,45 +3800,6 @@
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -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"
|
|
||||||
@@ -6,22 +6,13 @@ PR = "${INC_PR}.2"
|
|||||||
|
|
||||||
SRC_URI = "\
|
SRC_URI = "\
|
||||||
http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2 \
|
http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2 \
|
||||||
file://00-fix-bindir-libdir-for-cross.patch;patch=1 \
|
file://00-fix-bindir-libdir-for-cross.patch \
|
||||||
file://01-use-proper-tools-for-cross-build.patch;patch=1 \
|
file://01-use-proper-tools-for-cross-build.patch \
|
||||||
file://02-remove-test-for-cross.patch;patch=1 \
|
file://02-remove-test-for-cross.patch \
|
||||||
file://03-fix-tkinter-detection.patch;patch=1 \
|
file://03-fix-tkinter-detection.patch \
|
||||||
file://04-default-is-optimized.patch;patch=1 \
|
file://04-default-is-optimized.patch \
|
||||||
file://05-enable-ctypes-cross-build.patch;patch=1 \
|
file://05-enable-ctypes-cross-build.patch \
|
||||||
file://99-ignore-optimization-flag.patch;patch=1 \
|
file://99-ignore-optimization-flag.patch \
|
||||||
\
|
|
||||||
# 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 \
|
file://sitecustomize.py \
|
||||||
"
|
"
|
||||||
S = "${WORKDIR}/Python-${PV}"
|
S = "${WORKDIR}/Python-${PV}"
|
||||||
Reference in New Issue
Block a user