From 8593bd4755f7e892e9b4ad5dae1a8bb79632e0c8 Mon Sep 17 00:00:00 2001
From: Naveen M K <naveen521kk@gmail.com>
Date: Tue, 21 Sep 2021 21:36:58 +0200
Subject: [PATCH 052/N] Change the `get_platform()` method in sysconfig

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/sysconfig.py     | 16 ++++++++++++++--
 Python/getcompiler.c |  4 ++++
 2 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py
index a0e07b9..2a67b84 100644
--- a/Lib/sysconfig.py
+++ b/Lib/sysconfig.py
@@ -813,8 +813,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 7e7be71..275f799 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++]"
