blob: 95509fdd383d9abe56b85fee9fa04befa18f70e3 [file] [log] [blame]
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