| From b29739b0545771c80eadc505b6f661b0678ed0cf Mon Sep 17 00:00:00 2001 |
| From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B5=D0=B9?= |
| <alexey.pawlow@gmail.com> |
| Date: Thu, 17 Jun 2021 18:51:38 +0530 |
| Subject: [PATCH 028/N] MINGW generalization of posix build in sysconfig.py |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| Co-authored-by: Алексей <alexey.pawlow@gmail.com> |
| --- |
| Lib/sysconfig.py | 15 +++++++++------ |
| 1 file changed, 9 insertions(+), 6 deletions(-) |
| |
| diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py |
| index aa49d80..d4298f7 100644 |
| --- a/Lib/sysconfig.py |
| +++ b/Lib/sysconfig.py |
| @@ -100,6 +100,9 @@ _BASE_EXEC_PREFIX = os.path.normpath(sys.base_exec_prefix) |
| _CONFIG_VARS = None |
| _USER_BASE = None |
| |
| +# GCC[mingw*] use posix build system |
| +_POSIX_BUILD = os.name == 'posix' or \ |
| + (os.name == "nt" and 'GCC' in sys.version) |
| |
| def _safe_realpath(path): |
| try: |
| @@ -183,7 +186,7 @@ def _expand_vars(scheme, vars): |
| |
| |
| def _get_default_scheme(): |
| - if os.name == 'posix': |
| + if _POSIX_BUILD: |
| # the default scheme for posix is posix_prefix |
| return 'posix_prefix' |
| return os.name |
| @@ -199,7 +202,7 @@ def _getuserbase(): |
| def joinuser(*args): |
| return os.path.expanduser(os.path.join(*args)) |
| |
| - if os.name == "nt": |
| + if os.name == "nt" and not _POSIX_BUILD: |
| base = os.environ.get("APPDATA") or "~" |
| return joinuser(base, "Python") |
| |
| @@ -504,7 +507,7 @@ def parse_config_h(fp, vars=None): |
| def get_config_h_filename(): |
| """Return the path of pyconfig.h.""" |
| if _PYTHON_BUILD: |
| - if os.name == "nt": |
| + if os.name == "nt" and not _POSIX_BUILD: |
| inc_dir = os.path.join(_sys_home or _PROJECT_BASE, "PC") |
| else: |
| inc_dir = _sys_home or _PROJECT_BASE |
| @@ -576,10 +579,10 @@ def get_config_vars(*args): |
| # sys.abiflags may not be defined on all platforms. |
| _CONFIG_VARS['abiflags'] = '' |
| |
| - if os.name == 'nt': |
| + if os.name == 'nt' and not _POSIX_BUILD: |
| _init_non_posix(_CONFIG_VARS) |
| _CONFIG_VARS['TZPATH'] = '' |
| - if os.name == 'posix': |
| + if _POSIX_BUILD: |
| _init_posix(_CONFIG_VARS) |
| # For backward compatibility, see issue19555 |
| SO = _CONFIG_VARS.get('EXT_SUFFIX') |
| @@ -592,7 +595,7 @@ def get_config_vars(*args): |
| |
| # Always convert srcdir to an absolute path |
| srcdir = _CONFIG_VARS.get('srcdir', _PROJECT_BASE) |
| - if os.name == 'posix': |
| + if _POSIX_BUILD: |
| if _PYTHON_BUILD: |
| # If srcdir is a relative path (typically '.' or '..') |
| # then it should be interpreted relative to the directory |
| -- |
| 2.32.0 |
| |