|
- diff -Naur Python-3.8.0-orig/Lib/distutils/sysconfig.py Python-3.8.0/Lib/distutils/sysconfig.py
- --- Python-3.8.0-orig/Lib/distutils/sysconfig.py 2019-10-22 10:01:10.872961200 +0300
- +++ Python-3.8.0/Lib/distutils/sysconfig.py 2019-10-22 10:02:18.890080700 +0300
- @@ -65,6 +65,17 @@
- python_build = _python_build()
-
-
- +def _posix_build():
- + # GCC[mingw*] use posix build system
- + # Check for cross builds explicitly
- + host_platform = os.environ.get("_PYTHON_HOST_PLATFORM")
- + if host_platform:
- + if host_platform.startswith('mingw'):
- + return True
- + return os.name == 'posix' or \
- + (os.name == "nt" and 'GCC' in sys.version)
- +posix_build = _posix_build()
- +
- # Calculate the build qualifier flags if they are defined. Adding the flags
- # to the include and lib directories only makes sense for an installation, not
- # an in-source build.
- @@ -98,7 +109,7 @@
- """
- if prefix is None:
- prefix = plat_specific and BASE_EXEC_PREFIX or BASE_PREFIX
- - if os.name == "posix":
- + if posix_build:
- if python_build:
- # Assume the executable is in the build directory. The
- # pyconfig.h file should be in the same directory. Since
- @@ -145,7 +156,7 @@
- else:
- prefix = plat_specific and EXEC_PREFIX or PREFIX
-
- - if os.name == "posix":
- + if posix_build:
- libpython = os.path.join(prefix,
- "lib", "python" + get_python_version())
- if standard_lib:
- @@ -255,7 +266,7 @@
- def get_config_h_filename():
- """Return full pathname of installed pyconfig.h file."""
- 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
- @@ -461,6 +472,9 @@
-
-
- def _init_nt():
- + if posix_build:
- + _init_posix()
- + return
- """Initialize the module as appropriate for NT"""
- g = {}
- # set basic install directories
- @@ -510,7 +524,7 @@
-
- # 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
- @@ -529,7 +543,7 @@
- # Normally it is relative to the build directory. However, during
- # testing, for example, we might be running a non-installed python
- # from a different directory.
- - if python_build and os.name == "posix":
- + if python_build and posix_build:
- base = project_base
- if (not os.path.isabs(_config_vars['srcdir']) and
- base != os.getcwd()):
|