| From 0e71a45f5306c61085b972fb6799dad58cc51b83 Mon Sep 17 00:00:00 2001 |
| From: Naveen M K <naveen521kk@gmail.com> |
| Date: Mon, 28 Jun 2021 17:31:35 +0530 |
| Subject: [PATCH 099/N] Change the `get_platform()` method in sysconfig and |
| distutils |
| |
| This would possibly fix building wheels when mingw python |
| is used and would be unique to each python same as EXT_SUFFIX. |
| |
| Also, this modifies the `sys.version` argument to include UCRT |
| in it. |
| |
| Signed-off-by: Naveen M K <naveen521kk@gmail.com> |
| --- |
| Lib/distutils/util.py | 16 ++++++++++++++-- |
| Lib/sysconfig.py | 16 ++++++++++++++-- |
| Python/getcompiler.c | 4 ++++ |
| 3 files changed, 32 insertions(+), 4 deletions(-) |
| |
| diff --git a/Lib/distutils/util.py b/Lib/distutils/util.py |
| index 75a369d..5b51c76 100644 |
| --- a/Lib/distutils/util.py |
| +++ b/Lib/distutils/util.py |
| @@ -36,8 +36,20 @@ def get_host_platform(): |
| |
| """ |
| if os.name == 'nt': |
| - if 'GCC' in sys.version: |
| - return 'mingw' |
| + if 'gcc' in sys.version.lower(): |
| + if 'ucrt' in sys.version.lower(): |
| + if 'amd64' in sys.version.lower(): |
| + return 'mingw_x86_64_ucrt' |
| + return 'mingw_i686_ucrt' |
| + if 'clang' in sys.version.lower(): |
| + if 'amd64' in sys.version.lower(): |
| + return 'mingw_x86_64_clang' |
| + if 'arm64' in sys.version.lower(): |
| + return 'mingw_aarch64' |
| + return 'mingw_i686_clang' |
| + if 'amd64' in sys.version.lower(): |
| + return 'mingw_x86_64' |
| + return 'mingw_i686' |
| if 'amd64' in sys.version.lower(): |
| return 'win-amd64' |
| if '(arm)' in sys.version.lower(): |
| diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py |
| index c0695e2..854b382 100644 |
| --- a/Lib/sysconfig.py |
| +++ b/Lib/sysconfig.py |
| @@ -667,8 +667,20 @@ def get_platform(): |
| |
| """ |
| if os.name == 'nt': |
| - if 'GCC' in sys.version: |
| - return 'mingw' |
| + if 'gcc' in sys.version.lower(): |
| + if 'ucrt' in sys.version.lower(): |
| + if 'amd64' in sys.version.lower(): |
| + return 'mingw_x86_64_ucrt' |
| + return 'mingw_i686_ucrt' |
| + if 'clang' in sys.version.lower(): |
| + if 'amd64' in sys.version.lower(): |
| + return 'mingw_x86_64_clang' |
| + if 'arm64' in sys.version.lower(): |
| + return 'mingw_aarch64' |
| + return 'mingw_i686_clang' |
| + if 'amd64' in sys.version.lower(): |
| + return 'mingw_x86_64' |
| + return 'mingw_i686' |
| if 'amd64' in sys.version.lower(): |
| return 'win-amd64' |
| if '(arm)' in sys.version.lower(): |
| diff --git a/Python/getcompiler.c b/Python/getcompiler.c |
| index b529e29..2d935fe 100644 |
| --- a/Python/getcompiler.c |
| +++ b/Python/getcompiler.c |
| @@ -33,8 +33,12 @@ |
| #define COMPILER COMP_SEP "[GCC Clang " xstr(__clang_major__) "." \ |
| xstr(__clang_minor__) "." xstr(__clang_patchlevel__) ARCH_SUFFIX "]" |
| #else |
| +#if defined(_UCRT) |
| +#define COMPILER COMP_SEP "[GCC UCRT " __VERSION__ ARCH_SUFFIX "]" |
| +#else |
| #define COMPILER COMP_SEP "[GCC " __VERSION__ ARCH_SUFFIX "]" |
| #endif |
| +#endif |
| // Generic fallbacks. |
| #elif defined(__cplusplus) |
| #define COMPILER "[C++]" |
| -- |
| 2.32.0 |
| |