diff options
| author | Xavier de Gaye <xdegaye@users.sourceforge.net> | 2016-09-11 22:22:24 +0200 |
|---|---|---|
| committer | Xavier de Gaye <xdegaye@users.sourceforge.net> | 2016-09-11 22:22:24 +0200 |
| commit | 92dec548ff1494b86f08bd3753ca91a9330b4ea9 (patch) | |
| tree | f45ab78e107ff109cc7e7c2e45b966a684500ede /Lib | |
| parent | ef71d2054835029fe54d577c154c43d2a5856d2f (diff) | |
| download | cpython-git-92dec548ff1494b86f08bd3753ca91a9330b4ea9.tar.gz | |
Issue #28046: get_sysconfigdata_name() uses the _PYTHON_SYSCONFIGDATA_NAME
environment variable that is defined when cross-compiling.
Diffstat (limited to 'Lib')
| -rw-r--r-- | Lib/distutils/sysconfig.py | 5 | ||||
| -rw-r--r-- | Lib/sysconfig.py | 22 |
2 files changed, 11 insertions, 16 deletions
diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py index 229626e1b4..8bf1a7016b 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py @@ -418,11 +418,12 @@ _config_vars = None def _init_posix(): """Initialize the module as appropriate for POSIX systems.""" # _sysconfigdata is generated at build time, see the sysconfig module - name = '_sysconfigdata_{abi}_{platform}_{multiarch}'.format( + name = os.environ.get('_PYTHON_SYSCONFIGDATA_NAME', + '_sysconfigdata_{abi}_{platform}_{multiarch}'.format( abi=sys.abiflags, platform=sys.platform, multiarch=getattr(sys.implementation, '_multiarch', ''), - ) + )) _temp = __import__(name, globals(), locals(), ['build_time_vars'], 0) build_time_vars = _temp.build_time_vars global _config_vars diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py index 13275dea34..9314e71a2f 100644 --- a/Lib/sysconfig.py +++ b/Lib/sysconfig.py @@ -342,19 +342,13 @@ def get_makefile_filename(): return os.path.join(get_path('stdlib'), config_dir_name, 'Makefile') -def _get_sysconfigdata_name(vars=None): - if vars is None: - return '_sysconfigdata_{abi}_{platform}_{multiarch}'.format( - abi=sys.abiflags, - platform=sys.platform, - multiarch=getattr(sys.implementation, '_multiarch', ''), - ) - else: - return '_sysconfigdata_{abi}_{platform}_{multiarch}'.format( - abi=vars['ABIFLAGS'], - platform=vars['MACHDEP'], - multiarch=vars.get('MULTIARCH', ''), - ) +def _get_sysconfigdata_name(): + return os.environ.get('_PYTHON_SYSCONFIGDATA_NAME', + '_sysconfigdata_{abi}_{platform}_{multiarch}'.format( + abi=sys.abiflags, + platform=sys.platform, + multiarch=getattr(sys.implementation, '_multiarch', ''), + )) def _generate_posix_vars(): @@ -397,7 +391,7 @@ def _generate_posix_vars(): # _sysconfigdata module manually and populate it with the build vars. # This is more than sufficient for ensuring the subsequent call to # get_platform() succeeds. - name = _get_sysconfigdata_name(vars) + name = _get_sysconfigdata_name() if 'darwin' in sys.platform: import types module = types.ModuleType(name) |
