From 1e8a2130a5b5ce6697956379e17bdeee435286ae Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Tue, 29 Oct 2013 09:17:25 +0100 Subject: update python2 and use new host infrastructure --- package/python2/patches/patch-Makefile_pre_in | 198 ++++++-------------------- package/python2/patches/patch-configure | 26 ---- package/python2/patches/patch-setup_py | 157 ++++++++++---------- 3 files changed, 116 insertions(+), 265 deletions(-) delete mode 100644 package/python2/patches/patch-configure (limited to 'package/python2/patches') diff --git a/package/python2/patches/patch-Makefile_pre_in b/package/python2/patches/patch-Makefile_pre_in index f18bd9a72..e4f59f0ba 100644 --- a/package/python2/patches/patch-Makefile_pre_in +++ b/package/python2/patches/patch-Makefile_pre_in @@ -1,166 +1,48 @@ -diff -Nur Python-2.7.1.orig/Makefile.pre.in Python-2.7.1/Makefile.pre.in ---- Python-2.7.1.orig/Makefile.pre.in 2010-10-14 13:37:30.000000000 +0200 -+++ Python-2.7.1/Makefile.pre.in 2013-07-11 11:56:32.128103200 +0200 -@@ -59,7 +59,7 @@ MAKESETUP= $(srcdir)/Modules/makese - # Compiler options - OPT= @OPT@ - BASECFLAGS= @BASECFLAGS@ --CFLAGS= $(BASECFLAGS) @CFLAGS@ $(OPT) $(EXTRA_CFLAGS) -+CFLAGS= $(BASECFLAGS) @CFLAGS@ $(EXTRA_CFLAGS) - # Both CPPFLAGS and LDFLAGS need to contain the shell's value for setup.py to - # be able to build extension modules using the directories specified in the - # environment variables -@@ -179,6 +179,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 -@@ -211,6 +212,7 @@ LIBFFI_INCLUDEDIR= @LIBFFI_INCLUDEDIR@ +--- Python-2.7.5.orig/Makefile.pre.in 2013-05-12 05:32:49.000000000 +0200 ++++ Python-2.7.5/Makefile.pre.in 2013-10-29 08:12:25.000000000 +0100 +@@ -227,6 +227,7 @@ LIBFFI_INCLUDEDIR= @LIBFFI_INCLUDEDIR@ ########################################################################## # Parser PGEN= Parser/pgen$(EXE) -+HOSTPGEN?= $(PGEN)$(EXE) - - POBJS= \ - Parser/acceler.o \ -@@ -380,7 +382,7 @@ build_all_generate_profile: - $(MAKE) all CFLAGS="$(CFLAGS) -fprofile-generate" LIBS="$(LIBS) -lgcov" - - run_profile_task: -- ./$(BUILDPYTHON) $(PROFILE_TASK) -+ $(HOSTPYTHON) $(PROFILE_TASK) - - build_all_use_profile: - $(MAKE) all CFLAGS="$(CFLAGS) -fprofile-use" -@@ -398,14 +400,13 @@ $(BUILDPYTHON): Modules/python.o $(LIBRA - $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) - - platform: $(BUILDPYTHON) -- $(RUNSHARED) ./$(BUILDPYTHON) -E -c 'import sys ; from sysconfig import get_platform ; print get_platform()+"-"+sys.version[0:3]' >platform -+ $(RUNSHARED) $(HOSTPYTHON) -E -c 'import sys ; from sysconfig import get_platform ; print get_platform()+"-"+sys.version[0:3]' >platform - - - # 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;; \ -+ *) $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' $(HOSTPYTHON) -E $(srcdir)/setup.py build;; \ - esac - - # Build static library -@@ -538,7 +539,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) -@@ -702,7 +703,7 @@ $(LIBRARY_OBJS) $(MODOBJS) Modules/pytho - - TESTOPTS= -l $(EXTRATESTOPTS) - TESTPROG= $(srcdir)/Lib/test/regrtest.py --TESTPYTHON= $(RUNSHARED) ./$(BUILDPYTHON) -Wd -3 -E -tt $(TESTPYTHONOPTS) -+TESTPYTHON= $(RUNSHARED) $(HOSTPYTHON) -Wd -3 -E -tt $(TESTPYTHONOPTS) - test: all platform - -find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f - -$(TESTPYTHON) $(TESTPROG) $(TESTOPTS) -@@ -725,7 +726,7 @@ testuniversal: all platform - -find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f - -$(TESTPYTHON) $(TESTPROG) -uall $(TESTOPTS) - $(TESTPYTHON) $(TESTPROG) -uall $(TESTOPTS) -- $(RUNSHARED) /usr/libexec/oah/translate ./$(BUILDPYTHON) -E -tt $(TESTPROG) -uall $(TESTOPTS) -+ $(RUNSHARED) /usr/libexec/oah/translate $(HOSTPYTHON) -E -tt $(TESTPROG) -uall $(TESTOPTS) - - - # Like testall, but with a single pass only -@@ -920,26 +921,26 @@ libinstall: build_all $(srcdir)/Lib/$(PL - done; \ - done - $(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt ++HOSTPGEN?= Parser/pgen$(EXE) + + PSRCS= \ + Parser/acceler.c \ +@@ -593,7 +594,7 @@ Modules/pwdmodule.o: $(srcdir)/Modules/p + $(GRAMMAR_H): $(GRAMMAR_INPUT) $(PGENSRCS) + @$(MKDIR_P) Include + $(MAKE) $(PGEN) +- $(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) ++ $(HOSTPGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) + $(GRAMMAR_C): $(GRAMMAR_H) $(GRAMMAR_INPUT) $(PGENSRCS) + $(MAKE) $(GRAMMAR_H) + touch $(GRAMMAR_C) +@@ -1000,28 +1001,6 @@ libinstall: build_all $(srcdir)/Lib/$(PL + $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \ + $(DESTDIR)$(LIBDEST)/distutils/tests ; \ + fi - 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|lib2to3/tests/data' \ - $(DESTDIR)$(LIBDEST) +- $(PYTHON_FOR_BUILD) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \ +- -d $(LIBDEST) -f \ +- -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ +- $(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|lib2to3/tests/data' \ - $(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()" +- $(PYTHON_FOR_BUILD) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \ +- -d $(LIBDEST) -f \ +- -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ +- $(DESTDIR)$(LIBDEST) +- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ +- $(PYTHON_FOR_BUILD) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \ +- -d $(LIBDEST)/site-packages -f \ +- -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages +- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ +- $(PYTHON_FOR_BUILD) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \ +- -d $(LIBDEST)/site-packages -f \ +- -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages +- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ +- $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt +- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ +- $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt # Create the PLATDIR source directory, if one wasn't distributed.. $(srcdir)/Lib/$(PLATDIR): -@@ -1044,11 +1045,12 @@ libainstall: all python-config - # Install the dynamically loadable modules - # This goes into $(exec_prefix) - sharedinstall: sharedmods -- $(RUNSHARED) ./$(BUILDPYTHON) -E $(srcdir)/setup.py install \ -+ CROSS_COMPILE='$(CROSS_COMPILE)' \ -+ $(RUNSHARED) $(HOSTPYTHON) -E $(srcdir)/setup.py install \ - --prefix=$(prefix) \ - --install-scripts=$(BINDIR) \ - --install-platlib=$(DESTSHARED) \ -- --root=/$(DESTDIR) -+ --root=$(DESTDIR) - - # Here are a couple of targets for MacOSX again, to install a full - # framework-based Python. frameworkinstall installs everything, the -@@ -1082,7 +1084,7 @@ frameworkinstallstructure: $(LDLIBRARY) - fi; \ - done - $(LN) -fsn include/python$(VERSION) $(DESTDIR)$(prefix)/Headers -- sed 's/%VERSION%/'"`$(RUNSHARED) ./$(BUILDPYTHON) -c 'import platform; print platform.python_version()'`"'/g' < $(RESSRCDIR)/Info.plist > $(DESTDIR)$(prefix)/Resources/Info.plist -+ sed 's/%VERSION%/'"`$(RUNSHARED) $(HOSTPYTHON) -c 'import platform; print platform.python_version()'`"'/g' < $(RESSRCDIR)/Info.plist > $(DESTDIR)$(prefix)/Resources/Info.plist - $(LN) -fsn $(VERSION) $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Versions/Current - $(LN) -fsn Versions/Current/$(PYTHONFRAMEWORK) $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/$(PYTHONFRAMEWORK) - $(LN) -fsn Versions/Current/Headers $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Headers -@@ -1117,7 +1119,7 @@ frameworkinstallextras: - # This installs a few of the useful scripts in Tools/scripts - scriptsinstall: - SRCDIR=$(srcdir) $(RUNSHARED) \ -- ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/setup.py install \ -+ $(HOSTPYTHON) $(srcdir)/Tools/scripts/setup.py install \ - --prefix=$(prefix) \ - --install-scripts=$(BINDIR) \ - --root=/$(DESTDIR) -@@ -1139,7 +1141,7 @@ config.status: $(srcdir)/configure - - # Run reindent on the library - reindent: -- ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/reindent.py -r $(srcdir)/Lib -+ $(HOSTPYTHON) $(srcdir)/Tools/scripts/reindent.py -r $(srcdir)/Lib - - # Rerun configure with the same options as it was run last time, - # provided the config.status script exists -@@ -1242,7 +1244,7 @@ funny: - - # Perform some verification checks on any modified files. - patchcheck: -- $(RUNSHARED) ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/patchcheck.py -+ $(RUNSHARED) $(HOSTPYTHON) $(srcdir)/Tools/scripts/patchcheck.py - - # Dependencies - diff --git a/package/python2/patches/patch-configure b/package/python2/patches/patch-configure deleted file mode 100644 index e47d860fd..000000000 --- a/package/python2/patches/patch-configure +++ /dev/null @@ -1,26 +0,0 @@ ---- Python-2.7.1.orig/configure 2010-11-01 02:47:19.000000000 +0100 -+++ Python-2.7.1/configure 2011-10-14 17:36:48.000000000 +0200 -@@ -2972,12 +2972,12 @@ fi - $as_echo_n "checking MACHDEP... " >&6; } - if test -z "$MACHDEP" - then -- ac_sys_system=`uname -s` -+ ac_sys_system=Linux - if test "$ac_sys_system" = "AIX" \ - -o "$ac_sys_system" = "UnixWare" -o "$ac_sys_system" = "OpenUNIX"; then - ac_sys_release=`uname -v` - else -- ac_sys_release=`uname -r` -+ ac_sys_release=2.6 - fi - ac_md_system=`echo $ac_sys_system | - tr -d '/ ' | tr '[A-Z]' '[a-z]'` -@@ -3150,7 +3150,7 @@ EXPORT_MACOSX_DEPLOYMENT_TARGET='#' - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking machine type as reported by uname -m" >&5 - $as_echo_n "checking machine type as reported by uname -m... " >&6; } --ac_sys_machine=`uname -m` -+ac_sys_machine=x86_64 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_sys_machine" >&5 - $as_echo "$ac_sys_machine" >&6; } - diff --git a/package/python2/patches/patch-setup_py b/package/python2/patches/patch-setup_py index fb91da1d3..f8f2fa1c0 100644 --- a/package/python2/patches/patch-setup_py +++ b/package/python2/patches/patch-setup_py @@ -1,96 +1,91 @@ -diff -Nur Python-2.7.orig/setup.py Python-2.7/setup.py ---- Python-2.7.1.orig/setup.py 2010-10-31 17:40:21.000000000 +0100 -+++ Python-2.7.1/setup.py 2011-10-06 20:34:53.328787057 +0200 -@@ -21,7 +21,7 @@ from distutils.spawn import find_executa - COMPILED_WITH_PYDEBUG = hasattr(sys, 'gettotalrefcount') +--- Python-2.7.5.orig/setup.py 2013-05-12 05:32:54.000000000 +0200 ++++ Python-2.7.5/setup.py 2013-10-29 07:33:37.000000000 +0100 +@@ -74,7 +74,7 @@ def find_file(filename, std_dirs, paths) + 'paths' is a list of additional locations to check; if the file is + found in one of them, the resulting list will contain the directory. + """ +- if host_platform == 'darwin': ++ if host_platform == 'darwin' and not cross_compiling: + # Honor the MacOSX SDK setting when one was specified. + # An SDK is a directory with the same structure as a real + # system, but with only header files and libraries. +@@ -84,7 +84,7 @@ def find_file(filename, std_dirs, paths) + for dir in std_dirs: + f = os.path.join(dir, filename) - # This global variable is used to hold the list of modules to be disabled. --disabled_module_list = [] -+disabled_module_list = ['nis'] +- if host_platform == 'darwin' and is_macosx_sdk_path(dir): ++ if host_platform == 'darwin' and is_macosx_sdk_path(dir) and not cross_compiling: + f = os.path.join(sysroot, dir[1:], filename) - def add_dir_to_list(dirlist, dir): - """Add the directory 'dir' to the list 'dirlist' (at the front) if -@@ -307,48 +307,14 @@ class PyBuildExt(build_ext): - 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)') -- except: -- exc_type, why, tb = sys.exc_info() -- self.announce('*** WARNING: importing extension "%s" ' -- 'failed with %s: %s' % (ext.name, exc_type, why), -- level=3) -- self.failed.append(ext.name) + if os.path.exists(f): return [] +@@ -93,7 +93,7 @@ def find_file(filename, std_dirs, paths) + for dir in paths: + f = os.path.join(dir, filename) - def get_platform(self): -- # Get value of sys.platform -- for platform in ['cygwin', 'beos', 'darwin', 'atheos', 'osf1']: -- if sys.platform.startswith(platform): -- return platform -- return sys.platform -+ return 'linux' +- if host_platform == 'darwin' and is_macosx_sdk_path(dir): ++ if host_platform == 'darwin' and is_macosx_sdk_path(dir) and not cross_compiling: + f = os.path.join(sysroot, dir[1:], filename) + + if os.path.exists(f): +@@ -107,7 +107,7 @@ def find_library_file(compiler, libname, + if result is None: + return None + +- if host_platform == 'darwin': ++ if host_platform == 'darwin' and not cross_compiling: + sysroot = macosx_sdk_root() + + # Check whether the found file is in one of the standard directories +@@ -116,7 +116,7 @@ def find_library_file(compiler, libname, + # Ensure path doesn't end with path separator + p = p.rstrip(os.sep) + +- if host_platform == 'darwin' and is_macosx_sdk_path(p): ++ if host_platform == 'darwin' and is_macosx_sdk_path(p) and not cross_compiling: + if os.path.join(sysroot, p[1:]) == dirname: + return [ ] + +@@ -129,7 +129,7 @@ def find_library_file(compiler, libname, + # Ensure path doesn't end with path separator + p = p.rstrip(os.sep) + +- if host_platform == 'darwin' and is_macosx_sdk_path(p): ++ if host_platform == 'darwin' and is_macosx_sdk_path(p) and not cross_compiling: + if os.path.join(sysroot, p[1:]) == dirname: + return [ p ] + +@@ -437,10 +437,12 @@ 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') ++ if not cross_compiling: ++ add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib') ++ add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') + self.add_gcc_paths() +- self.add_multiarch_paths() ++ if not cross_compiling: ++ self.add_multiarch_paths() # Add paths specified in the environment variables LDFLAGS and # CPPFLAGS for header and library files. -@@ -384,17 +350,6 @@ class PyBuildExt(build_ext): - for directory in reversed(options.dirs): +@@ -477,7 +479,8 @@ class PyBuildExt(build_ext): add_dir_to_list(dir_list, directory) -- if os.path.normpath(sys.prefix) != '/usr' \ + if os.path.normpath(sys.prefix) != '/usr' \ - and not sysconfig.get_config_var('PYTHONFRAMEWORK'): -- # OSX note: Don't add LIBDIR and INCLUDEDIR to building a framework -- # (PYTHONFRAMEWORK is set) to avoid # linking problems when -- # building a framework with different architectures than -- # the one that is currently installed (issue #7473) -- add_dir_to_list(self.compiler.library_dirs, -- sysconfig.get_config_var("LIBDIR")) -- add_dir_to_list(self.compiler.include_dirs, -- sysconfig.get_config_var("INCLUDEDIR")) -- - try: - have_unicode = unicode - except NameError: -@@ -403,11 +358,8 @@ class PyBuildExt(build_ext): - # 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 + ['@@STAGING_DIR@@/usr/lib'] -+ inc_dirs = self.compiler.include_dirs + ['@@STAGING_DIR@@/usr/include'] - exts = [] - missing = [] ++ and not sysconfig.get_config_var('PYTHONFRAMEWORK') \ ++ and not cross_compiling: + # OSX note: Don't add LIBDIR and INCLUDEDIR to building a framework + # (PYTHONFRAMEWORK is set) to avoid # linking problems when + # building a framework with different architectures than +@@ -530,7 +533,7 @@ class PyBuildExt(build_ext): + if host_platform == 'hp-ux11': + lib_dirs += ['/usr/lib/hpux64', '/usr/lib/hpux32'] +- if host_platform == 'darwin': ++ if host_platform == 'darwin' and not cross_compiling: + # This should work on any unixy platform ;-) + # If the user has bothered specifying additional -I and -L flags + # in OPT and LDFLAGS we might as well use them here. -- cgit v1.2.3 From 1a3f7151d55fd0eb4508bfbd65d70bd9d3cf6399 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Wed, 30 Oct 2013 15:44:51 +0100 Subject: fix python cross-compile, when a python host binary is available --- package/python2/Makefile | 7 ++--- package/python2/patches/patch-Makefile_pre_in | 2 +- package/python2/patches/patch-setup_py | 38 ++++++++++++++++++++++++--- package/python3/Makefile | 2 +- 4 files changed, 40 insertions(+), 9 deletions(-) (limited to 'package/python2/patches') diff --git a/package/python2/Makefile b/package/python2/Makefile index fdf39f45f..c0678a528 100644 --- a/package/python2/Makefile +++ b/package/python2/Makefile @@ -5,11 +5,11 @@ include ${TOPDIR}/rules.mk PKG_NAME:= python2 PKG_VERSION:= 2.7.5 -PKG_RELEASE:= 1 +PKG_RELEASE:= 2 PKG_MD5SUM:= b4f01a1d0ba0b46b05c73b2ac909b1df PKG_DESCR:= Python scripting language (Version 2) PKG_SECTION:= lang -PKG_BUILDDEP:= libffi python2-host +PKG_BUILDDEP:= libffi python2-host autotool PKG_DEPENDS:= libpthread libffi libgcc PKG_URL:= http://www.python.org/ PKG_SITES:= http://www.python.org/ftp/python/${PKG_VERSION}/ @@ -84,6 +84,7 @@ $(eval $(call PKG_mod_template,PYTHON2_MOD_NCURSES,_curses)) $(eval $(call PKG_mod_template,PYTHON2_MOD_SSL,_ssl)) $(eval $(call PKG_mod_template,PYTHON2_MOD_READLINE,readline)) +AUTOTOOL_STYLE:= autoreconf MAKE_ENV+= HOSTPGEN=$(STAGING_HOST_DIR)/usr/bin/pgen CONFIGURE_ENV+= ac_cv_have_long_long_format=yes \ ac_cv_file__dev_ptmx=yes \ @@ -118,7 +119,7 @@ python2-install: ${INSTALL_MODS_y} ${INSTALL_MODS_m} ${CP} ${WRKINST}/usr/lib/python2.7/* ${IDIR_PYTHON2}/usr/lib/python2.7 ${CP} ${WRKINST}/usr/include/python2.7/pyconfig.h \ ${IDIR_PYTHON2}/usr/include/python2.7 - for i in zlib bz2 _curses _ssl gdbm _sqlite pyexpat readline; do \ + @-for i in zlib bz2 _curses _ssl gdbm _sqlite pyexpat readline; do \ rm ${IDIR_PYTHON2}/usr/lib/python2.7/lib-dynload/$${i}*so; \ done diff --git a/package/python2/patches/patch-Makefile_pre_in b/package/python2/patches/patch-Makefile_pre_in index e4f59f0ba..8c6aba5c2 100644 --- a/package/python2/patches/patch-Makefile_pre_in +++ b/package/python2/patches/patch-Makefile_pre_in @@ -1,5 +1,5 @@ --- Python-2.7.5.orig/Makefile.pre.in 2013-05-12 05:32:49.000000000 +0200 -+++ Python-2.7.5/Makefile.pre.in 2013-10-29 08:12:25.000000000 +0100 ++++ Python-2.7.5/Makefile.pre.in 2013-10-30 14:10:07.000000000 +0100 @@ -227,6 +227,7 @@ LIBFFI_INCLUDEDIR= @LIBFFI_INCLUDEDIR@ ########################################################################## # Parser diff --git a/package/python2/patches/patch-setup_py b/package/python2/patches/patch-setup_py index f8f2fa1c0..0cb811de9 100644 --- a/package/python2/patches/patch-setup_py +++ b/package/python2/patches/patch-setup_py @@ -1,5 +1,5 @@ --- Python-2.7.5.orig/setup.py 2013-05-12 05:32:54.000000000 +0200 -+++ Python-2.7.5/setup.py 2013-10-29 07:33:37.000000000 +0100 ++++ Python-2.7.5/setup.py 2013-10-30 14:18:23.000000000 +0100 @@ -74,7 +74,7 @@ def find_file(filename, std_dirs, paths) 'paths' is a list of additional locations to check; if the file is found in one of them, the resulting list will contain the directory. @@ -54,7 +54,23 @@ if os.path.join(sysroot, p[1:]) == dirname: return [ p ] -@@ -437,10 +437,12 @@ class PyBuildExt(build_ext): +@@ -162,6 +162,7 @@ class PyBuildExt(build_ext): + + def build_extensions(self): + ++ self.compiler.library_dirs = [] + # Detect which modules should be compiled + missing = self.detect_modules() + +@@ -281,6 +282,7 @@ class PyBuildExt(build_ext): + + def build_extension(self, ext): + ++ + if ext.name == '_ctypes': + if not self.configure_ctypes(ext): + return +@@ -437,10 +439,12 @@ class PyBuildExt(build_ext): def detect_modules(self): # Ensure that /usr/local is always used @@ -70,7 +86,7 @@ # Add paths specified in the environment variables LDFLAGS and # CPPFLAGS for header and library files. -@@ -477,7 +479,8 @@ class PyBuildExt(build_ext): +@@ -477,7 +481,8 @@ class PyBuildExt(build_ext): add_dir_to_list(dir_list, directory) if os.path.normpath(sys.prefix) != '/usr' \ @@ -80,7 +96,21 @@ # OSX note: Don't add LIBDIR and INCLUDEDIR to building a framework # (PYTHONFRAMEWORK is set) to avoid # linking problems when # building a framework with different architectures than -@@ -530,7 +533,7 @@ class PyBuildExt(build_ext): +@@ -495,8 +500,13 @@ class PyBuildExt(build_ext): + # 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. ++ if cross_compiling: ++ add_dir_to_list(self.compiler.library_dirs, ++ sysconfig.get_config_var('srcdir')) ++ + inc_dirs = self.compiler.include_dirs[:] + lib_dirs = self.compiler.library_dirs[:] ++ + if not cross_compiling: + for d in ( + '/usr/include', +@@ -530,7 +540,7 @@ class PyBuildExt(build_ext): if host_platform == 'hp-ux11': lib_dirs += ['/usr/lib/hpux64', '/usr/lib/hpux32'] diff --git a/package/python3/Makefile b/package/python3/Makefile index c18423290..40659bff4 100644 --- a/package/python3/Makefile +++ b/package/python3/Makefile @@ -115,7 +115,7 @@ python3-install: ${INSTALL_MODS_y} ${INSTALL_MODS_m} ${CP} ${WRKINST}/usr/lib/python3.3/* ${IDIR_PYTHON3}/usr/lib/python3.3 ${CP} ${WRKINST}/usr/include/python3.3m/pyconfig.h \ ${IDIR_PYTHON3}/usr/include/python3.3m - for i in zlib _bz2 _curses _ssl _gdbm _sqlite pyexpat readline; do \ + @-for i in zlib _bz2 _curses _ssl _gdbm _sqlite pyexpat readline; do \ rm ${IDIR_PYTHON3}/usr/lib/python3.3/lib-dynload/$${i}*so; \ done -- cgit v1.2.3 From 61cc800e46cc943824dc6a0b8e8d413f2795db9f Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Wed, 30 Oct 2013 15:49:49 +0100 Subject: missed one patch for python2 --- package/python2/patches/patch-configure_ac | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 package/python2/patches/patch-configure_ac (limited to 'package/python2/patches') diff --git a/package/python2/patches/patch-configure_ac b/package/python2/patches/patch-configure_ac new file mode 100644 index 000000000..0ec10f1de --- /dev/null +++ b/package/python2/patches/patch-configure_ac @@ -0,0 +1,22 @@ +--- Python-2.7.5.orig/configure.ac 2013-05-12 05:32:54.000000000 +0200 ++++ Python-2.7.5/configure.ac 2013-10-30 15:33:30.000000000 +0100 +@@ -19,7 +19,7 @@ AC_SUBST(host) + if test "$cross_compiling" = yes; then + AC_MSG_CHECKING([for python interpreter for cross build]) + if test -z "$PYTHON_FOR_BUILD"; then +- for interp in python$PACKAGE_VERSION python2 python; do ++ for interp in python; do + which $interp >/dev/null 2>&1 || continue + if $interp -c 'import sys;sys.exit(not (sys.version_info@<:@:2@:>@ >= (2,7) and sys.version_info@<:@0@:>@ < 3))'; then + break +@@ -1066,9 +1066,7 @@ then + if test "$Py_DEBUG" = 'true' ; then + # Optimization messes up debuggers, so turn it off for + # debug builds. +- OPT="-g -O0 -Wall $STRICT_PROTO" +- else +- OPT="-g $WRAP -O3 -Wall $STRICT_PROTO" ++ OPT="$STRICT_PROTO" + fi + ;; + *) -- cgit v1.2.3 From 94722f640dd0851e151211c4399bcade1c82a37c Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Thu, 31 Oct 2013 08:52:29 +0100 Subject: fix libxml2-python package --- package/libxml2/Makefile | 12 ++- package/libxml2/patches/patch-configure | 42 ----------- package/libxml2/patches/patch-configure_in | 87 ++++++++++++++++++++++ package/python2/Makefile | 14 +--- .../python2/patches/patch-Misc_python-config_in | 13 ++++ 5 files changed, 107 insertions(+), 61 deletions(-) delete mode 100644 package/libxml2/patches/patch-configure create mode 100644 package/libxml2/patches/patch-configure_in create mode 100644 package/python2/patches/patch-Misc_python-config_in (limited to 'package/python2/patches') diff --git a/package/libxml2/Makefile b/package/libxml2/Makefile index 6b48226e6..4d5577eb1 100644 --- a/package/libxml2/Makefile +++ b/package/libxml2/Makefile @@ -10,7 +10,7 @@ PKG_MD5SUM:= 9c0cfef285d5c4a5c80d00904ddab380 PKG_DESCR:= XML C parser and toolkit PKG_SECTION:= libs PKG_DEPENDS:= zlib -PKG_BUILDDEP:= zlib +PKG_BUILDDEP:= zlib autotool PKG_URL:= http://www.xmlsoft.org/ PKG_SITES:= http://xmlsoft.org/sources/ PKG_OPTS:= dev @@ -18,7 +18,7 @@ PKG_OPTS:= dev PKG_SUBPKGS:= LIBXML2 LIBXML2_PYTHON PKGSD_LIBXML2_PYTHON:= XML python bindings PKGSC_LIBXML2_PYTHON:= libs -PKGSB_LIBXML2_PYTHON:= python2 +PKGSB_LIBXML2_PYTHON:= python2-host ifeq ($(ADK_STATIC),y) PKG_OPTS+= libmix @@ -31,10 +31,11 @@ $(eval $(call PKG_template,LIBXML2_PYTHON,libxml2-python,${PKG_VERSION}-${PKG_RE include $(TOPDIR)/mk/python.mk +AUTOTOOL_STYLE:= autoreconf TARGET_CFLAGS:= $(filter-out -flto,$(TARGET_CFLAGS)) TARGET_LDFLAGS+= -lpthread ifneq ($(ADK_PACKAGE_LIBXML2_PYTHON),) -CONFIGURE_ARGS+= --with-python=${STAGING_DIR}/usr +CONFIGURE_ARGS+= --with-python=$(STAGING_TARGET_DIR)/usr else CONFIGURE_ARGS+= --without-python endif @@ -65,16 +66,13 @@ CONFIGURE_ARGS+= --without-c14n \ --with-xptr \ --with-zlib -pre-configure: - ${INSTALL_DIR} ${STAGING_DIR}/usr/lib/site-packages - libxml2-install: ${INSTALL_DIR} ${IDIR_LIBXML2}/usr/lib ${CP} ${WRKINST}/usr/lib/libxml2.so* ${IDIR_LIBXML2}/usr/lib libxml2-python-install: $(INSTALL_DIR) $(IDIR_LIBXML2_PYTHON)/usr/lib/python$(PYTHON_VERSION)/site-packages - $(CP) $(WRKINST)/usr/lib/python$(PYTHON_VERSION)/site-packages/* \ + $(CP) $(WRKINST)/usr/lib/python$(PYTHON_VERSION)/site-packages/*.{so,py} \ $(IDIR_LIBXML2_PYTHON)/usr/lib/python$(PYTHON_VERSION)/site-packages include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/libxml2/patches/patch-configure b/package/libxml2/patches/patch-configure deleted file mode 100644 index 2f9b3b5bf..000000000 --- a/package/libxml2/patches/patch-configure +++ /dev/null @@ -1,42 +0,0 @@ ---- libxml2-2.9.1.orig/configure 2013-04-19 09:36:11.000000000 +0200 -+++ libxml2-2.9.1/configure 2013-09-25 13:59:27.000000000 +0200 -@@ -14010,17 +14010,17 @@ case ${host} in - esac - - -- -+set -x - PYTHON_VERSION= - PYTHON_INCLUDES= - PYTHON_SITE_PACKAGES= - PYTHON_TESTS= - pythondir= - if test "$with_python" != "no" ; then -- if test -x "$with_python/bin/python" -+ if test -x "$with_python/bin/hostpython" - then -- echo Found python in $with_python/bin/python -- PYTHON="$with_python/bin/python" -+ echo Found python in $with_python/bin/hostpython -+ PYTHON="$with_python/bin/hostpython" - else - if test -x "$with_python/python.exe" - then -@@ -14122,7 +14122,7 @@ fi - else - if test -d $with_python/lib/site-packages - then -- PYTHON_SITE_PACKAGES=$with_python/lib/site-packages -+ PYTHON_SITE_PACKAGES=/usr/lib/python$PYTHON_VERSION/site-packages - else - PYTHON_SITE_PACKAGES=`$PYTHON -c "from distutils import sysconfig; print(sysconfig.get_python_lib())"` - fi -@@ -14148,7 +14148,7 @@ else - PYTHON_SUBDIR= - fi - -- -+set +x - - - WITH_MODULES=0 diff --git a/package/libxml2/patches/patch-configure_in b/package/libxml2/patches/patch-configure_in new file mode 100644 index 000000000..a8340e906 --- /dev/null +++ b/package/libxml2/patches/patch-configure_in @@ -0,0 +1,87 @@ +--- libxml2-2.9.1.orig/configure.in 2013-04-19 09:25:20.000000000 +0200 ++++ libxml2-2.9.1/configure.in 2013-10-31 08:37:36.000000000 +0100 +@@ -748,80 +748,16 @@ PYTHON_SITE_PACKAGES= + PYTHON_TESTS= + pythondir= + if test "$with_python" != "no" ; then +- if test -x "$with_python/bin/python" +- then +- echo Found python in $with_python/bin/python +- PYTHON="$with_python/bin/python" +- else +- if test -x "$with_python/python.exe" +- then +- echo Found python in $with_python/python.exe +- PYTHON="$with_python/python.exe" +- else +- if test -x "$with_python" +- then +- echo Found python in $with_python +- PYTHON="$with_python" +- else +- if test -x "$PYTHON" +- then +- echo Found python in environment PYTHON=$PYTHON +- with_python=`$PYTHON -c "import sys; print(sys.exec_prefix)"` +- else +- AC_PATH_PROG(PYTHON, python python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5) +- fi +- fi +- fi +- fi ++ AC_PATH_PROG(PYTHON, python python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5) + if test "$PYTHON" != "" + then + PYTHON_VERSION=`$PYTHON -c "from distutils import sysconfig; print(sysconfig.get_python_version())"` +- PYTHON_INCLUDES=`$PYTHON -c "from distutils import sysconfig; print(sysconfig.get_python_inc())"` +-# does not work as it produce a /usr/lib/python path instead of/usr/lib64/python +-# +-# PYTHON_SITE_PACKAGES=`$PYTHON -c "from distutils import sysconfig; print(sysconfig.get_python_lib())"` + echo Found Python version $PYTHON_VERSION + fi +- if test "$PYTHON_VERSION" != "" -a "$PYTHON_INCLUDES" = "" +- then +- if test -r $with_python/include/python$PYTHON_VERSION/Python.h +- then +- PYTHON_INCLUDES=$with_python/include/python$PYTHON_VERSION +- else +- if test -r $prefix/include/python$PYTHON_VERSION/Python.h +- then +- PYTHON_INCLUDES=$prefix/include/python$PYTHON_VERSION +- else +- if test -r /usr/include/python$PYTHON_VERSION/Python.h +- then +- PYTHON_INCLUDES=/usr/include/python$PYTHON_VERSION +- else +- if test -r $with_python/include/Python.h +- then +- PYTHON_INCLUDES=$with_python/include +- else +- echo could not find python$PYTHON_VERSION/Python.h or $with_python/include/Python.h +- fi +- fi +- fi +- fi +- fi +- if test "$PYTHON_VERSION" != "" -a "$PYTHON_SITE_PACKAGES" = "" +- then +- if test -d $libdir/python$PYTHON_VERSION/site-packages +- then +- PYTHON_SITE_PACKAGES=$libdir/python$PYTHON_VERSION/site-packages +- else +- if test -d $with_python/lib/site-packages +- then +- PYTHON_SITE_PACKAGES=$with_python/lib/site-packages +- else +- PYTHON_SITE_PACKAGES=`$PYTHON -c "from distutils import sysconfig; print(sysconfig.get_python_lib())"` +- fi +- fi +- fi ++ PYTHON_INCLUDES=`$PYTHON$PYTHON_VERSION-config --includes` ++ PYTHON_LIBS=`$PYTHON$PYTHON_VERSION-config --ldflags` ++ PYTHON_SITE_PACKAGES=/usr/lib/python$PYTHON_VERSION/site-packages + pythondir='$(PYTHON_SITE_PACKAGES)' +- PYTHON_LIBS=`python$PYTHON_VERSION-config --ldflags` + else + PYTHON= + fi diff --git a/package/python2/Makefile b/package/python2/Makefile index c0678a528..82c89c433 100644 --- a/package/python2/Makefile +++ b/package/python2/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= python2 PKG_VERSION:= 2.7.5 -PKG_RELEASE:= 2 +PKG_RELEASE:= 3 PKG_MD5SUM:= b4f01a1d0ba0b46b05c73b2ac909b1df PKG_DESCR:= Python scripting language (Version 2) PKG_SECTION:= lang @@ -95,21 +95,11 @@ CONFIGURE_ARGS:= --with-threads \ --with-system-ffi \ --without-cxx-main +HOST_STYLE:= auto HOST_CONFIGURE_ARGS:= --without-threads \ --disable-toolbox-glue \ --without-cxx-main -python2-hostinstall: - $(INSTALL_BIN) ${HOST_WRKINST}/usr/bin/python \ - $(STAGING_HOST_DIR)/usr/bin - $(INSTALL_BIN) ${WRKBUILD}/Parser/pgen \ - $(STAGING_HOST_DIR)/usr/bin/pgen - $(CP) $(HOST_WRKINST)/usr/lib/python2.7 \ - $(STAGING_HOST_DIR)/usr/lib - $(INSTALL_DIR) $(STAGING_HOST_DIR)/usr/include/python2.7 - ${CP} ${HOST_WRKINST}/usr/include/python2.7/pyconfig.h \ - $(STAGING_HOST_DIR)/usr/include/python2.7 - python2-install: ${INSTALL_MODS_y} ${INSTALL_MODS_m} ${INSTALL_DIR} ${IDIR_PYTHON2}/usr/bin ${IDIR_PYTHON2}/usr/lib ${INSTALL_DIR} ${IDIR_PYTHON2}/usr/lib/python2.7 diff --git a/package/python2/patches/patch-Misc_python-config_in b/package/python2/patches/patch-Misc_python-config_in new file mode 100644 index 000000000..7ea806bea --- /dev/null +++ b/package/python2/patches/patch-Misc_python-config_in @@ -0,0 +1,13 @@ +--- Python-2.7.5.orig/Misc/python-config.in 2013-05-12 05:32:49.000000000 +0200 ++++ Python-2.7.5/Misc/python-config.in 2013-10-30 21:09:36.000000000 +0100 +@@ -37,8 +37,8 @@ for opt in opt_flags: + print sysconfig.EXEC_PREFIX + + elif opt in ('--includes', '--cflags'): +- flags = ['-I' + sysconfig.get_python_inc(), +- '-I' + sysconfig.get_python_inc(plat_specific=True)] ++ flags = ['-I' + re.sub('host_', 'target_', sysconfig.get_python_inc()), ++ '-I' + re.sub('host_', 'target_', sysconfig.get_python_inc(plat_specific=True))] + if opt == '--cflags': + flags.extend(getvar('CFLAGS').split()) + print ' '.join(flags) -- cgit v1.2.3 From b520d5c344c10b079673446d7f3cce1c24449d2a Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Thu, 31 Oct 2013 09:20:22 +0100 Subject: forgot to import regular expression module --- mk/buildhlp.mk | 4 ++-- package/python2/Makefile | 2 +- package/python2/patches/patch-Misc_python-config_in | 12 ++++++++++-- 3 files changed, 13 insertions(+), 5 deletions(-) (limited to 'package/python2/patches') diff --git a/mk/buildhlp.mk b/mk/buildhlp.mk index 79014ac4b..587a97125 100644 --- a/mk/buildhlp.mk +++ b/mk/buildhlp.mk @@ -96,8 +96,8 @@ endif @-test ! -r ${WRKDIR}/.autoreconf_done || \ (wrkdist=$(WRKDIST) dir=$${wrkdist#$(WRKDIR)}; \ cd ${WRKDIR}.orig$${dir}; \ - env ${AUTOTOOL_ENV} autoreconf -if) $(MAKE_TRACE) - @rm -rf ${WRKDIR}.orig/${PKG_NAME}-${PKG_VERSION}/autom4te.cache + env ${AUTOTOOL_ENV} autoreconf -if; \ + rm -rf ${WRKDIR}.orig$${dir}/autom4te.cache ) $(MAKE_TRACE) @# restore config.sub/config.guess @for i in $$(find ${WRKDIR} -name config.sub);do \ if [ -f $$i.bak ];then \ diff --git a/package/python2/Makefile b/package/python2/Makefile index 82c89c433..2eb0e7bde 100644 --- a/package/python2/Makefile +++ b/package/python2/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= python2 PKG_VERSION:= 2.7.5 -PKG_RELEASE:= 3 +PKG_RELEASE:= 2 PKG_MD5SUM:= b4f01a1d0ba0b46b05c73b2ac909b1df PKG_DESCR:= Python scripting language (Version 2) PKG_SECTION:= lang diff --git a/package/python2/patches/patch-Misc_python-config_in b/package/python2/patches/patch-Misc_python-config_in index 7ea806bea..9734d4fbd 100644 --- a/package/python2/patches/patch-Misc_python-config_in +++ b/package/python2/patches/patch-Misc_python-config_in @@ -1,6 +1,14 @@ --- Python-2.7.5.orig/Misc/python-config.in 2013-05-12 05:32:49.000000000 +0200 -+++ Python-2.7.5/Misc/python-config.in 2013-10-30 21:09:36.000000000 +0100 -@@ -37,8 +37,8 @@ for opt in opt_flags: ++++ Python-2.7.5/Misc/python-config.in 2013-10-30 21:29:47.000000000 +0100 +@@ -3,6 +3,7 @@ + import sys + import os + import getopt ++import re + from distutils import sysconfig + + valid_opts = ['prefix', 'exec-prefix', 'includes', 'libs', 'cflags', +@@ -37,8 +38,8 @@ for opt in opt_flags: print sysconfig.EXEC_PREFIX elif opt in ('--includes', '--cflags'): -- cgit v1.2.3