diff -uN Python-2.6.6Orig/configure Python-2.6.6/configure --- Python-2.6.6Orig/configure 2010-05-25 12:27:03.000000000 +1000 +++ Python-2.6.6/configure 2010-09-10 18:25:15.924146785 +1000 @@ -12760,12 +12760,12 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for %zd printf() format support" >&5 $as_echo_n "checking for %zd printf() format support... " >&6; } -if test "$cross_compiling" = yes; then : - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -as_fn_error "cannot run test program while cross compiling -See \`config.log' for more details." "$LINENO" 5; } -else +#if test "$cross_compiling" = yes; then : +# { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +#$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +#as_fn_error "cannot run test program while cross compiling +#See \`config.log' for more details." "$LINENO" 5; } +#else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include @@ -12815,7 +12815,7 @@ fi rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ conftest.$ac_objext conftest.beam conftest.$ac_ext -fi +#fi ac_fn_c_check_type "$LINENO" "socklen_t" "ac_cv_type_socklen_t" " diff -uN Python-2.6.6Orig/configure.in Python-2.6.6/configure.in --- Python-2.6.6Orig/configure.in 2010-05-25 12:27:03.000000000 +1000 +++ Python-2.6.6/configure.in 2010-09-10 18:25:15.934134297 +1000 @@ -3860,48 +3860,48 @@ 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_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.),[ + Define to 'int' if does not define.),[ #ifdef HAVE_SYS_TYPES_H #include #endif Common subdirectories: Python-2.6.6Orig/Demo and Python-2.6.6/Demo Common subdirectories: Python-2.6.6Orig/Doc and Python-2.6.6/Doc Common subdirectories: Python-2.6.6Orig/Grammar and Python-2.6.6/Grammar Binary files Python-2.6.6Orig/hostpython and Python-2.6.6/hostpython differ Common subdirectories: Python-2.6.6Orig/Include and Python-2.6.6/Include Common subdirectories: Python-2.6.6Orig/Lib and Python-2.6.6/Lib Common subdirectories: Python-2.6.6Orig/Mac and Python-2.6.6/Mac diff -uN Python-2.6.6Orig/Makefile.pre.in Python-2.6.6/Makefile.pre.in --- Python-2.6.6Orig/Makefile.pre.in 2010-08-02 08:05:31.000000000 +1000 +++ Python-2.6.6/Makefile.pre.in 2010-09-10 18:25:15.934134297 +1000 @@ -175,6 +175,7 @@ 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 @@ -206,6 +207,8 @@ # Parser PGEN= Parser/pgen$(EXE) +HOSTPGEN= $(PGEN) + POBJS= \ Parser/acceler.o \ Parser/grammar1.o \ @@ -394,8 +397,8 @@ # Build the shared modules sharedmods: $(BUILDPYTHON) @case $$MAKEFLAGS in \ - *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(LDFLAGS)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py -q build;; \ - *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(LDFLAGS)' OPT='$(OPT)' ./$(BUILDPYTHON) -E $(srcdir)/setup.py build;; \ + *s*) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(LDFLAGS)' OPT='$(OPT)' ./$(HOSTPYTHON) -E $(srcdir)/setup.py -q build;; \ + *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' LDFLAGS='$(LDFLAGS)' OPT='$(OPT)' ./$(HOSTPYTHON) -E $(srcdir)/setup.py build;; \ esac # Build static library @@ -517,7 +520,7 @@ $(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) @@ -886,24 +889,24 @@ done; \ done $(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt - PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - ./$(BUILDPYTHON) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \ + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(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 \ + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(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): @@ -1001,7 +1004,8 @@ # Install the dynamically loadable modules # This goes into $(exec_prefix) sharedinstall: - $(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py install \ + CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' CROSS_COMPILE='$(CROSS_COMPILE)' \ + $(RUNSHARED) $(HOSTPYTHON) -E $(srcdir)/setup.py install \ --prefix=$(prefix) \ --install-scripts=$(BINDIR) \ --install-platlib=$(DESTSHARED) \ Common subdirectories: Python-2.6.6Orig/Misc and Python-2.6.6/Misc Common subdirectories: Python-2.6.6Orig/Modules and Python-2.6.6/Modules Common subdirectories: Python-2.6.6Orig/Objects and Python-2.6.6/Objects Common subdirectories: Python-2.6.6Orig/Parser and Python-2.6.6/Parser Common subdirectories: Python-2.6.6Orig/PC and Python-2.6.6/PC Common subdirectories: Python-2.6.6Orig/PCbuild and Python-2.6.6/PCbuild Common subdirectories: Python-2.6.6Orig/Python and Python-2.6.6/Python Common subdirectories: Python-2.6.6Orig/RISCOS and Python-2.6.6/RISCOS diff -uN Python-2.6.6Orig/setup.py Python-2.6.6/setup.py --- Python-2.6.6Orig/setup.py 2010-07-17 22:31:09.000000000 +1000 +++ Python-2.6.6/setup.py 2010-09-10 18:28:32.104148297 +1000 @@ -313,33 +313,40 @@ self.announce('WARNING: skipping import check for Cygwin-based "%s"' % ext.name) return + if os.environ.get('CROSS_COMPILE_TARGET') == 'yes': + return + ext_filename = os.path.join( self.build_lib, self.get_ext_filename(self.get_ext_fullname(ext.name))) try: imp.load_dynamic(ext.name, ext_filename) except ImportError, why: - self.failed.append(ext.name) - self.announce('*** WARNING: renaming "%s" since importing it' - ' failed: %s' % (ext.name, why), level=3) - assert not self.inplace - basename, tail = os.path.splitext(ext_filename) - newname = basename + "_failed" + tail - if os.path.exists(newname): - os.remove(newname) - os.rename(ext_filename, newname) - - # XXX -- This relies on a Vile HACK in - # distutils.command.build_ext.build_extension(). The - # _built_objects attribute is stored there strictly for - # use here. - # If there is a failure, _built_objects may not be there, - # so catch the AttributeError and move on. - try: - for filename in self._built_objects: - os.remove(filename) - except AttributeError: - self.announce('unable to remove files (ignored)') + if os.environ.get('CROSS_COMPILE_TARGET') != "yes": + self.announce('*** WARNING: renaming "%s" since importing it' + ' failed: %s' % (ext.name, why), level=3) + assert not self.inplace + basename, tail = os.path.splitext(ext_filename) + newname = basename + "_failed" + tail + if os.path.exists(newname): + os.remove(newname) + os.rename(ext_filename, newname) + + # XXX -- This relies on a Vile HACK in + # distutils.command.build_ext.build_extension(). The + # _built_objects attribute is stored there strictly for + # use here. + # If there is a failure, _built_objects may not be there, + # so catch the AttributeError and move on. + try: + for filename in self._built_objects: + os.remove(filename) + except AttributeError: + self.announce('unable to remove files (ignored)') + else: + self.announce('WARNING: "%s" failed importing, but we leave it ' + 'because we are cross-compiling' % + ext.name) except: exc_type, why, tb = sys.exc_info() self.announce('*** WARNING: importing extension "%s" ' @@ -742,7 +749,7 @@ if (ssl_incs is not None and ssl_libs is not None and - openssl_ver >= 0x00907000): + openssl_ver >= 0x00907000 and False): # The _hashlib module wraps optimized implementations # of hash functions from the OpenSSL library. exts.append( Extension('_hashlib', ['_hashopenssl.c'], @@ -762,7 +769,7 @@ depends = ['md5.h']) ) missing.append('_hashlib') - if (openssl_ver < 0x00908000): + if (True or openssl_ver < 0x00908000): # OpenSSL doesn't do these until 0.9.8 so we'll bring our own hash exts.append( Extension('_sha256', ['sha256module.c']) ) exts.append( Extension('_sha512', ['sha512module.c']) ) @@ -1823,7 +1830,7 @@ ffi_configfile): from distutils.dir_util import mkpath mkpath(ffi_builddir) - config_args = [] + config_args = sysconfig.get_config_var("CONFIG_ARGS").split(" ") # Pass empty CFLAGS because we'll just append the resulting # CFLAGS to Python's; -g or -O2 is to be avoided. --- Python-2.6.6.orig//Lib/plat-linux3/regen 1970-01-01 01:00:00.000000000 +0100 +++ Python-2.6.6/Lib/plat-linux3/regen 2001-08-09 14:48:17.000000000 +0200 @@ -0,0 +1,8 @@ +#! /bin/sh +case `uname` in +Linux*) ;; +*) echo Probably not on a Linux system 1>&2 + exit 1;; +esac +set -v +h2py -i '(u_long)' /usr/include/sys/types.h /usr/include/netinet/in.h /usr/include/dlfcn.h