[issue18235] _sysconfigdata.py wrong on AIX installations

Michael Haubenwallner report at bugs.python.org
Fri Jun 6 17:23:23 CEST 2014


Michael Haubenwallner added the comment:

Hmm... instead of reversing the order while keeping in _generate_posix_vars(), feels like it would have been better to move the code from 2000 back to _init_posix() where it originally was, without changing the order - because now for sysconfig within Python build, the working B-value of LDSHARED is lost.

Something like (note the function names):

--- a/Lib/sysconfig.py  Fri Jun 06 01:23:53 2014 -0500
+++ b/Lib/sysconfig.py  Fri Jun 06 17:11:02 2014 +0200
@@ -364,11 +364,6 @@ def _generate_posix_vars():
         if hasattr(e, "strerror"):
             msg = msg + " (%s)" % e.strerror
         raise OSError(msg)
-    # On AIX, there are wrong paths to the linker scripts in the Makefile
-    # -- these paths are relative to the Python source, but when installed
-    # the scripts are in another directory.
-    if _PYTHON_BUILD:
-        vars['BLDSHARED'] = vars['LDSHARED']
 
     # There's a chicken-and-egg situation on OS X with regards to the
     # _sysconfigdata module after the changes introduced by #15298:
@@ -409,6 +404,11 @@ def _init_posix(vars):
     # _sysconfigdata is generated at build time, see _generate_posix_vars()
     from _sysconfigdata import build_time_vars
     vars.update(build_time_vars)
+    # On AIX, we have different paths for building the Python modules
+    # relative to the Python source, and building third party modules
+    # after installing the Python dist.
+    if _PYTHON_BUILD:
+        vars['LDSHARED'] = vars['BLDSHARED']
 
 def _init_non_posix(vars):
     """Initialize the module as appropriate for NT"""

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue18235>
_______________________________________


More information about the Python-bugs-list mailing list