blob: b5fd650acb6801d26afed8dd0f5af8d4d1f6f52c [file] [log] [blame] [edit]
From 2f233ca6cfa1122c784219e130e50ce9d0276777 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:21 +0530
Subject: [PATCH 012/N] MINGW compiler customize mingw cygwin compilers
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-authored-by: Алексей <alexey.pawlow@gmail.com>
---
Lib/distutils/sysconfig.py | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py
index 37feae5..bbe8e3c 100644
--- a/Lib/distutils/sysconfig.py
+++ b/Lib/distutils/sysconfig.py
@@ -176,7 +176,23 @@ def customize_compiler(compiler):
Mainly needed on Unix, so we can plug in the information that
varies across Unices and is stored in Python's Makefile.
"""
- if compiler.compiler_type == "unix":
+ global _config_vars
+ if compiler.compiler_type in ["cygwin", "mingw32"]:
+ # Note that cygwin use posix build and 'unix' compiler.
+ # If build is not based on posix then we must predefine
+ # some environment variables corresponding to posix
+ # build rules and defaults.
+ if not 'GCC' in sys.version:
+ _config_vars['CC'] = "gcc"
+ _config_vars['CXX'] = "g++"
+ _config_vars['OPT'] = "-fwrapv -O3 -Wall -Wstrict-prototypes"
+ _config_vars['CFLAGS'] = ""
+ _config_vars['CCSHARED'] = ""
+ _config_vars['LDSHARED'] = "gcc -shared -Wl,--enable-auto-image-base"
+ _config_vars['AR'] = "ar"
+ _config_vars['ARFLAGS'] = "rc"
+
+ if compiler.compiler_type in ["unix", "cygwin", "mingw32"]:
if sys.platform == "darwin":
# Perform first-time customization of compiler-related
# config vars on OS X now that we know we need a compiler.
@@ -186,7 +202,6 @@ def customize_compiler(compiler):
# that Python itself was built on. Also the user OS
# version and build tools may not support the same set
# of CPU architectures for universal builds.
- global _config_vars
# Use get_config_var() to ensure _config_vars is initialized.
if not get_config_var('CUSTOMIZED_OSX_COMPILER'):
import _osx_support
--
2.32.0