]> granicus.if.org Git - python/commitdiff
Merged revisions 85744 via svnmerge from
authorRonald Oussoren <ronaldoussoren@mac.com>
Wed, 20 Oct 2010 13:11:46 +0000 (13:11 +0000)
committerRonald Oussoren <ronaldoussoren@mac.com>
Wed, 20 Oct 2010 13:11:46 +0000 (13:11 +0000)
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r85744 | ronald.oussoren | 2010-10-20 15:10:12 +0200 (Wed, 20 Oct 2010) | 7 lines

  Fix for issue #7473.

  Without this patch you'll get link errors in some extensions
  (in particular the _curses_panel) one when you try to build
  a 3-way universal framework when you previously installed a
  2-way universal framework using the python.org installer.
........

Misc/NEWS
setup.py

index 3ff641c6c92f539828cec9d55b003cc3dab297aa..f25664a67c833442692164e99e49fcd7372beefd 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -434,6 +434,8 @@ Build
   the "bin" directory inside the framework is on the shell's search path. This
   feature now also supports the ZSH shell.
 
+- Issue #7473: avoid link errors when building a framework with a different
+  set of architectures than the one that is currently installed.
 
 Tests
 -----
index 4f895595ce41ab745a042476534522be3bfbcd46..cc5358fff764d8063cddfad1e010f1b86910d632 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -384,7 +384,12 @@ class PyBuildExt(build_ext):
                     for directory in reversed(options.dirs):
                         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,