[vlc-commits] [Git][videolan/vlc][master] 4 commits: contrib: mingw64: update to version 12.0.0

Steve Lhomme (@robUx4) gitlab at videolan.org
Mon Jun 3 06:33:16 UTC 2024



Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
f814f06e by Steve Lhomme at 2024-06-03T05:56:10+00:00
contrib: mingw64: update to version 12.0.0

- - - - -
81336965 by Steve Lhomme at 2024-06-03T05:56:10+00:00
contrib: mingw64: add missing header recently modified for UWP

- - - - -
73c858dd by Steve Lhomme at 2024-06-03T05:56:10+00:00
vlc_fixups: remove old IN6_IS_ADDR_MULTICAST hack

The proper fix has been in mingw-w64 since version 6, which is our minimum.

https://github.com/mingw-w64/mingw-w64/commit/4c2df0d02ed71ae07e85f1b35ac857a148cd2b8f

- - - - -
25dfe4a2 by Steve Lhomme at 2024-06-03T05:56:10+00:00
configure: always use ws2_32 and iphlpapi for Windows networking

There is no reason to test connect is in some system library.
And the detection fails for mingw-12 UWP.

- - - - -


29 changed files:

- configure.ac
- − contrib/src/mingw64/0001-headers-allow-CryptAcquireContext-in-Win10-RS4-UWP-b.patch
- − contrib/src/mingw64/0001-headers-enable-GetFileInformationByHandle-in-Win10-U.patch
- − contrib/src/mingw64/0001-include-process-fix-bare-DllMain-_CRT_INIT-signature.patch
- − contrib/src/mingw64/0002-headers-allow-CryptGenRandom-in-Win10-19H1-UWP-build.patch
- − contrib/src/mingw64/0002-headers-enable-VirtualAlloc-Ex-in-Win10-UWP-builds.patch
- − contrib/src/mingw64/0003-headers-allow-more-wincrypt-API-s-in-Win10-RS4-UWP-b.patch
- − contrib/src/mingw64/0003-headers-enable-GetVolumePathNameW-in-Win10-UWP-build.patch
- − contrib/src/mingw64/0004-headers-allow-more-wincrypt-API-s-in-Win10-19H1-UWP-.patch
- − contrib/src/mingw64/0004-headers-enable-GET_MODULE_HANDLE_EX_xxx-defines-in-U.patch
- − contrib/src/mingw64/0005-crt-use-wincrypt-API-from-windowsapp-in-Windows-10.patch
- − contrib/src/mingw64/0005-headers-enable-CreateHardLinkW-in-Win10-19H1-UWP-bui.patch
- − contrib/src/mingw64/0006-headers-enable-more-module-API-in-Win10-19H1-UWP-bui.patch
- − contrib/src/mingw64/0007-crt-add-api-ms-core-registry-def-files.patch
- − contrib/src/mingw64/0008-headers-enable-some-Registry-API-calls-in-Win10-19H1.patch
- − contrib/src/mingw64/0009-headers-only-enable-GetFileInformationByHandle-for-1.patch
- − contrib/src/mingw64/0010-headers-allow-Get-SetHandleInformation-in-Win10-19H1.patch
- − contrib/src/mingw64/0011-crt-add-missing-api-ms-win-core-heap-l1-1-0.patch
- − contrib/src/mingw64/0012-headers-Allow-some-Heap-API-in-Win10-19H1-UWP-builds.patch
- − contrib/src/mingw64/0013-headers-enable-FindResourceW-in-Win10-19H1-UWP-build.patch
- − contrib/src/mingw64/0014-headers-check-which-version-of-UWP-Windows-contains-.patch
- − contrib/src/mingw64/0015-headers-enabled-LoadLibraryEx-flags-in-Win10-19H1-UW.patch
- − contrib/src/mingw64/0016-headers-Allow-SetDllDirectoryW-A-API-in-Win10-19H1-U.patch
- − contrib/src/mingw64/0017-headers-allow-FORMAT_MESSAGE_ALLOCATE_BUFFER-in-UWP.patch
- − contrib/src/mingw64/0018-headers-allow-RtlSecureZeroMemory-in-all-targets.patch
- − contrib/src/mingw64/0019-headers-use-inline-version-of-RtlSecureZeroMemory-fo.patch
- contrib/src/mingw64/SHA512SUMS
- contrib/src/mingw64/rules.mak
- include/vlc_fixups.h


Changes:

=====================================
configure.ac
=====================================
@@ -803,13 +803,13 @@ AC_CHECK_TYPES([max_align_t],,,
 dnl Checks for socket stuff
 VLC_SAVE_FLAGS
 SOCKET_LIBS=""
-AC_SEARCH_LIBS(connect, [socket], [
-  AS_IF([test "$ac_cv_search_connect" != "none required"], [
-    SOCKET_LIBS="$ac_cv_search_connect"
-  ])
-], [
-  AS_IF([test "${SYS}" = "mingw32"], [
-    SOCKET_LIBS="-lws2_32 -liphlpapi"
+AS_IF([test "${SYS}" = "mingw32"], [
+  SOCKET_LIBS="-lws2_32 -liphlpapi"
+],[
+  AC_SEARCH_LIBS(connect, [socket], [
+    AS_IF([test "$ac_cv_search_connect" != "none required"], [
+      SOCKET_LIBS="$ac_cv_search_connect"
+    ])
   ])
 ])
 


=====================================
contrib/src/mingw64/0001-headers-allow-CryptAcquireContext-in-Win10-RS4-UWP-b.patch deleted
=====================================
@@ -1,33 +0,0 @@
-From 8c7a455ce283451a8f2cfb8ab785ec2b0b3a0f0a Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 22 Jun 2023 09:00:49 +0200
-Subject: [PATCH 1/5] headers: allow CryptAcquireContext in Win10 RS4 UWP
- builds
-
-It's allowed by the WACK and in api-ms-win-security-cryptoapi-l1-1-0
-since the 16299/RS4 SDK.
----
- mingw-w64-headers/include/wincrypt.h | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/mingw-w64-headers/include/wincrypt.h b/mingw-w64-headers/include/wincrypt.h
-index 8c719b1c5..e60e3cd23 100644
---- a/mingw-w64-headers/include/wincrypt.h
-+++ b/mingw-w64-headers/include/wincrypt.h
-@@ -773,10 +773,12 @@ extern "C" {
- #endif
- #endif
- 
--#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || defined(WINSTORECOMPAT)
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_RS4 || defined(WINSTORECOMPAT)
-   WINIMPM WINBOOL WINAPI CryptAcquireContextA (HCRYPTPROV *phProv, LPCSTR szContainer, LPCSTR szProvider, DWORD dwProvType, DWORD dwFlags);
-   WINIMPM WINBOOL WINAPI CryptAcquireContextW (HCRYPTPROV *phProv, LPCWSTR szContainer, LPCWSTR szProvider, DWORD dwProvType, DWORD dwFlags);
- #define CryptAcquireContext __MINGW_NAME_AW(CryptAcquireContext)
-+#endif
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || defined(WINSTORECOMPAT)
-   WINIMPM WINBOOL WINAPI CryptGenRandom (HCRYPTPROV hProv, DWORD dwLen, BYTE *pbBuffer);
- #endif
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0001-headers-enable-GetFileInformationByHandle-in-Win10-U.patch deleted
=====================================
@@ -1,30 +0,0 @@
-From d6b24ec2508f10dadbe9ccd8789b22ed1c0832bb Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Wed, 24 May 2023 08:30:19 +0200
-Subject: [PATCH 01/17] headers: enable GetFileInformationByHandle in Win10 UWP
- builds
-
-Contrary to what the documentation says, it's available in the Windows SDK,
-both in the headers and when linking with WindowsApp.lib.
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/fileapi.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/mingw-w64-headers/include/fileapi.h b/mingw-w64-headers/include/fileapi.h
-index ffbe12560..8ea09f6c9 100644
---- a/mingw-w64-headers/include/fileapi.h
-+++ b/mingw-w64-headers/include/fileapi.h
-@@ -32,7 +32,7 @@ WINBASEAPI DWORD WINAPI GetFileAttributesW (LPCWSTR lpFileName);
- #define GetFileAttributes __MINGW_NAME_AW(GetFileAttributes)
- WINBASEAPI DWORD WINAPI SetFilePointer (HANDLE hFile, LONG lDistanceToMove, PLONG lpDistanceToMoveHigh, DWORD dwMoveMethod);
- #endif
--#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || defined(WINSTORECOMPAT)
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || _WIN32_WINNT >= _WIN32_WINNT_WIN10
-   typedef struct _BY_HANDLE_FILE_INFORMATION {
-     DWORD dwFileAttributes;
-     FILETIME ftCreationTime;
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0001-include-process-fix-bare-DllMain-_CRT_INIT-signature.patch deleted
=====================================
@@ -1,33 +0,0 @@
-From aa4e9797bac4b353ebfd6159e731e8347ea10f28 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Wed, 27 Sep 2023 13:53:54 +0200
-Subject: [PATCH] include/process: fix bare DllMain/_CRT_INIT signature
-
-The DWORD reason corresponds to an "unsigned long", not an "unsigned".
-This is also how it's defined in the Windows SDK.
----
- mingw-w64-headers/crt/process.h | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/mingw-w64-headers/crt/process.h b/mingw-w64-headers/crt/process.h
-index 08b73cf58..1ac39a064 100644
---- a/mingw-w64-headers/crt/process.h
-+++ b/mingw-w64-headers/crt/process.h
-@@ -138,10 +138,10 @@ extern "C" {
-   WINBOOL WINAPI _wCRT_INIT(HANDLE _HDllHandle,DWORD _Reason,LPVOID _Reserved);
-   extern WINBOOL (WINAPI *const _pRawDllMain)(HANDLE,DWORD,LPVOID);
- #else
--  int __stdcall DllMain(void *_HDllHandle,unsigned _Reason,void *_Reserved);
--  int __stdcall _CRT_INIT(void *_HDllHandle,unsigned _Reason,void *_Reserved);
--  int __stdcall _wCRT_INIT(void *_HDllHandle,unsigned _Reason,void *_Reserved);
--  extern int (__stdcall *const _pRawDllMain)(void *,unsigned,void *);
-+  int __stdcall DllMain(void *_HDllHandle,unsigned long _Reason,void *_Reserved);
-+  int __stdcall _CRT_INIT(void *_HDllHandle,unsigned long _Reason,void *_Reserved);
-+  int __stdcall _wCRT_INIT(void *_HDllHandle,unsigned long _Reason,void *_Reserved);
-+  extern int (__stdcall *const _pRawDllMain)(void *,unsigned long,void *);
- #endif
- #endif
- 
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0002-headers-allow-CryptGenRandom-in-Win10-19H1-UWP-build.patch deleted
=====================================
@@ -1,27 +0,0 @@
-From b19b9c357d29769c7f1dd03ef0fa47315e4f2705 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 22 Jun 2023 09:03:08 +0200
-Subject: [PATCH 2/5] headers: allow CryptGenRandom in Win10 19H1 UWP builds
-
-It's allowed by the WACK and in api-ms-win-security-cryptoapi-l1-1-0
-since the 18362/19H1 SDK.
----
- mingw-w64-headers/include/wincrypt.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/mingw-w64-headers/include/wincrypt.h b/mingw-w64-headers/include/wincrypt.h
-index e60e3cd23..05fd577fb 100644
---- a/mingw-w64-headers/include/wincrypt.h
-+++ b/mingw-w64-headers/include/wincrypt.h
-@@ -778,7 +778,7 @@ extern "C" {
-   WINIMPM WINBOOL WINAPI CryptAcquireContextW (HCRYPTPROV *phProv, LPCWSTR szContainer, LPCWSTR szProvider, DWORD dwProvType, DWORD dwFlags);
- #define CryptAcquireContext __MINGW_NAME_AW(CryptAcquireContext)
- #endif
--#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || defined(WINSTORECOMPAT)
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1 || defined(WINSTORECOMPAT)
-   WINIMPM WINBOOL WINAPI CryptGenRandom (HCRYPTPROV hProv, DWORD dwLen, BYTE *pbBuffer);
- #endif
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0002-headers-enable-VirtualAlloc-Ex-in-Win10-UWP-builds.patch deleted
=====================================
@@ -1,39 +0,0 @@
-From 7669cac6e5266b8bb0a23cf6dbdcd0511aaee52c Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 25 May 2023 08:31:24 +0200
-Subject: [PATCH 02/17] headers: enable VirtualAlloc(Ex) in Win10 UWP builds
-
-It is now officially allowed [1].
-
-[1] https://learn.microsoft.com/en-us/windows/win32/api/memoryapi/nf-memoryapi-virtualalloc
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/memoryapi.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/mingw-w64-headers/include/memoryapi.h b/mingw-w64-headers/include/memoryapi.h
-index 0f2b4ae79..152671c18 100644
---- a/mingw-w64-headers/include/memoryapi.h
-+++ b/mingw-w64-headers/include/memoryapi.h
-@@ -29,6 +29,8 @@ extern "C" {
- #endif
- 
- #if (WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP) && _WIN32_WINNT >= _WIN32_WINNT_WIN10) || WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-+    WINBASEAPI LPVOID WINAPI VirtualAlloc (LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect);
-+    WINBASEAPI LPVOID WINAPI VirtualAllocEx (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect);
-     WINBASEAPI WINBOOL WINAPI VirtualFree (LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType);
- #endif
- 
-@@ -78,8 +80,6 @@ extern "C" {
- #define FILE_CACHE_MIN_HARD_ENABLE 0x00000004
- #define FILE_CACHE_MIN_HARD_DISABLE 0x00000008
- 
--  WINBASEAPI LPVOID WINAPI VirtualAlloc (LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect);
--  WINBASEAPI LPVOID WINAPI VirtualAllocEx (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect);
-   WINBASEAPI WINBOOL WINAPI VirtualProtectEx (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flNewProtect, PDWORD lpflOldProtect);
-   WINBASEAPI SIZE_T WINAPI VirtualQueryEx (HANDLE hProcess, LPCVOID lpAddress, PMEMORY_BASIC_INFORMATION lpBuffer, SIZE_T dwLength);
-   WINBASEAPI WINBOOL WINAPI ReadProcessMemory (HANDLE hProcess, LPCVOID lpBaseAddress, LPVOID lpBuffer, SIZE_T nSize, SIZE_T *lpNumberOfBytesRead);
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0003-headers-allow-more-wincrypt-API-s-in-Win10-RS4-UWP-b.patch deleted
=====================================
@@ -1,94 +0,0 @@
-From 50d55a75c1513a1f2751c49bf87e76e90f7adff9 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 22 Jun 2023 08:52:51 +0200
-Subject: [PATCH 3/5] headers: allow more wincrypt API's in Win10 RS4 UWP
- builds
-
-The API's are allowed in windowsapp since RS4 and are allowed by the WACK.
-Only the MS header don't specify it properly for WINAPI_FAMILY_PC_APP
-but since the DLL is on all WINAPI_FAMILY_DESKTOP_APP and allowed by the
-WACK this always works.
-
-CMS_DH_KEY_INFO is needed by CryptSetKeyParam().
----
- mingw-w64-headers/include/wincrypt.h | 42 +++++++++++++++-------------
- 1 file changed, 23 insertions(+), 19 deletions(-)
-
-diff --git a/mingw-w64-headers/include/wincrypt.h b/mingw-w64-headers/include/wincrypt.h
-index 05fd577fb..4bcc3ff70 100644
---- a/mingw-w64-headers/include/wincrypt.h
-+++ b/mingw-w64-headers/include/wincrypt.h
-@@ -785,6 +785,29 @@ extern "C" {
-   WINIMPM WINBOOL WINAPI CryptReleaseContext (HCRYPTPROV hProv, DWORD dwFlags);
- #endif
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-+#define CryptEnumProviders __MINGW_NAME_AW(CryptEnumProviders)
-+#define CryptEnumProviderTypes __MINGW_NAME_AW(CryptEnumProviderTypes)
-+#define CryptSetProvider __MINGW_NAME_AW(CryptSetProvider)
-+#define CryptSetProviderEx __MINGW_NAME_AW(CryptSetProviderEx)
-+
-+  WINIMPM WINBOOL WINAPI CryptHashSessionKey (HCRYPTHASH hHash, HCRYPTKEY hKey, DWORD dwFlags);
-+  WINIMPM WINBOOL WINAPI CryptSetProviderA (LPCSTR pszProvName, DWORD dwProvType);
-+  WINIMPM WINBOOL WINAPI CryptSetProviderW (LPCWSTR pszProvName, DWORD dwProvType);
-+  WINIMPM WINBOOL WINAPI CryptSetProviderExA (LPCSTR pszProvName, DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags);
-+  WINIMPM WINBOOL WINAPI CryptSetProviderExW (LPCWSTR pszProvName, DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags);
-+  WINIMPM WINBOOL WINAPI CryptEnumProviderTypesA (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szTypeName, DWORD *pcbTypeName);
-+  WINIMPM WINBOOL WINAPI CryptEnumProviderTypesW (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szTypeName, DWORD *pcbTypeName);
-+  WINIMPM WINBOOL WINAPI CryptEnumProvidersA (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szProvName, DWORD *pcbProvName);
-+  WINIMPM WINBOOL WINAPI CryptEnumProvidersW (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szProvName, DWORD *pcbProvName);
-+  WINIMPM WINBOOL WINAPI CryptContextAddRef (HCRYPTPROV hProv, DWORD *pdwReserved, DWORD dwFlags);
-+  WINIMPM WINBOOL WINAPI CryptDuplicateKey (HCRYPTKEY hKey, DWORD *pdwReserved, DWORD dwFlags, HCRYPTKEY *phKey);
-+  WINIMPM WINBOOL WINAPI CryptDuplicateHash (HCRYPTHASH hHash, DWORD *pdwReserved, DWORD dwFlags, HCRYPTHASH *phHash);
-+#if NTDDI_VERSION >= NTDDI_WS03
-+  WINBOOL __cdecl GetEncSChannel (BYTE **pData, DWORD *dwDecSize);
-+#endif
-+#endif
-+
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_RS4
-   typedef struct _CMS_DH_KEY_INFO {
-     DWORD dwVersion;
-     ALG_ID Algid;
-@@ -795,11 +818,7 @@ extern "C" {
- 
- #define CryptSignHash __MINGW_NAME_AW(CryptSignHash)
- #define CryptVerifySignature __MINGW_NAME_AW(CryptVerifySignature)
--#define CryptSetProvider __MINGW_NAME_AW(CryptSetProvider)
--#define CryptSetProviderEx __MINGW_NAME_AW(CryptSetProviderEx)
- #define CryptGetDefaultProvider __MINGW_NAME_AW(CryptGetDefaultProvider)
--#define CryptEnumProviderTypes __MINGW_NAME_AW(CryptEnumProviderTypes)
--#define CryptEnumProviders __MINGW_NAME_AW(CryptEnumProviders)
- 
-   WINIMPM WINBOOL WINAPI CryptGenKey (HCRYPTPROV hProv, ALG_ID Algid, DWORD dwFlags, HCRYPTKEY *phKey);
-   WINIMPM WINBOOL WINAPI CryptDeriveKey (HCRYPTPROV hProv, ALG_ID Algid, HCRYPTHASH hBaseData, DWORD dwFlags, HCRYPTKEY *phKey);
-@@ -817,28 +836,13 @@ extern "C" {
-   WINIMPM WINBOOL WINAPI CryptDecrypt (HCRYPTKEY hKey, HCRYPTHASH hHash, WINBOOL Final, DWORD dwFlags, BYTE *pbData, DWORD *pdwDataLen);
-   WINIMPM WINBOOL WINAPI CryptCreateHash (HCRYPTPROV hProv, ALG_ID Algid, HCRYPTKEY hKey, DWORD dwFlags, HCRYPTHASH *phHash);
-   WINIMPM WINBOOL WINAPI CryptHashData (HCRYPTHASH hHash, CONST BYTE *pbData, DWORD dwDataLen, DWORD dwFlags);
--  WINIMPM WINBOOL WINAPI CryptHashSessionKey (HCRYPTHASH hHash, HCRYPTKEY hKey, DWORD dwFlags);
-   WINIMPM WINBOOL WINAPI CryptDestroyHash (HCRYPTHASH hHash);
-   WINIMPM WINBOOL WINAPI CryptSignHashA (HCRYPTHASH hHash, DWORD dwKeySpec, LPCSTR szDescription, DWORD dwFlags, BYTE *pbSignature, DWORD *pdwSigLen);
-   WINIMPM WINBOOL WINAPI CryptSignHashW (HCRYPTHASH hHash, DWORD dwKeySpec, LPCWSTR szDescription, DWORD dwFlags, BYTE *pbSignature, DWORD *pdwSigLen);
-   WINIMPM WINBOOL WINAPI CryptVerifySignatureA (HCRYPTHASH hHash, CONST BYTE *pbSignature, DWORD dwSigLen, HCRYPTKEY hPubKey, LPCSTR szDescription, DWORD dwFlags);
-   WINIMPM WINBOOL WINAPI CryptVerifySignatureW (HCRYPTHASH hHash, CONST BYTE *pbSignature, DWORD dwSigLen, HCRYPTKEY hPubKey, LPCWSTR szDescription, DWORD dwFlags);
--  WINIMPM WINBOOL WINAPI CryptSetProviderA (LPCSTR pszProvName, DWORD dwProvType);
--  WINIMPM WINBOOL WINAPI CryptSetProviderW (LPCWSTR pszProvName, DWORD dwProvType);
--  WINIMPM WINBOOL WINAPI CryptSetProviderExA (LPCSTR pszProvName, DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags);
--  WINIMPM WINBOOL WINAPI CryptSetProviderExW (LPCWSTR pszProvName, DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags);
-   WINIMPM WINBOOL WINAPI CryptGetDefaultProviderA (DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags, LPSTR pszProvName, DWORD *pcbProvName);
-   WINIMPM WINBOOL WINAPI CryptGetDefaultProviderW (DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags, LPWSTR pszProvName, DWORD *pcbProvName);
--  WINIMPM WINBOOL WINAPI CryptEnumProviderTypesA (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szTypeName, DWORD *pcbTypeName);
--  WINIMPM WINBOOL WINAPI CryptEnumProviderTypesW (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szTypeName, DWORD *pcbTypeName);
--  WINIMPM WINBOOL WINAPI CryptEnumProvidersA (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szProvName, DWORD *pcbProvName);
--  WINIMPM WINBOOL WINAPI CryptEnumProvidersW (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szProvName, DWORD *pcbProvName);
--  WINIMPM WINBOOL WINAPI CryptContextAddRef (HCRYPTPROV hProv, DWORD *pdwReserved, DWORD dwFlags);
--  WINIMPM WINBOOL WINAPI CryptDuplicateKey (HCRYPTKEY hKey, DWORD *pdwReserved, DWORD dwFlags, HCRYPTKEY *phKey);
--  WINIMPM WINBOOL WINAPI CryptDuplicateHash (HCRYPTHASH hHash, DWORD *pdwReserved, DWORD dwFlags, HCRYPTHASH *phHash);
--#if NTDDI_VERSION >= NTDDI_WS03
--  WINBOOL __cdecl GetEncSChannel (BYTE **pData, DWORD *dwDecSize);
--#endif
- #endif
- 
- #ifndef _DDK_DRIVER_
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0003-headers-enable-GetVolumePathNameW-in-Win10-UWP-build.patch deleted
=====================================
@@ -1,41 +0,0 @@
-From 25beff61340b108d6b6fc4054c9a30a6f4fea281 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Sat, 27 May 2023 12:05:37 +0200
-Subject: [PATCH 03/17] headers: enable GetVolumePathNameW in Win10 UWP builds
-
-The documentation doesn't say it's allowed, but the WIndows SDK allow it and
-the Windows App Certification as well.
-
-The official page for allowed API's also doesn't say it's allowed [1]
-but the DLL that contains it is there.
-
-[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis#apis-from-api-ms-win-core-file-l2-1-0dll
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/fileapi.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/mingw-w64-headers/include/fileapi.h b/mingw-w64-headers/include/fileapi.h
-index 8ea09f6c9..e9e0c647f 100644
---- a/mingw-w64-headers/include/fileapi.h
-+++ b/mingw-w64-headers/include/fileapi.h
-@@ -81,6 +81,7 @@ WINBASEAPI DWORD WINAPI SetFilePointer (HANDLE hFile, LONG lDistanceToMove, PLON
-   WINBASEAPI DWORD WINAPI GetFullPathNameA (LPCSTR lpFileName, DWORD nBufferLength, LPSTR lpBuffer, LPSTR *lpFilePart);
-   WINBASEAPI DWORD WINAPI GetFullPathNameW (LPCWSTR lpFileName, DWORD nBufferLength, LPWSTR lpBuffer, LPWSTR *lpFilePart);
-   WINBASEAPI DWORD WINAPI GetLogicalDrives (VOID);
-+  WINBASEAPI WINBOOL WINAPI GetVolumePathNameW (LPCWSTR lpszFileName, LPWSTR lpszVolumePathName, DWORD cchBufferLength);
- #define FindFirstFile __MINGW_NAME_AW(FindFirstFile)
- #define GetDiskFreeSpace __MINGW_NAME_AW(GetDiskFreeSpace)
- #define GetDriveType __MINGW_NAME_AW(GetDriveType)
-@@ -89,7 +90,6 @@ WINBASEAPI DWORD WINAPI SetFilePointer (HANDLE hFile, LONG lDistanceToMove, PLON
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-   WINBASEAPI DWORD WINAPI GetLogicalDriveStringsW (DWORD nBufferLength, LPWSTR lpBuffer);
-   WINBASEAPI DWORD WINAPI GetShortPathNameW (LPCWSTR lpszLongPath, LPWSTR lpszShortPath, DWORD cchBuffer);
--  WINBASEAPI WINBOOL WINAPI GetVolumePathNameW (LPCWSTR lpszFileName, LPWSTR lpszVolumePathName, DWORD cchBufferLength);
-   WINBASEAPI DWORD WINAPI QueryDosDeviceW (LPCWSTR lpDeviceName, LPWSTR lpTargetPath, DWORD ucchMax);
-   WINBASEAPI WINBOOL WINAPI ReadFileScatter (HANDLE hFile, FILE_SEGMENT_ELEMENT aSegmentArray[], DWORD nNumberOfBytesToRead, LPDWORD lpReserved, LPOVERLAPPED lpOverlapped);
-   WINBASEAPI WINBOOL WINAPI SetFileValidData (HANDLE hFile, LONGLONG ValidDataLength);
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0004-headers-allow-more-wincrypt-API-s-in-Win10-19H1-UWP-.patch deleted
=====================================
@@ -1,60 +0,0 @@
-From 920f2e29b1a3a296f6863bcd26179094aa94535a Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 22 Jun 2023 10:53:22 +0200
-Subject: [PATCH 4/5] headers: allow more wincrypt API's in Win10 19H1 UWP
- builds
-
-The API's are allowed in windowsapp since 19H1 and are allowed by the WACK.
-Only the MS header don't specify it properly for WINAPI_FAMILY_PC_APP
-but since the DLL is on all WINAPI_FAMILY_DESKTOP_APP and allowed by the
-WACK this always works.
----
- mingw-w64-headers/include/wincrypt.h | 14 +++++++++-----
- 1 file changed, 9 insertions(+), 5 deletions(-)
-
-diff --git a/mingw-w64-headers/include/wincrypt.h b/mingw-w64-headers/include/wincrypt.h
-index 4bcc3ff70..475ef7883 100644
---- a/mingw-w64-headers/include/wincrypt.h
-+++ b/mingw-w64-headers/include/wincrypt.h
-@@ -785,22 +785,17 @@ extern "C" {
-   WINIMPM WINBOOL WINAPI CryptReleaseContext (HCRYPTPROV hProv, DWORD dwFlags);
- #endif
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
--#define CryptEnumProviders __MINGW_NAME_AW(CryptEnumProviders)
- #define CryptEnumProviderTypes __MINGW_NAME_AW(CryptEnumProviderTypes)
- #define CryptSetProvider __MINGW_NAME_AW(CryptSetProvider)
- #define CryptSetProviderEx __MINGW_NAME_AW(CryptSetProviderEx)
- 
-   WINIMPM WINBOOL WINAPI CryptHashSessionKey (HCRYPTHASH hHash, HCRYPTKEY hKey, DWORD dwFlags);
-   WINIMPM WINBOOL WINAPI CryptSetProviderA (LPCSTR pszProvName, DWORD dwProvType);
--  WINIMPM WINBOOL WINAPI CryptSetProviderW (LPCWSTR pszProvName, DWORD dwProvType);
-   WINIMPM WINBOOL WINAPI CryptSetProviderExA (LPCSTR pszProvName, DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags);
-   WINIMPM WINBOOL WINAPI CryptSetProviderExW (LPCWSTR pszProvName, DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags);
-   WINIMPM WINBOOL WINAPI CryptEnumProviderTypesA (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szTypeName, DWORD *pcbTypeName);
-   WINIMPM WINBOOL WINAPI CryptEnumProviderTypesW (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szTypeName, DWORD *pcbTypeName);
--  WINIMPM WINBOOL WINAPI CryptEnumProvidersA (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szProvName, DWORD *pcbProvName);
--  WINIMPM WINBOOL WINAPI CryptEnumProvidersW (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szProvName, DWORD *pcbProvName);
-   WINIMPM WINBOOL WINAPI CryptContextAddRef (HCRYPTPROV hProv, DWORD *pdwReserved, DWORD dwFlags);
--  WINIMPM WINBOOL WINAPI CryptDuplicateKey (HCRYPTKEY hKey, DWORD *pdwReserved, DWORD dwFlags, HCRYPTKEY *phKey);
-   WINIMPM WINBOOL WINAPI CryptDuplicateHash (HCRYPTHASH hHash, DWORD *pdwReserved, DWORD dwFlags, HCRYPTHASH *phHash);
- #if NTDDI_VERSION >= NTDDI_WS03
-   WINBOOL __cdecl GetEncSChannel (BYTE **pData, DWORD *dwDecSize);
-@@ -845,6 +840,15 @@ extern "C" {
-   WINIMPM WINBOOL WINAPI CryptGetDefaultProviderW (DWORD dwProvType, DWORD *pdwReserved, DWORD dwFlags, LPWSTR pszProvName, DWORD *pcbProvName);
- #endif
- 
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
-+  WINIMPM WINBOOL WINAPI CryptDuplicateKey (HCRYPTKEY hKey, DWORD *pdwReserved, DWORD dwFlags, HCRYPTKEY *phKey);
-+  WINIMPM WINBOOL WINAPI CryptEnumProvidersA (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPSTR szProvName, DWORD *pcbProvName);
-+  WINIMPM WINBOOL WINAPI CryptEnumProvidersW (DWORD dwIndex, DWORD *pdwReserved, DWORD dwFlags, DWORD *pdwProvType, LPWSTR szProvName, DWORD *pcbProvName);
-+  WINIMPM WINBOOL WINAPI CryptSetProviderW (LPCWSTR pszProvName, DWORD dwProvType);
-+
-+#define CryptEnumProviders __MINGW_NAME_AW(CryptEnumProviders)
-+#endif
-+
- #ifndef _DDK_DRIVER_
-   typedef ULONG_PTR HCRYPTPROV_OR_NCRYPT_KEY_HANDLE;
-   typedef ULONG_PTR HCRYPTPROV_LEGACY;
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0004-headers-enable-GET_MODULE_HANDLE_EX_xxx-defines-in-U.patch deleted
=====================================
@@ -1,34 +0,0 @@
-From 0ed84b9108a3a13dd7a7fb881ff1e4e82d6b19f1 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Wed, 31 May 2023 07:44:13 +0200
-Subject: [PATCH 04/17] headers: enable GET_MODULE_HANDLE_EX_xxx defines in UWP
- builds
-
-It's available in the Windows 11 SDK for all builds targeting FAMILY_APP and more.
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/libloaderapi.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/mingw-w64-headers/include/libloaderapi.h b/mingw-w64-headers/include/libloaderapi.h
-index d4c82ef8c..00070da2e 100644
---- a/mingw-w64-headers/include/libloaderapi.h
-+++ b/mingw-w64-headers/include/libloaderapi.h
-@@ -79,11 +79,13 @@ extern "C" {
- #if (NTDDI_VERSION >= NTDDI_WIN10_RS2)
- #define LOAD_LIBRARY_OS_INTEGRITY_CONTINUITY 0x00008000
- #endif
-+#endif /* WINAPI_PARTITION_DESKTOP */
- 
- #define GET_MODULE_HANDLE_EX_FLAG_PIN (0x1)
- #define GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT (0x2)
- #define GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS (0x4)
- 
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
- #define ENUMRESLANGPROC __MINGW_NAME_AW(ENUMRESLANGPROC)
- #define ENUMRESNAMEPROC __MINGW_NAME_AW(ENUMRESNAMEPROC)
- #define ENUMRESTYPEPROC __MINGW_NAME_AW(ENUMRESTYPEPROC)
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0005-crt-use-wincrypt-API-from-windowsapp-in-Windows-10.patch deleted
=====================================
@@ -1,108 +0,0 @@
-From 92d8233a063e7170c234bdfc8409689f15150d83 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 22 Jun 2023 09:01:28 +0200
-Subject: [PATCH 5/5] crt: use wincrypt API from windowsapp in Windows 10
-
-The hidden API are found in windowsapp since the RS4/19H1 SDK. They are
-also allowed by the WACK in api-ms-win-security-cryptoapi-l1-1-0.
-That DLL has been on all Windows 10 versions [1].
-
-It's better to use the real API than using CCryptography winrt API just for
-these calls.
-
-Crypto.c is kept in the old winstorecompat when targetting Windows 8.
-
-Apps targetting UWP before 19H1 and using CryptGenRandom may not work
-if api-ms-win-security-cryptoapi-l1-1-0.dll on older Windows doesn't
-contain the entry.
-
-[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis#apis-from-api-ms-win-security-cryptoapi-l1-1-0dll
----
- .../lib-common/api-ms-win-security-cryptoapi-l1-1-0.def  | 9 ++++-----
- .../lib32/api-ms-win-security-cryptoapi-l1-1-0.def       | 9 ++++-----
- mingw-w64-libraries/winstorecompat/Makefile.am           | 1 -
- 3 files changed, 8 insertions(+), 11 deletions(-)
-
-diff --git a/mingw-w64-crt/lib-common/api-ms-win-security-cryptoapi-l1-1-0.def b/mingw-w64-crt/lib-common/api-ms-win-security-cryptoapi-l1-1-0.def
-index 93bdb91e6..ebeeda2c5 100644
---- a/mingw-w64-crt/lib-common/api-ms-win-security-cryptoapi-l1-1-0.def
-+++ b/mingw-w64-crt/lib-common/api-ms-win-security-cryptoapi-l1-1-0.def
-@@ -2,9 +2,8 @@ LIBRARY api-ms-win-security-cryptoapi-l1-1-0
- 
- EXPORTS
- 
--; Implemented in windowsappcompat
--;CryptAcquireContextA
--;CryptAcquireContextW
-+CryptAcquireContextA
-+CryptAcquireContextW
- CryptCreateHash
- CryptDecrypt
- CryptDeriveKey
-@@ -16,7 +15,7 @@ CryptEnumProvidersA
- CryptEnumProvidersW
- CryptExportKey
- CryptGenKey
--;CryptGenRandom
-+CryptGenRandom
- CryptGetDefaultProviderA
- CryptGetDefaultProviderW
- CryptGetHashParam
-@@ -25,7 +24,7 @@ CryptGetProvParam
- CryptGetUserKey
- CryptHashData
- CryptImportKey
--;CryptReleaseContext
-+CryptReleaseContext
- CryptSetHashParam
- CryptSetKeyParam
- CryptSetProviderW
-diff --git a/mingw-w64-crt/lib32/api-ms-win-security-cryptoapi-l1-1-0.def b/mingw-w64-crt/lib32/api-ms-win-security-cryptoapi-l1-1-0.def
-index e175547ec..2590c143c 100644
---- a/mingw-w64-crt/lib32/api-ms-win-security-cryptoapi-l1-1-0.def
-+++ b/mingw-w64-crt/lib32/api-ms-win-security-cryptoapi-l1-1-0.def
-@@ -2,9 +2,8 @@ LIBRARY api-ms-win-security-cryptoapi-l1-1-0
- 
- EXPORTS
- 
--; Implemented in windowsappcompat
--;CryptAcquireContextA at 20
--;CryptAcquireContextW at 20
-+CryptAcquireContextA at 20
-+CryptAcquireContextW at 20
- CryptCreateHash at 20
- CryptDecrypt at 24
- CryptDeriveKey at 20
-@@ -16,7 +15,7 @@ CryptEnumProvidersA at 24
- CryptEnumProvidersW at 24
- CryptExportKey at 24
- CryptGenKey at 16
--;CryptGenRandom at 12
-+CryptGenRandom at 12
- CryptGetDefaultProviderA at 20
- CryptGetDefaultProviderW at 20
- CryptGetHashParam at 20
-@@ -25,7 +24,7 @@ CryptGetProvParam at 20
- CryptGetUserKey at 12
- CryptHashData at 16
- CryptImportKey at 24
--;CryptReleaseContext at 8
-+CryptReleaseContext at 8
- CryptSetHashParam at 16
- CryptSetKeyParam at 16
- CryptSetProviderW at 8
-diff --git a/mingw-w64-libraries/winstorecompat/Makefile.am b/mingw-w64-libraries/winstorecompat/Makefile.am
-index 8b3312312..469b28b19 100644
---- a/mingw-w64-libraries/winstorecompat/Makefile.am
-+++ b/mingw-w64-libraries/winstorecompat/Makefile.am
-@@ -59,7 +59,6 @@ libwindowsappcompat_a_SOURCES = \
-   src/GetFileSize.c \
-   src/SHGetFolderPathW.c \
-   src/QueueTimer.c \
--  src/Crypto.c \
-   src/GetStartupInfo.c \
-   src/EnumProcessModules.c \
-   src/RtlAddFunctionTable.c \
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0005-headers-enable-CreateHardLinkW-in-Win10-19H1-UWP-bui.patch deleted
=====================================
@@ -1,42 +0,0 @@
-From ae87f01321d98012576270bd85ee59fe2096fb92 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 1 Jun 2023 15:27:53 +0200
-Subject: [PATCH 05/17] headers: enable CreateHardLinkW in Win10 19H1 UWP
- builds
-
-The documentation doesn't say it's allowed but they are allowed by the
-Windows Application Certification Kit and the 18362 Windows SDK.
-
-It is not allowed in older SDK. It won't compile or won't link.
-The target DLL [1] will likely not have the function, so it should not
-be used when targeting older Windows 10 versions in UWP mode.
-
-We already have api-ms-win-core-file-l2-1-0 in mincore and windowsapp.
-
-[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis#apis-from-api-ms-win-core-file-l2-1-0dll
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/winbase.h | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/mingw-w64-headers/include/winbase.h b/mingw-w64-headers/include/winbase.h
-index 82c8b7cc3..c6c34ed3b 100644
---- a/mingw-w64-headers/include/winbase.h
-+++ b/mingw-w64-headers/include/winbase.h
-@@ -2464,9 +2464,11 @@ typedef enum FILE_FLUSH_MODE {
-   WINBASEAPI WINBOOL WINAPI ReplaceFileA (LPCSTR lpReplacedFileName, LPCSTR lpReplacementFileName, LPCSTR lpBackupFileName, DWORD dwReplaceFlags, LPVOID lpExclude, LPVOID lpReserved);
-   WINBASEAPI WINBOOL WINAPI ReplaceFileW (LPCWSTR lpReplacedFileName, LPCWSTR lpReplacementFileName, LPCWSTR lpBackupFileName, DWORD dwReplaceFlags, LPVOID lpExclude, LPVOID lpReserved);
- #endif
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
-+  WINBASEAPI WINBOOL WINAPI CreateHardLinkW (LPCWSTR lpFileName, LPCWSTR lpExistingFileName, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
-+#endif
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-   WINBASEAPI WINBOOL WINAPI CreateHardLinkA (LPCSTR lpFileName, LPCSTR lpExistingFileName, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
--  WINBASEAPI WINBOOL WINAPI CreateHardLinkW (LPCWSTR lpFileName, LPCWSTR lpExistingFileName, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
- 
- #define ReplaceFile __MINGW_NAME_AW(ReplaceFile)
- #define CreateHardLink __MINGW_NAME_AW(CreateHardLink)
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0006-headers-enable-more-module-API-in-Win10-19H1-UWP-bui.patch deleted
=====================================
@@ -1,118 +0,0 @@
-From 0fbadbc7253a0376bfccd13a150d7f422ed63109 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 1 Jun 2023 15:28:53 +0200
-Subject: [PATCH 06/17] headers: enable more module API in Win10 19H1 UWP
- builds
-
-The documentation doesn't say it's allowed but they are allowed by the
-Windows Application Certification Kit and the 18362 Windows SDK.
-
-It is not allowed in older SDK. It won't compile or won't link.
-The target DLL [1] will likely not have the function, so it should not
-be used when targeting older Windows 10 versions in UWP mode.
-
-We already have api-ms-win-core-libraryloader-l1-2-0 in mincore and windowsapp.
-
-[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis#apis-from-api-ms-win-core-libraryloader-l1-2-0dll
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/libloaderapi.h | 44 ++++++++++++++----------
- 1 file changed, 26 insertions(+), 18 deletions(-)
-
-diff --git a/mingw-w64-headers/include/libloaderapi.h b/mingw-w64-headers/include/libloaderapi.h
-index 00070da2e..25bacfd29 100644
---- a/mingw-w64-headers/include/libloaderapi.h
-+++ b/mingw-w64-headers/include/libloaderapi.h
-@@ -37,11 +37,6 @@ extern "C" {
-   typedef FARPROC ENUMRESLANGPROCW;
- #endif
- 
--#ifndef RC_INVOKED
--  typedef WINBOOL (WINAPI *PGET_MODULE_HANDLE_EXA) (DWORD dwFlags, LPCSTR lpModuleName, HMODULE *phModule);
--  typedef WINBOOL (WINAPI *PGET_MODULE_HANDLE_EXW) (DWORD dwFlags, LPCWSTR lpModuleName, HMODULE *phModule);
--#endif
--
-   typedef PVOID DLL_DIRECTORY_COOKIE, *PDLL_DIRECTORY_COOKIE;
- 
- #define FIND_RESOURCE_DIRECTORY_TYPES (0x0100)
-@@ -92,31 +87,21 @@ extern "C" {
- 
-   WINBASEAPI WINBOOL WINAPI EnumResourceNamesW(HMODULE hModule, LPCWSTR lpType, ENUMRESNAMEPROCW lpEnumFunc, LONG_PTR lParam);
-   WINBASEAPI HRSRC WINAPI FindResourceW(HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType);
--  WINBASEAPI HRSRC WINAPI FindResourceExW (HMODULE hModule, LPCWSTR lpType, LPCWSTR lpName, WORD wLanguage);
-   WINBASEAPI WINBOOL WINAPI FreeResource (HGLOBAL hResData);
--  WINBASEAPI HMODULE WINAPI LoadLibraryExA (LPCSTR lpLibFileName, HANDLE hFile, DWORD dwFlags);
--  WINBASEAPI HMODULE WINAPI LoadLibraryExW (LPCWSTR lpLibFileName, HANDLE hFile, DWORD dwFlags);
-   WINBASEAPI HGLOBAL WINAPI LoadResource (HMODULE hModule, HRSRC hResInfo);
-   WINUSERAPI int WINAPI LoadStringA (HINSTANCE hInstance, UINT uID, LPSTR lpBuffer, int cchBufferMax);
-   WINUSERAPI int WINAPI LoadStringW (HINSTANCE hInstance, UINT uID, LPWSTR lpBuffer, int cchBufferMax);
-   WINBASEAPI LPVOID WINAPI LockResource (HGLOBAL hResData);
--  WINBASEAPI DWORD WINAPI SizeofResource (HMODULE hModule, HRSRC hResInfo);
-   WINBASEAPI DLL_DIRECTORY_COOKIE WINAPI AddDllDirectory (PCWSTR NewDirectory);
-   WINBASEAPI WINBOOL WINAPI RemoveDllDirectory (DLL_DIRECTORY_COOKIE Cookie);
-   WINBASEAPI WINBOOL WINAPI SetDefaultDllDirectories (DWORD DirectoryFlags);
--  WINBASEAPI WINBOOL WINAPI GetModuleHandleExA (DWORD dwFlags, LPCSTR lpModuleName, HMODULE *phModule);
--  WINBASEAPI WINBOOL WINAPI GetModuleHandleExW (DWORD dwFlags, LPCWSTR lpModuleName, HMODULE *phModule);
- 
- #ifdef UNICODE
- #define EnumResourceNames EnumResourceNamesW
- #define FindResource FindResourceW
--#define FindResourceEx FindResourceExW
- #endif
- 
--#define PGET_MODULE_HANDLE_EX __MINGW_NAME_AW(PGET_MODULE_HANDLE_EX)
- #define LoadString __MINGW_NAME_AW(LoadString)
--#define GetModuleHandleEx __MINGW_NAME_AW(GetModuleHandleEx)
--#define LoadLibraryEx __MINGW_NAME_AW(LoadLibraryEx)
- 
- #define EnumResourceLanguages __MINGW_NAME_AW(EnumResourceLanguages)
-   WINBASEAPI WINBOOL WINAPI EnumResourceLanguagesA(HMODULE hModule,LPCSTR lpType,LPCSTR lpName,ENUMRESLANGPROCA lpEnumFunc,LONG_PTR lParam);
-@@ -138,11 +123,8 @@ extern "C" {
- #endif
- #endif
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || defined(WINSTORECOMPAT)
--WINBASEAPI HMODULE WINAPI GetModuleHandleA (LPCSTR lpModuleName);
--WINBASEAPI HMODULE WINAPI GetModuleHandleW (LPCWSTR lpModuleName);
- WINBASEAPI HMODULE WINAPI LoadLibraryA(LPCSTR lpLibFileName);
- WINBASEAPI HMODULE WINAPI LoadLibraryW(LPCWSTR lpLibFileName);
--#define GetModuleHandle __MINGW_NAME_AW(GetModuleHandle)
- #define LoadLibrary __MINGW_NAME_AW(LoadLibrary)
- #endif
- 
-@@ -178,6 +160,32 @@ typedef const REDIRECTION_DESCRIPTOR *PCREDIRECTION_DESCRIPTOR;
- #endif
- #endif
- 
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
-+  WINBASEAPI HRSRC WINAPI FindResourceExW (HMODULE hModule, LPCWSTR lpType, LPCWSTR lpName, WORD wLanguage);
-+  WINBASEAPI HMODULE WINAPI GetModuleHandleA (LPCSTR lpModuleName);
-+  WINBASEAPI HMODULE WINAPI GetModuleHandleW (LPCWSTR lpModuleName);
-+  WINBASEAPI WINBOOL WINAPI GetModuleHandleExA (DWORD dwFlags, LPCSTR lpModuleName, HMODULE *phModule);
-+  WINBASEAPI WINBOOL WINAPI GetModuleHandleExW (DWORD dwFlags, LPCWSTR lpModuleName, HMODULE *phModule);
-+  WINBASEAPI HMODULE WINAPI LoadLibraryExA (LPCSTR lpLibFileName, HANDLE hFile, DWORD dwFlags);
-+  WINBASEAPI HMODULE WINAPI LoadLibraryExW (LPCWSTR lpLibFileName, HANDLE hFile, DWORD dwFlags);
-+  WINBASEAPI DWORD WINAPI SizeofResource (HMODULE hModule, HRSRC hResInfo);
-+
-+#ifdef UNICODE
-+#define FindResourceEx FindResourceExW
-+#endif
-+
-+#define GetModuleHandle __MINGW_NAME_AW(GetModuleHandle)
-+#define GetModuleHandleEx __MINGW_NAME_AW(GetModuleHandleEx)
-+#define LoadLibraryEx __MINGW_NAME_AW(LoadLibraryEx)
-+
-+#ifndef RC_INVOKED
-+  typedef WINBOOL (WINAPI *PGET_MODULE_HANDLE_EXA) (DWORD dwFlags, LPCSTR lpModuleName, HMODULE *phModule);
-+  typedef WINBOOL (WINAPI *PGET_MODULE_HANDLE_EXW) (DWORD dwFlags, LPCWSTR lpModuleName, HMODULE *phModule);
-+#endif
-+
-+#define PGET_MODULE_HANDLE_EX __MINGW_NAME_AW(PGET_MODULE_HANDLE_EX)
-+#endif
-+
- #ifdef __cplusplus
- }
- #endif
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0007-crt-add-api-ms-core-registry-def-files.patch deleted
=====================================
@@ -1,145 +0,0 @@
-From 71fabf70d06913e8e8eafd050ff9f177eb53f3c6 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 1 Jun 2023 15:30:03 +0200
-Subject: [PATCH 07/17] crt: add api-ms-core-registry-* def files
-
-These are needed to enable the registry API calls available in UWP.
-
-Add the target DLL to windowsapp, but not mincore (Win8) where it doesn't
-exist.
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-crt/Makefile.in                     |  2 +
- .../api-ms-win-core-registry-l1-1-0.def       | 47 +++++++++++++++++++
- .../api-ms-win-core-registry-l2-1-0.def       | 37 +++++++++++++++
- mingw-w64-crt/lib-common/windowsapp.mri       |  2 +
- 4 files changed, 88 insertions(+)
- create mode 100644 mingw-w64-crt/lib-common/api-ms-win-core-registry-l1-1-0.def
- create mode 100644 mingw-w64-crt/lib-common/api-ms-win-core-registry-l2-1-0.def
-
-diff --git a/mingw-w64-crt/Makefile.in b/mingw-w64-crt/Makefile.in
-index 0454ecec3..cff260421 100644
---- a/mingw-w64-crt/Makefile.in
-+++ b/mingw-w64-crt/Makefile.in
-@@ -2237,6 +2237,8 @@ endif
- 		%/libapi-ms-win-core-profile-l1-1-0.a \
- 		%/libapi-ms-win-core-realtime-l1-1-0.a \
- 		%/libapi-ms-win-core-realtime-l1-1-1.a \
-+		%/libapi-ms-win-core-registry-l1-1-0.a \
-+		%/libapi-ms-win-core-registry-l2-1-0.a \
- 		%/libapi-ms-win-core-rtlsupport-l1-2-0.a \
- 		%/libapi-ms-win-core-string-l1-1-0.a \
- 		%/libapi-ms-win-core-synch-ansi-l1-1-0.a \
-diff --git a/mingw-w64-crt/lib-common/api-ms-win-core-registry-l1-1-0.def b/mingw-w64-crt/lib-common/api-ms-win-core-registry-l1-1-0.def
-new file mode 100644
-index 000000000..2f01992ed
---- /dev/null
-+++ b/mingw-w64-crt/lib-common/api-ms-win-core-registry-l1-1-0.def
-@@ -0,0 +1,47 @@
-+LIBRARY api-ms-win-core-registry-l1-1-0
-+
-+EXPORTS
-+
-+RegCloseKey
-+RegCopyTreeW
-+RegCreateKeyExA
-+RegCreateKeyExW
-+RegDeleteKeyExA
-+RegDeleteKeyExW
-+RegDeleteTreeA
-+RegDeleteTreeW
-+RegDeleteValueA
-+RegDeleteValueW
-+RegDisablePredefinedCacheEx
-+RegEnumKeyExA
-+RegEnumKeyExW
-+RegEnumValueA
-+RegEnumValueW
-+RegFlushKey
-+RegGetKeySecurity
-+RegGetValueA
-+RegGetValueW
-+RegLoadAppKeyA
-+RegLoadAppKeyW
-+RegLoadKeyA
-+RegLoadKeyW
-+RegLoadMUIStringA
-+RegLoadMUIStringW
-+RegNotifyChangeKeyValue
-+RegOpenCurrentUser
-+RegOpenKeyExA
-+RegOpenKeyExW
-+RegOpenUserClassesRoot
-+RegQueryInfoKeyA
-+RegQueryInfoKeyW
-+RegQueryValueExA
-+RegQueryValueExW
-+RegRestoreKeyA
-+RegRestoreKeyW
-+RegSaveKeyExA
-+RegSaveKeyExW
-+RegSetKeySecurity
-+RegSetValueExA
-+RegSetValueExW
-+RegUnLoadKeyA
-+RegUnLoadKeyW
-diff --git a/mingw-w64-crt/lib-common/api-ms-win-core-registry-l2-1-0.def b/mingw-w64-crt/lib-common/api-ms-win-core-registry-l2-1-0.def
-new file mode 100644
-index 000000000..b35c308c4
---- /dev/null
-+++ b/mingw-w64-crt/lib-common/api-ms-win-core-registry-l2-1-0.def
-@@ -0,0 +1,37 @@
-+LIBRARY api-ms-win-core-registry-l2-1-0
-+
-+EXPORTS
-+
-+RegConnectRegistryA
-+RegConnectRegistryW
-+RegCopyTreeA
-+RegCreateKeyA
-+RegCreateKeyTransactedA
-+RegCreateKeyTransactedW
-+RegCreateKeyW
-+RegDeleteKeyA
-+RegDeleteKeyTransactedA
-+RegDeleteKeyTransactedW
-+RegDeleteKeyValueA
-+RegDeleteKeyValueW
-+RegDeleteKeyW
-+RegDisablePredefinedCache
-+RegEnumKeyA
-+RegEnumKeyW
-+RegOpenKeyA
-+RegOpenKeyTransactedA
-+RegOpenKeyTransactedW
-+RegOpenKeyW
-+RegOverridePredefKey
-+RegQueryMultipleValuesA
-+RegQueryMultipleValuesW
-+RegQueryValueA
-+RegQueryValueW
-+RegReplaceKeyA
-+RegReplaceKeyW
-+RegSaveKeyA
-+RegSaveKeyW
-+RegSetKeyValueA
-+RegSetKeyValueW
-+RegSetValueA
-+RegSetValueW
-diff --git a/mingw-w64-crt/lib-common/windowsapp.mri b/mingw-w64-crt/lib-common/windowsapp.mri
-index 8e0e3d888..2496280a5 100644
---- a/mingw-w64-crt/lib-common/windowsapp.mri
-+++ b/mingw-w64-crt/lib-common/windowsapp.mri
-@@ -51,6 +51,8 @@ ADDLIB libapi-ms-win-core-psapi-ansi-l1-1-0.a
- ADDLIB libapi-ms-win-core-profile-l1-1-0.a
- ADDLIB libapi-ms-win-core-realtime-l1-1-0.a
- ADDLIB libapi-ms-win-core-realtime-l1-1-1.a
-+ADDLIB libapi-ms-win-core-registry-l1-1-0.a
-+ADDLIB libapi-ms-win-core-registry-l2-1-0.a
- ADDLIB libapi-ms-win-core-rtlsupport-l1-2-0.a
- ADDLIB libapi-ms-win-core-string-l1-1-0.a
- ADDLIB libapi-ms-win-core-synch-ansi-l1-1-0.a
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0008-headers-enable-some-Registry-API-calls-in-Win10-19H1.patch deleted
=====================================
@@ -1,188 +0,0 @@
-From f17aabd6ad7db49419950cbb456c8ecf64eba62a Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 1 Jun 2023 15:30:04 +0200
-Subject: [PATCH 08/17] headers: enable some Registry API calls in Win10 19H1
- UWP builds
-
-The documentation doesn't say it's allowed but they are allowed by the
-Windows Application Certification Kit and the 18362 Windows SDK.
-
-It is not allowed in older SDK. It won't compile or won't link.
-The target DLL api-ms-win-core-registry-l1-1-0 will likely not have the
-function, so it should not be used when targeting older Windows 10 versions
-in UWP mode.
-
-We now have api-ms-win-core-registry-l1-1-0 in windowsapp.
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/winreg.h | 92 ++++++++++++++++--------------
- 1 file changed, 49 insertions(+), 43 deletions(-)
-
-diff --git a/mingw-w64-headers/include/winreg.h b/mingw-w64-headers/include/winreg.h
-index dab9324e8..2f340fa92 100644
---- a/mingw-w64-headers/include/winreg.h
-+++ b/mingw-w64-headers/include/winreg.h
-@@ -131,31 +131,20 @@ extern "C" {
- #define RegConnectRegistry __MINGW_NAME_AW(RegConnectRegistry)
- #define RegConnectRegistryEx __MINGW_NAME_AW(RegConnectRegistryEx)
- #define RegCreateKey __MINGW_NAME_AW(RegCreateKey)
--#define RegCreateKeyEx __MINGW_NAME_AW(RegCreateKeyEx)
- #define RegDeleteKey __MINGW_NAME_AW(RegDeleteKey)
--#define RegDeleteKeyEx __MINGW_NAME_AW(RegDeleteKeyEx)
--#define RegDeleteValue __MINGW_NAME_AW(RegDeleteValue)
- #define RegEnumKey __MINGW_NAME_AW(RegEnumKey)
--#define RegEnumKeyEx __MINGW_NAME_AW(RegEnumKeyEx)
--#define RegEnumValue __MINGW_NAME_AW(RegEnumValue)
- #define RegLoadKey __MINGW_NAME_AW(RegLoadKey)
- #define RegOpenKey __MINGW_NAME_AW(RegOpenKey)
--#define RegOpenKeyEx __MINGW_NAME_AW(RegOpenKeyEx)
--#define RegQueryInfoKey __MINGW_NAME_AW(RegQueryInfoKey)
- #define RegQueryValue __MINGW_NAME_AW(RegQueryValue)
- #define RegQueryMultipleValues __MINGW_NAME_AW(RegQueryMultipleValues)
--#define RegQueryValueEx __MINGW_NAME_AW(RegQueryValueEx)
- #define RegReplaceKey __MINGW_NAME_AW(RegReplaceKey)
- #define RegRestoreKey __MINGW_NAME_AW(RegRestoreKey)
- #define RegSaveKey __MINGW_NAME_AW(RegSaveKey)
- #define RegSetValue __MINGW_NAME_AW(RegSetValue)
--#define RegSetValueEx __MINGW_NAME_AW(RegSetValueEx)
- #define RegUnLoadKey __MINGW_NAME_AW(RegUnLoadKey)
--#define RegGetValue __MINGW_NAME_AW(RegGetValue)
- #define InitiateSystemShutdown __MINGW_NAME_AW(InitiateSystemShutdown)
- #define AbortSystemShutdown __MINGW_NAME_AW(AbortSystemShutdown)
- 
--  WINADVAPI LONG WINAPI RegCloseKey(HKEY hKey);
-   WINADVAPI LONG WINAPI RegOverridePredefKey(HKEY hKey,HKEY hNewHKey);
-   WINADVAPI LONG WINAPI RegOpenUserClassesRoot(HANDLE hToken,DWORD dwOptions,REGSAM samDesired,PHKEY phkResult);
-   WINADVAPI LONG WINAPI RegOpenCurrentUser(REGSAM samDesired,PHKEY phkResult);
-@@ -167,40 +156,23 @@ extern "C" {
-   WINADVAPI LONG WINAPI RegConnectRegistryExW(LPCWSTR lpMachineName,HKEY hKey,ULONG Flags,PHKEY phkResult);
-   WINADVAPI LONG WINAPI RegCreateKeyA(HKEY hKey,LPCSTR lpSubKey,PHKEY phkResult);
-   WINADVAPI LONG WINAPI RegCreateKeyW(HKEY hKey,LPCWSTR lpSubKey,PHKEY phkResult);
--  WINADVAPI LONG WINAPI RegCreateKeyExA(HKEY hKey,LPCSTR lpSubKey,DWORD Reserved,LPSTR lpClass,DWORD dwOptions,REGSAM samDesired,LPSECURITY_ATTRIBUTES lpSecurityAttributes,PHKEY phkResult,LPDWORD lpdwDisposition);
--  WINADVAPI LONG WINAPI RegCreateKeyExW(HKEY hKey,LPCWSTR lpSubKey,DWORD Reserved,LPWSTR lpClass,DWORD dwOptions,REGSAM samDesired,LPSECURITY_ATTRIBUTES lpSecurityAttributes,PHKEY phkResult,LPDWORD lpdwDisposition);
-   WINADVAPI LONG WINAPI RegDeleteKeyA(HKEY hKey,LPCSTR lpSubKey);
-   WINADVAPI LONG WINAPI RegDeleteKeyW(HKEY hKey,LPCWSTR lpSubKey);
--  WINADVAPI LONG WINAPI RegDeleteKeyExA(HKEY hKey,LPCSTR lpSubKey,REGSAM samDesired,DWORD Reserved);
--  WINADVAPI LONG WINAPI RegDeleteKeyExW(HKEY hKey,LPCWSTR lpSubKey,REGSAM samDesired,DWORD Reserved);
-   WINADVAPI LONG WINAPI RegDisableReflectionKey(HKEY hBase);
-   WINADVAPI LONG WINAPI RegEnableReflectionKey(HKEY hBase);
-   WINADVAPI LONG WINAPI RegQueryReflectionKey(HKEY hBase,WINBOOL *bIsReflectionDisabled);
--  WINADVAPI LONG WINAPI RegDeleteValueA(HKEY hKey,LPCSTR lpValueName);
--  WINADVAPI LONG WINAPI RegDeleteValueW(HKEY hKey,LPCWSTR lpValueName);
-   WINADVAPI LONG WINAPI RegEnumKeyA(HKEY hKey,DWORD dwIndex,LPSTR lpName,DWORD cchName);
-   WINADVAPI LONG WINAPI RegEnumKeyW(HKEY hKey,DWORD dwIndex,LPWSTR lpName,DWORD cchName);
--  WINADVAPI LONG WINAPI RegEnumKeyExA(HKEY hKey,DWORD dwIndex,LPSTR lpName,LPDWORD lpcchName,LPDWORD lpReserved,LPSTR lpClass,LPDWORD lpcchClass,PFILETIME lpftLastWriteTime);
--  WINADVAPI LONG WINAPI RegEnumKeyExW(HKEY hKey,DWORD dwIndex,LPWSTR lpName,LPDWORD lpcchName,LPDWORD lpReserved,LPWSTR lpClass,LPDWORD lpcchClass,PFILETIME lpftLastWriteTime);
--  WINADVAPI LONG WINAPI RegEnumValueA(HKEY hKey,DWORD dwIndex,LPSTR lpValueName,LPDWORD lpcchValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
--  WINADVAPI LONG WINAPI RegEnumValueW(HKEY hKey,DWORD dwIndex,LPWSTR lpValueName,LPDWORD lpcchValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
-   WINADVAPI LONG WINAPI RegFlushKey(HKEY hKey);
-   WINADVAPI LONG WINAPI RegGetKeySecurity(HKEY hKey,SECURITY_INFORMATION SecurityInformation,PSECURITY_DESCRIPTOR pSecurityDescriptor,LPDWORD lpcbSecurityDescriptor);
-   WINADVAPI LONG WINAPI RegLoadKeyA(HKEY hKey,LPCSTR lpSubKey,LPCSTR lpFile);
-   WINADVAPI LONG WINAPI RegLoadKeyW(HKEY hKey,LPCWSTR lpSubKey,LPCWSTR lpFile);
--  WINADVAPI LONG WINAPI RegNotifyChangeKeyValue(HKEY hKey,WINBOOL bWatchSubtree,DWORD dwNotifyFilter,HANDLE hEvent,WINBOOL fAsynchronous);
-   WINADVAPI LONG WINAPI RegOpenKeyA(HKEY hKey,LPCSTR lpSubKey,PHKEY phkResult);
-   WINADVAPI LONG WINAPI RegOpenKeyW(HKEY hKey,LPCWSTR lpSubKey,PHKEY phkResult);
--  WINADVAPI LONG WINAPI RegOpenKeyExA(HKEY hKey,LPCSTR lpSubKey,DWORD ulOptions,REGSAM samDesired,PHKEY phkResult);
--  WINADVAPI LONG WINAPI RegOpenKeyExW(HKEY hKey,LPCWSTR lpSubKey,DWORD ulOptions,REGSAM samDesired,PHKEY phkResult);
--  WINADVAPI LONG WINAPI RegQueryInfoKeyA(HKEY hKey,LPSTR lpClass,LPDWORD lpcchClass,LPDWORD lpReserved,LPDWORD lpcSubKeys,LPDWORD lpcbMaxSubKeyLen,LPDWORD lpcbMaxClassLen,LPDWORD lpcValues,LPDWORD lpcbMaxValueNameLen,LPDWORD lpcbMaxValueLen,LPDWORD lpcbSecurityDescriptor,PFILETIME lpftLastWriteTime);
--  WINADVAPI LONG WINAPI RegQueryInfoKeyW(HKEY hKey,LPWSTR lpClass,LPDWORD lpcchClass,LPDWORD lpReserved,LPDWORD lpcSubKeys,LPDWORD lpcbMaxSubKeyLen,LPDWORD lpcbMaxClassLen,LPDWORD lpcValues,LPDWORD lpcbMaxValueNameLen,LPDWORD lpcbMaxValueLen,LPDWORD lpcbSecurityDescriptor,PFILETIME lpftLastWriteTime);
-   WINADVAPI LONG WINAPI RegQueryValueA(HKEY hKey,LPCSTR lpSubKey,LPSTR lpData,PLONG lpcbData);
-   WINADVAPI LONG WINAPI RegQueryValueW(HKEY hKey,LPCWSTR lpSubKey,LPWSTR lpData,PLONG lpcbData);
-   WINADVAPI LONG WINAPI RegQueryMultipleValuesA(HKEY hKey,PVALENTA val_list,DWORD num_vals,LPSTR lpValueBuf,LPDWORD ldwTotsize);
-   WINADVAPI LONG WINAPI RegQueryMultipleValuesW(HKEY hKey,PVALENTW val_list,DWORD num_vals,LPWSTR lpValueBuf,LPDWORD ldwTotsize);
--  WINADVAPI LONG WINAPI RegQueryValueExA(HKEY hKey,LPCSTR lpValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
--  WINADVAPI LONG WINAPI RegQueryValueExW(HKEY hKey,LPCWSTR lpValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
-   WINADVAPI LONG WINAPI RegReplaceKeyA(HKEY hKey,LPCSTR lpSubKey,LPCSTR lpNewFile,LPCSTR lpOldFile);
-   WINADVAPI LONG WINAPI RegReplaceKeyW(HKEY hKey,LPCWSTR lpSubKey,LPCWSTR lpNewFile,LPCWSTR lpOldFile);
-   WINADVAPI LONG WINAPI RegRestoreKeyA(HKEY hKey,LPCSTR lpFile,DWORD dwFlags);
-@@ -210,12 +182,8 @@ extern "C" {
-   WINADVAPI LONG WINAPI RegSetKeySecurity(HKEY hKey,SECURITY_INFORMATION SecurityInformation,PSECURITY_DESCRIPTOR pSecurityDescriptor);
-   WINADVAPI LONG WINAPI RegSetValueA(HKEY hKey,LPCSTR lpSubKey,DWORD dwType,LPCSTR lpData,DWORD cbData);
-   WINADVAPI LONG WINAPI RegSetValueW(HKEY hKey,LPCWSTR lpSubKey,DWORD dwType,LPCWSTR lpData,DWORD cbData);
--  WINADVAPI LONG WINAPI RegSetValueExA(HKEY hKey,LPCSTR lpValueName,DWORD Reserved,DWORD dwType,CONST BYTE *lpData,DWORD cbData);
--  WINADVAPI LONG WINAPI RegSetValueExW(HKEY hKey,LPCWSTR lpValueName,DWORD Reserved,DWORD dwType,CONST BYTE *lpData,DWORD cbData);
-   WINADVAPI LONG WINAPI RegUnLoadKeyA(HKEY hKey,LPCSTR lpSubKey);
-   WINADVAPI LONG WINAPI RegUnLoadKeyW(HKEY hKey,LPCWSTR lpSubKey);
--  WINADVAPI LONG WINAPI RegGetValueA(HKEY hkey,LPCSTR lpSubKey,LPCSTR lpValue,DWORD dwFlags,LPDWORD pdwType,PVOID pvData,LPDWORD pcbData);
--  WINADVAPI LONG WINAPI RegGetValueW(HKEY hkey,LPCWSTR lpSubKey,LPCWSTR lpValue,DWORD dwFlags,LPDWORD pdwType,PVOID pvData,LPDWORD pcbData);
-   WINADVAPI WINBOOL WINAPI InitiateSystemShutdownA(LPSTR lpMachineName,LPSTR lpMessage,DWORD dwTimeout,WINBOOL bForceAppsClosed,WINBOOL bRebootAfterShutdown);
-   WINADVAPI WINBOOL WINAPI InitiateSystemShutdownW(LPWSTR lpMachineName,LPWSTR lpMessage,DWORD dwTimeout,WINBOOL bForceAppsClosed,WINBOOL bRebootAfterShutdown);
-   WINADVAPI WINBOOL WINAPI AbortSystemShutdownA(LPSTR lpMachineName);
-@@ -320,17 +288,6 @@ WINADVAPI LONG WINAPI RegDeleteKeyValueW(
-   LPCWSTR lpValueName
- );
- 
--#define RegDeleteTree __MINGW_NAME_AW(RegDeleteTree)
--WINADVAPI LONG WINAPI RegDeleteTreeA(
--  HKEY hKey,
--  LPCSTR lpSubKey
--);
--
--WINADVAPI LONG WINAPI RegDeleteTreeW(
--  HKEY hKey,
--  LPCWSTR lpSubKey
--);
--
- WINADVAPI LONG WINAPI RegLoadAppKeyA(
-   LPCSTR lpFile,
-   PHKEY phkResult,
-@@ -442,6 +399,55 @@ WINADVAPI DWORD WINAPI CheckForHiberboot(
- 
- #endif /* WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) */
- 
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
-+  WINADVAPI LONG WINAPI RegCloseKey(HKEY hKey);
-+  WINADVAPI LONG WINAPI RegCreateKeyExA(HKEY hKey,LPCSTR lpSubKey,DWORD Reserved,LPSTR lpClass,DWORD dwOptions,REGSAM samDesired,LPSECURITY_ATTRIBUTES lpSecurityAttributes,PHKEY phkResult,LPDWORD lpdwDisposition);
-+  WINADVAPI LONG WINAPI RegCreateKeyExW(HKEY hKey,LPCWSTR lpSubKey,DWORD Reserved,LPWSTR lpClass,DWORD dwOptions,REGSAM samDesired,LPSECURITY_ATTRIBUTES lpSecurityAttributes,PHKEY phkResult,LPDWORD lpdwDisposition);
-+  WINADVAPI LONG WINAPI RegDeleteKeyExA(HKEY hKey,LPCSTR lpSubKey,REGSAM samDesired,DWORD Reserved);
-+  WINADVAPI LONG WINAPI RegDeleteKeyExW(HKEY hKey,LPCWSTR lpSubKey,REGSAM samDesired,DWORD Reserved);
-+  WINADVAPI LONG WINAPI RegDeleteValueA(HKEY hKey,LPCSTR lpValueName);
-+  WINADVAPI LONG WINAPI RegDeleteValueW(HKEY hKey,LPCWSTR lpValueName);
-+  WINADVAPI LONG WINAPI RegEnumKeyExA(HKEY hKey,DWORD dwIndex,LPSTR lpName,LPDWORD lpcchName,LPDWORD lpReserved,LPSTR lpClass,LPDWORD lpcchClass,PFILETIME lpftLastWriteTime);
-+  WINADVAPI LONG WINAPI RegEnumKeyExW(HKEY hKey,DWORD dwIndex,LPWSTR lpName,LPDWORD lpcchName,LPDWORD lpReserved,LPWSTR lpClass,LPDWORD lpcchClass,PFILETIME lpftLastWriteTime);
-+  WINADVAPI LONG WINAPI RegEnumValueA(HKEY hKey,DWORD dwIndex,LPSTR lpValueName,LPDWORD lpcchValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
-+  WINADVAPI LONG WINAPI RegEnumValueW(HKEY hKey,DWORD dwIndex,LPWSTR lpValueName,LPDWORD lpcchValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
-+  WINADVAPI LONG WINAPI RegGetValueA(HKEY hkey,LPCSTR lpSubKey,LPCSTR lpValue,DWORD dwFlags,LPDWORD pdwType,PVOID pvData,LPDWORD pcbData);
-+  WINADVAPI LONG WINAPI RegGetValueW(HKEY hkey,LPCWSTR lpSubKey,LPCWSTR lpValue,DWORD dwFlags,LPDWORD pdwType,PVOID pvData,LPDWORD pcbData);
-+  WINADVAPI LONG WINAPI RegNotifyChangeKeyValue(HKEY hKey,WINBOOL bWatchSubtree,DWORD dwNotifyFilter,HANDLE hEvent,WINBOOL fAsynchronous);
-+  WINADVAPI LONG WINAPI RegOpenKeyExA(HKEY hKey,LPCSTR lpSubKey,DWORD ulOptions,REGSAM samDesired,PHKEY phkResult);
-+  WINADVAPI LONG WINAPI RegOpenKeyExW(HKEY hKey,LPCWSTR lpSubKey,DWORD ulOptions,REGSAM samDesired,PHKEY phkResult);
-+  WINADVAPI LONG WINAPI RegQueryInfoKeyA(HKEY hKey,LPSTR lpClass,LPDWORD lpcchClass,LPDWORD lpReserved,LPDWORD lpcSubKeys,LPDWORD lpcbMaxSubKeyLen,LPDWORD lpcbMaxClassLen,LPDWORD lpcValues,LPDWORD lpcbMaxValueNameLen,LPDWORD lpcbMaxValueLen,LPDWORD lpcbSecurityDescriptor,PFILETIME lpftLastWriteTime);
-+  WINADVAPI LONG WINAPI RegQueryInfoKeyW(HKEY hKey,LPWSTR lpClass,LPDWORD lpcchClass,LPDWORD lpReserved,LPDWORD lpcSubKeys,LPDWORD lpcbMaxSubKeyLen,LPDWORD lpcbMaxClassLen,LPDWORD lpcValues,LPDWORD lpcbMaxValueNameLen,LPDWORD lpcbMaxValueLen,LPDWORD lpcbSecurityDescriptor,PFILETIME lpftLastWriteTime);
-+  WINADVAPI LONG WINAPI RegQueryValueExA(HKEY hKey,LPCSTR lpValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
-+  WINADVAPI LONG WINAPI RegQueryValueExW(HKEY hKey,LPCWSTR lpValueName,LPDWORD lpReserved,LPDWORD lpType,LPBYTE lpData,LPDWORD lpcbData);
-+  WINADVAPI LONG WINAPI RegSetValueExA(HKEY hKey,LPCSTR lpValueName,DWORD Reserved,DWORD dwType,CONST BYTE *lpData,DWORD cbData);
-+  WINADVAPI LONG WINAPI RegSetValueExW(HKEY hKey,LPCWSTR lpValueName,DWORD Reserved,DWORD dwType,CONST BYTE *lpData,DWORD cbData);
-+#define RegCreateKeyEx __MINGW_NAME_AW(RegCreateKeyEx)
-+#define RegDeleteKeyEx __MINGW_NAME_AW(RegDeleteKeyEx)
-+#define RegDeleteValue __MINGW_NAME_AW(RegDeleteValue)
-+#define RegEnumKeyEx __MINGW_NAME_AW(RegEnumKeyEx)
-+#define RegEnumValue __MINGW_NAME_AW(RegEnumValue)
-+#define RegGetValue __MINGW_NAME_AW(RegGetValue)
-+#define RegOpenKeyEx __MINGW_NAME_AW(RegOpenKeyEx)
-+#define RegQueryInfoKey __MINGW_NAME_AW(RegQueryInfoKey)
-+#define RegQueryValueEx __MINGW_NAME_AW(RegQueryValueEx)
-+#define RegSetValueEx __MINGW_NAME_AW(RegSetValueEx)
-+#endif
-+
-+#if _WIN32_WINNT >= 0x0600 && (WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1)
-+WINADVAPI LONG WINAPI RegDeleteTreeA(
-+  HKEY hKey,
-+  LPCSTR lpSubKey
-+);
-+
-+WINADVAPI LONG WINAPI RegDeleteTreeW(
-+  HKEY hKey,
-+  LPCWSTR lpSubKey
-+);
-+
-+#define RegDeleteTree __MINGW_NAME_AW(RegDeleteTree)
-+#endif
-+
- #ifdef __cplusplus
- }
- #endif
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0009-headers-only-enable-GetFileInformationByHandle-for-1.patch deleted
=====================================
@@ -1,31 +0,0 @@
-From 20619a25985e84980d8fdc1ff7828e5fdff42ff4 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 1 Jun 2023 15:31:43 +0200
-Subject: [PATCH 09/17] headers: only enable GetFileInformationByHandle for
- 19H1 UWP builds
-
-It is not allowed in older SDK. It won't compile or won't link. The target DLL
-will likely not have the function, so it should not be used when targetting older
-Windows 10 versions in UWP mode.
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/fileapi.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/mingw-w64-headers/include/fileapi.h b/mingw-w64-headers/include/fileapi.h
-index e9e0c647f..8124bd5cc 100644
---- a/mingw-w64-headers/include/fileapi.h
-+++ b/mingw-w64-headers/include/fileapi.h
-@@ -32,7 +32,7 @@ WINBASEAPI DWORD WINAPI GetFileAttributesW (LPCWSTR lpFileName);
- #define GetFileAttributes __MINGW_NAME_AW(GetFileAttributes)
- WINBASEAPI DWORD WINAPI SetFilePointer (HANDLE hFile, LONG lDistanceToMove, PLONG lpDistanceToMoveHigh, DWORD dwMoveMethod);
- #endif
--#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || _WIN32_WINNT >= _WIN32_WINNT_WIN10
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1 || defined(WINSTORECOMPAT)
-   typedef struct _BY_HANDLE_FILE_INFORMATION {
-     DWORD dwFileAttributes;
-     FILETIME ftCreationTime;
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0010-headers-allow-Get-SetHandleInformation-in-Win10-19H1.patch deleted
=====================================
@@ -1,62 +0,0 @@
-From d598a2338f212cf88ae1ea54a2953ae3b2bd87d5 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 1 Jun 2023 15:32:15 +0200
-Subject: [PATCH 10/17] headers: allow Get/SetHandleInformation in Win10 19H1
- UWP builds
-
-The documentation doesn't say it's allowed but they are allowed by the
-Windows Application Certification Kit and the 18362 Windows SDK.
-
-It is not allowed in older SDK. It won't compile or won't link.
-The target DLL [1] will likely not have the function, so it should not
-be used when targeting older Windows 10 versions in UWP mode.
-
-We already have api-ms-win-core-handle-l1-1-0 in mincore and windowsapp.
-
-[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis#apis-from-api-ms-win-core-handle-l1-1-0dll
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/handleapi.h | 2 +-
- mingw-w64-headers/include/winbase.h   | 5 ++---
- 2 files changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/mingw-w64-headers/include/handleapi.h b/mingw-w64-headers/include/handleapi.h
-index 9f814f151..f33ceef71 100644
---- a/mingw-w64-headers/include/handleapi.h
-+++ b/mingw-w64-headers/include/handleapi.h
-@@ -23,7 +23,7 @@ extern "C" {
- #endif
- #endif
- 
--#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
-   WINBASEAPI WINBOOL WINAPI GetHandleInformation (HANDLE hObject, LPDWORD lpdwFlags);
-   WINBASEAPI WINBOOL WINAPI SetHandleInformation (HANDLE hObject, DWORD dwMask, DWORD dwFlags);
- #endif
-diff --git a/mingw-w64-headers/include/winbase.h b/mingw-w64-headers/include/winbase.h
-index c6c34ed3b..6e114e28f 100644
---- a/mingw-w64-headers/include/winbase.h
-+++ b/mingw-w64-headers/include/winbase.h
-@@ -1346,6 +1346,8 @@ typedef enum FILE_FLUSH_MODE {
- 
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || _WIN32_WINNT >= _WIN32_WINNT_WIN10
-   WINBASEAPI DWORD WINAPI WaitForMultipleObjects (DWORD nCount, CONST HANDLE *lpHandles, WINBOOL bWaitAll, DWORD dwMilliseconds);
-+#define HANDLE_FLAG_INHERIT 0x1
-+#define HANDLE_FLAG_PROTECT_FROM_CLOSE 0x2
- #endif
- 
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-@@ -1357,9 +1359,6 @@ typedef enum FILE_FLUSH_MODE {
-     DEPTotalPolicyCount
-   } DEP_SYSTEM_POLICY_TYPE;
- 
--#define HANDLE_FLAG_INHERIT 0x1
--#define HANDLE_FLAG_PROTECT_FROM_CLOSE 0x2
--
- #define HINSTANCE_ERROR 32
- 
- #define GET_TAPE_MEDIA_INFORMATION 0
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0011-crt-add-missing-api-ms-win-core-heap-l1-1-0.patch deleted
=====================================
@@ -1,113 +0,0 @@
-From 3f2dcd43490f263210a7a61ae1a7250c70cd9330 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 1 Jun 2023 15:33:39 +0200
-Subject: [PATCH 11/17] crt: add missing api-ms-win-core-heap-l1-1-0
-
-It was supposed to be in mincore already.
-
-The parameters size in lib32 were generated from values found in other .def
-files of lib32.
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-crt/Makefile.in                     |  1 +
- .../api-ms-win-core-heap-l1-1-0.def           | 20 +++++++++++++++++++
- mingw-w64-crt/lib-common/mincore.mri          |  2 +-
- mingw-w64-crt/lib-common/windowsapp.mri       |  1 +
- .../lib32/api-ms-win-core-heap-l1-1-0.def     | 20 +++++++++++++++++++
- 5 files changed, 43 insertions(+), 1 deletion(-)
- create mode 100644 mingw-w64-crt/lib-common/api-ms-win-core-heap-l1-1-0.def
- create mode 100644 mingw-w64-crt/lib32/api-ms-win-core-heap-l1-1-0.def
-
-diff --git a/mingw-w64-crt/Makefile.in b/mingw-w64-crt/Makefile.in
-index cff260421..3310b0a44 100644
---- a/mingw-w64-crt/Makefile.in
-+++ b/mingw-w64-crt/Makefile.in
-@@ -2206,6 +2206,7 @@ endif
- 		%/libapi-ms-win-core-file-l2-1-0.a \
- 		%/libapi-ms-win-core-file-l2-1-1.a \
- 		%/libapi-ms-win-core-handle-l1-1-0.a \
-+		%/libapi-ms-win-core-heap-l1-1-0.a \
- 		%/libapi-ms-win-core-heap-l1-2-0.a \
- 		%/libapi-ms-win-core-interlocked-l1-2-0.a \
- 		%/libapi-ms-win-core-io-l1-1-0.a \
-diff --git a/mingw-w64-crt/lib-common/api-ms-win-core-heap-l1-1-0.def b/mingw-w64-crt/lib-common/api-ms-win-core-heap-l1-1-0.def
-new file mode 100644
-index 000000000..202bce3ac
---- /dev/null
-+++ b/mingw-w64-crt/lib-common/api-ms-win-core-heap-l1-1-0.def
-@@ -0,0 +1,20 @@
-+LIBRARY api-ms-win-core-heap-l1-1-0
-+
-+EXPORTS
-+
-+GetProcessHeap
-+GetProcessHeaps
-+HeapAlloc
-+HeapCompact
-+HeapCreate
-+HeapDestroy
-+HeapFree
-+HeapLock
-+HeapQueryInformation
-+HeapReAlloc
-+HeapSetInformation
-+HeapSize
-+HeapSummary
-+HeapUnlock
-+HeapValidate
-+HeapWalk
-diff --git a/mingw-w64-crt/lib-common/mincore.mri b/mingw-w64-crt/lib-common/mincore.mri
-index 7073eeb8d..27f5f50c9 100644
---- a/mingw-w64-crt/lib-common/mincore.mri
-+++ b/mingw-w64-crt/lib-common/mincore.mri
-@@ -38,7 +38,7 @@ ADDLIB libapi-ms-win-core-file-l2-1-2.a
- ; FIXME libapi-ms-win-core-file-l2-1-3.a
- ADDLIB libapi-ms-win-core-firmware-l1-1-0.a
- ADDLIB libapi-ms-win-core-handle-l1-1-0.a
--; FIXME libapi-ms-win-core-heap-l1-1-0.a
-+ADDLIB libapi-ms-win-core-heap-l1-1-0.a
- ADDLIB libapi-ms-win-core-heap-l1-2-0.a
- ADDLIB libapi-ms-win-core-interlocked-l1-1-0.a
- ADDLIB libapi-ms-win-core-interlocked-l1-2-0.a
-diff --git a/mingw-w64-crt/lib-common/windowsapp.mri b/mingw-w64-crt/lib-common/windowsapp.mri
-index 2496280a5..d1445a4a7 100644
---- a/mingw-w64-crt/lib-common/windowsapp.mri
-+++ b/mingw-w64-crt/lib-common/windowsapp.mri
-@@ -20,6 +20,7 @@ ADDLIB libapi-ms-win-core-file-l1-2-2.a
- ADDLIB libapi-ms-win-core-file-l2-1-0.a
- ADDLIB libapi-ms-win-core-file-l2-1-1.a
- ADDLIB libapi-ms-win-core-handle-l1-1-0.a
-+ADDLIB libapi-ms-win-core-heap-l1-1-0.a
- ADDLIB libapi-ms-win-core-heap-l1-2-0.a
- ADDLIB libapi-ms-win-core-interlocked-l1-2-0.a
- ADDLIB libapi-ms-win-core-io-l1-1-0.a
-diff --git a/mingw-w64-crt/lib32/api-ms-win-core-heap-l1-1-0.def b/mingw-w64-crt/lib32/api-ms-win-core-heap-l1-1-0.def
-new file mode 100644
-index 000000000..419896a62
---- /dev/null
-+++ b/mingw-w64-crt/lib32/api-ms-win-core-heap-l1-1-0.def
-@@ -0,0 +1,20 @@
-+LIBRARY api-ms-win-core-heap-l1-1-0
-+
-+EXPORTS
-+
-+GetProcessHeap at 0
-+GetProcessHeaps at 8
-+HeapAlloc at 12
-+HeapCompact at 8
-+HeapCreate at 12
-+HeapDestroy at 4
-+HeapFree at 12
-+HeapLock at 4
-+HeapQueryInformation at 20
-+HeapReAlloc at 16
-+HeapSetInformation at 16
-+HeapSize at 12
-+HeapSummary at 12
-+HeapUnlock at 4
-+HeapValidate at 12
-+HeapWalk at 8
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0012-headers-Allow-some-Heap-API-in-Win10-19H1-UWP-builds.patch deleted
=====================================
@@ -1,39 +0,0 @@
-From be84314c974c5c3004ceeb3f510944a4074f137c Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 1 Jun 2023 15:33:40 +0200
-Subject: [PATCH 12/17] headers: Allow some Heap API in Win10 19H1 UWP builds
-
-The documentation doesn't say it's allowed but they are allowed by the
-Windows Application Certification Kit and the 18362 Windows SDK.
-
-It is not allowed in older SDK. It won't compile or won't link.
-The target DLL [1] will likely not have the function, so it should not
-be used when targeting older Windows 10 versions in UWP mode.
-
-We already have api-ms-win-core-heap-l1-1-0 and api-ms-win-core-heap-l1-2-0
-in mincore and windowsapp.
-
-[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis#apis-from-api-ms-win-core-heap-l1-2-0dll
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/heapapi.h | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/mingw-w64-headers/include/heapapi.h b/mingw-w64-headers/include/heapapi.h
-index b150e1056..fe937f301 100644
---- a/mingw-w64-headers/include/heapapi.h
-+++ b/mingw-w64-headers/include/heapapi.h
-@@ -30,6 +30,9 @@ extern "C" {
-   WINBASEAPI DWORD WINAPI GetProcessHeaps (DWORD NumberOfHeaps, PHANDLE ProcessHeaps);
-   WINBASEAPI WINBOOL WINAPI HeapLock (HANDLE hHeap);
-   WINBASEAPI WINBOOL WINAPI HeapUnlock (HANDLE hHeap);
-+#endif
-+
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
-   WINBASEAPI WINBOOL WINAPI HeapWalk (HANDLE hHeap, LPPROCESS_HEAP_ENTRY lpEntry);
-   WINBASEAPI WINBOOL WINAPI HeapQueryInformation (HANDLE HeapHandle, HEAP_INFORMATION_CLASS HeapInformationClass, PVOID HeapInformation, SIZE_T HeapInformationLength, PSIZE_T ReturnLength);
- #endif
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0013-headers-enable-FindResourceW-in-Win10-19H1-UWP-build.patch deleted
=====================================
@@ -1,93 +0,0 @@
-From 2609975f80bd2c6357b5e6c01210eafee277a00e Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 1 Jun 2023 15:34:34 +0200
-Subject: [PATCH 13/17] headers: enable FindResourceW in Win10 19H1 UWP builds
-
-The documentation doesn't say it's allowed but they are allowed by the
-Windows Application Certification Kit and the 18362 Windows SDK.
-
-It is not allowed in older SDK. It won't compile or won't link.
-The target DLL [1] will likely not have the function, so it should not
-be used when targeting older Windows 10 versions in UWP mode.
-
-We already have api-ms-win-core-libraryloader-l1-2-1 in mincore and windowsapp.
-
-[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis#apis-from-api-ms-win-core-libraryloader-l1-2-1dll
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/libloaderapi.h |  9 +++++++--
- mingw-w64-headers/include/winbase.h      | 10 +++++++---
- 2 files changed, 14 insertions(+), 5 deletions(-)
-
-diff --git a/mingw-w64-headers/include/libloaderapi.h b/mingw-w64-headers/include/libloaderapi.h
-index 25bacfd29..00aa50f2a 100644
---- a/mingw-w64-headers/include/libloaderapi.h
-+++ b/mingw-w64-headers/include/libloaderapi.h
-@@ -80,13 +80,19 @@ extern "C" {
- #define GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT (0x2)
- #define GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS (0x4)
- 
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || _WIN32_WINNT >= 0x0A00
-+  WINBASEAPI HRSRC WINAPI FindResourceW(HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType);
-+#ifdef UNICODE
-+#define FindResource FindResourceW
-+#endif
-+#endif
-+
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
- #define ENUMRESLANGPROC __MINGW_NAME_AW(ENUMRESLANGPROC)
- #define ENUMRESNAMEPROC __MINGW_NAME_AW(ENUMRESNAMEPROC)
- #define ENUMRESTYPEPROC __MINGW_NAME_AW(ENUMRESTYPEPROC)
- 
-   WINBASEAPI WINBOOL WINAPI EnumResourceNamesW(HMODULE hModule, LPCWSTR lpType, ENUMRESNAMEPROCW lpEnumFunc, LONG_PTR lParam);
--  WINBASEAPI HRSRC WINAPI FindResourceW(HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType);
-   WINBASEAPI WINBOOL WINAPI FreeResource (HGLOBAL hResData);
-   WINBASEAPI HGLOBAL WINAPI LoadResource (HMODULE hModule, HRSRC hResInfo);
-   WINUSERAPI int WINAPI LoadStringA (HINSTANCE hInstance, UINT uID, LPSTR lpBuffer, int cchBufferMax);
-@@ -98,7 +104,6 @@ extern "C" {
- 
- #ifdef UNICODE
- #define EnumResourceNames EnumResourceNamesW
--#define FindResource FindResourceW
- #endif
- 
- #define LoadString __MINGW_NAME_AW(LoadString)
-diff --git a/mingw-w64-headers/include/winbase.h b/mingw-w64-headers/include/winbase.h
-index 6e114e28f..050c5e7d4 100644
---- a/mingw-w64-headers/include/winbase.h
-+++ b/mingw-w64-headers/include/winbase.h
-@@ -2015,7 +2015,6 @@ typedef enum FILE_FLUSH_MODE {
-   WINBASEAPI VOID WINAPI FatalAppExitW (UINT uAction, LPCWSTR lpMessageText);
-   WINBASEAPI VOID WINAPI GetStartupInfoA (LPSTARTUPINFOA lpStartupInfo);
-   WINBASEAPI HRSRC WINAPI FindResourceA (HMODULE hModule, LPCSTR lpName, LPCSTR lpType);
--  WINBASEAPI HRSRC WINAPI FindResourceW (HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType);
-   WINBASEAPI HRSRC WINAPI FindResourceExA (HMODULE hModule, LPCSTR lpType, LPCSTR lpName, WORD wLanguage);
-   WINBASEAPI WINBOOL WINAPI EnumResourceTypesA (HMODULE hModule, ENUMRESTYPEPROCA lpEnumFunc, LONG_PTR lParam);
-   WINBASEAPI WINBOOL WINAPI EnumResourceTypesW (HMODULE hModule, ENUMRESTYPEPROCW lpEnumFunc, LONG_PTR lParam);
-@@ -2082,7 +2081,6 @@ typedef enum FILE_FLUSH_MODE {
- #define FatalAppExit __MINGW_NAME_AW(FatalAppExit)
- #define GetFirmwareEnvironmentVariable __MINGW_NAME_AW(GetFirmwareEnvironmentVariable)
- #define SetFirmwareEnvironmentVariable __MINGW_NAME_AW(SetFirmwareEnvironmentVariable)
--#define FindResource __MINGW_NAME_AW(FindResource)
- #define EnumResourceTypes __MINGW_NAME_AW(EnumResourceTypes)
- #define EnumResourceNames __MINGW_NAME_AW(EnumResourceNames)
- #define EnumResourceLanguages __MINGW_NAME_AW(EnumResourceLanguages)
-@@ -2168,7 +2166,13 @@ typedef enum FILE_FLUSH_MODE {
- #endif /* WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP) */
- 
- 
--#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
-+  WINBASEAPI HRSRC WINAPI FindResourceW (HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType);
-+
-+#define FindResource __MINGW_NAME_AW(FindResource)
-+#endif
-+
-+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_VB
-   WINBASEAPI WINBOOL WINAPI CreateDirectoryExA (LPCSTR lpTemplateDirectory, LPCSTR lpNewDirectory, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
-   WINBASEAPI WINBOOL WINAPI CreateDirectoryExW (LPCWSTR lpTemplateDirectory, LPCWSTR lpNewDirectory, LPSECURITY_ATTRIBUTES lpSecurityAttributes);
- 
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0014-headers-check-which-version-of-UWP-Windows-contains-.patch deleted
=====================================
@@ -1,42 +0,0 @@
-From 5cd281859723b5fcb3c7a488a3f059aa8f2f74cf Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Thu, 1 Jun 2023 15:35:32 +0200
-Subject: [PATCH 14/17] headers: check which version of UWP Windows contains
- Virtual functions
-
-* VirtualFree is always available in UWP
-* VirtualAlloc is only available since 19H1/18362 SDK
-* VirtualAllocEx is only available since 20H1/19041 SDK
-
-They are all found in api-ms-win-core-memory-l1-1-0 which is in mincore
-and windowsapp. It's one of the target DLLs [1]
-
-[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis#apis-from-api-ms-win-core-memory-l1-1-0dll
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/memoryapi.h | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/mingw-w64-headers/include/memoryapi.h b/mingw-w64-headers/include/memoryapi.h
-index 152671c18..889c2a504 100644
---- a/mingw-w64-headers/include/memoryapi.h
-+++ b/mingw-w64-headers/include/memoryapi.h
-@@ -29,9 +29,13 @@ extern "C" {
- #endif
- 
- #if (WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP) && _WIN32_WINNT >= _WIN32_WINNT_WIN10) || WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-+    WINBASEAPI WINBOOL WINAPI VirtualFree (LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType);
-+#endif
-+#if (WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP) && NTDDI_VERSION >= NTDDI_WIN10_19H1) || WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-     WINBASEAPI LPVOID WINAPI VirtualAlloc (LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect);
-+#endif
-+#if (WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP) && NTDDI_VERSION >= NTDDI_WIN10_VB) || WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-     WINBASEAPI LPVOID WINAPI VirtualAllocEx (HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect);
--    WINBASEAPI WINBOOL WINAPI VirtualFree (LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType);
- #endif
- 
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0015-headers-enabled-LoadLibraryEx-flags-in-Win10-19H1-UW.patch deleted
=====================================
@@ -1,80 +0,0 @@
-From 5f7be029976e3e5ad00901167ded70b5ca53ebb2 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Wed, 7 Jun 2023 09:46:58 +0200
-Subject: [PATCH 15/17] headers: enabled LoadLibraryEx flags in Win10 19H1 UWP
- builds
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/libloaderapi.h | 48 ++++++++++++------------
- 1 file changed, 24 insertions(+), 24 deletions(-)
-
-diff --git a/mingw-w64-headers/include/libloaderapi.h b/mingw-w64-headers/include/libloaderapi.h
-index 00aa50f2a..6a5f59ed4 100644
---- a/mingw-w64-headers/include/libloaderapi.h
-+++ b/mingw-w64-headers/include/libloaderapi.h
-@@ -50,30 +50,6 @@ extern "C" {
- #define RESOURCE_ENUM_MODULE_EXACT (0x0010)
- 
- #define SUPPORT_LANG_NUMBER 32
--
--#define DONT_RESOLVE_DLL_REFERENCES 0x1
--#define LOAD_LIBRARY_AS_DATAFILE 0x2
--#define LOAD_WITH_ALTERED_SEARCH_PATH 0x8
--#define LOAD_IGNORE_CODE_AUTHZ_LEVEL 0x10
--#define LOAD_LIBRARY_AS_IMAGE_RESOURCE 0x20
--#define LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE 0x40
--#define LOAD_LIBRARY_REQUIRE_SIGNED_TARGET 0x80
--#define LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR 0x100
--#define LOAD_LIBRARY_SEARCH_APPLICATION_DIR 0x200
--#define LOAD_LIBRARY_SEARCH_USER_DIRS 0x400
--#define LOAD_LIBRARY_SEARCH_SYSTEM32 0x800
--#define LOAD_LIBRARY_SEARCH_DEFAULT_DIRS 0x1000
--
--#if (NTDDI_VERSION >= NTDDI_WIN10_RS1)
--#define LOAD_LIBRARY_SAFE_CURRENT_DIRS 0x00002000
--#define LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER 0x00004000
--#else
--#define LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER LOAD_LIBRARY_SEARCH_SYSTEM32
--#endif
--
--#if (NTDDI_VERSION >= NTDDI_WIN10_RS2)
--#define LOAD_LIBRARY_OS_INTEGRITY_CONTINUITY 0x00008000
--#endif
- #endif /* WINAPI_PARTITION_DESKTOP */
- 
- #define GET_MODULE_HANDLE_EX_FLAG_PIN (0x1)
-@@ -166,6 +142,30 @@ typedef const REDIRECTION_DESCRIPTOR *PCREDIRECTION_DESCRIPTOR;
- #endif
- 
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
-+#define DONT_RESOLVE_DLL_REFERENCES 0x1
-+#define LOAD_LIBRARY_AS_DATAFILE 0x2
-+#define LOAD_WITH_ALTERED_SEARCH_PATH 0x8
-+#define LOAD_IGNORE_CODE_AUTHZ_LEVEL 0x10
-+#define LOAD_LIBRARY_AS_IMAGE_RESOURCE 0x20
-+#define LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE 0x40
-+#define LOAD_LIBRARY_REQUIRE_SIGNED_TARGET 0x80
-+#define LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR 0x100
-+#define LOAD_LIBRARY_SEARCH_APPLICATION_DIR 0x200
-+#define LOAD_LIBRARY_SEARCH_USER_DIRS 0x400
-+#define LOAD_LIBRARY_SEARCH_SYSTEM32 0x800
-+#define LOAD_LIBRARY_SEARCH_DEFAULT_DIRS 0x1000
-+
-+#if (NTDDI_VERSION >= NTDDI_WIN10_RS1)
-+#define LOAD_LIBRARY_SAFE_CURRENT_DIRS 0x00002000
-+#define LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER 0x00004000
-+#else
-+#define LOAD_LIBRARY_SEARCH_SYSTEM32_NO_FORWARDER LOAD_LIBRARY_SEARCH_SYSTEM32
-+#endif
-+
-+#if (NTDDI_VERSION >= NTDDI_WIN10_RS2)
-+#define LOAD_LIBRARY_OS_INTEGRITY_CONTINUITY 0x00008000
-+#endif
-+
-   WINBASEAPI HRSRC WINAPI FindResourceExW (HMODULE hModule, LPCWSTR lpType, LPCWSTR lpName, WORD wLanguage);
-   WINBASEAPI HMODULE WINAPI GetModuleHandleA (LPCSTR lpModuleName);
-   WINBASEAPI HMODULE WINAPI GetModuleHandleW (LPCWSTR lpModuleName);
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0016-headers-Allow-SetDllDirectoryW-A-API-in-Win10-19H1-U.patch deleted
=====================================
@@ -1,48 +0,0 @@
-From b4d090324cbb623584b372c6a978f0d877b7e019 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Wed, 7 Jun 2023 09:46:59 +0200
-Subject: [PATCH 16/17] headers: Allow SetDllDirectoryW/A API in Win10 19H1 UWP
- builds
-
-The documentation doesn't say it's allowed but they are allowed by the
-Windows Application Certification Kit and the 18362 Windows SDK.
-
-It is not allowed in older SDK. It won't compile or won't link.
-The target DLL [1] will likely not have the function, so it should not
-be used when targeting older Windows 10 versions in UWP mode.
-
-We already have api-ms-win-core-kernel32-legacy-l1-1-1
-in windowsapp.
-
-[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis#apis-from-api-ms-win-core-kernel32-legacy-l1-1-1dll
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/winbase.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/mingw-w64-headers/include/winbase.h b/mingw-w64-headers/include/winbase.h
-index 050c5e7d4..ad8f069c4 100644
---- a/mingw-w64-headers/include/winbase.h
-+++ b/mingw-w64-headers/include/winbase.h
-@@ -2136,8 +2136,6 @@ typedef enum FILE_FLUSH_MODE {
- #define GET_SYSTEM_WOW64_DIRECTORY_NAME_T_T __MINGW_NAME_UAW_EXT(GET_SYSTEM_WOW64_DIRECTORY_NAME,T)
- #endif
- 
--  WINBASEAPI WINBOOL WINAPI SetDllDirectoryA (LPCSTR lpPathName);
--  WINBASEAPI WINBOOL WINAPI SetDllDirectoryW (LPCWSTR lpPathName);
-   WINBASEAPI DWORD WINAPI GetDllDirectoryA (DWORD nBufferLength, LPSTR lpBuffer);
-   WINBASEAPI DWORD WINAPI GetDllDirectoryW (DWORD nBufferLength, LPWSTR lpBuffer);
- 
-@@ -2167,6 +2165,8 @@ typedef enum FILE_FLUSH_MODE {
- 
- 
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
-+  WINBASEAPI WINBOOL WINAPI SetDllDirectoryA (LPCSTR lpPathName);
-+  WINBASEAPI WINBOOL WINAPI SetDllDirectoryW (LPCWSTR lpPathName);
-   WINBASEAPI HRSRC WINAPI FindResourceW (HMODULE hModule, LPCWSTR lpName, LPCWSTR lpType);
- 
- #define FindResource __MINGW_NAME_AW(FindResource)
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0017-headers-allow-FORMAT_MESSAGE_ALLOCATE_BUFFER-in-UWP.patch deleted
=====================================
@@ -1,36 +0,0 @@
-From 856d9ba2e3095c8775d00933353641de0cee0236 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Wed, 14 Jun 2023 09:59:19 +0200
-Subject: [PATCH 17/17] headers: allow FORMAT_MESSAGE_ALLOCATE_BUFFER in UWP
-
-FormatMessageA/W are allowed, so the flag should be allowed too.
-
-Signed-off-by: LIU Hao <lh_mouse at 126.com>
----
- mingw-w64-headers/include/winbase.h | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/mingw-w64-headers/include/winbase.h b/mingw-w64-headers/include/winbase.h
-index ad8f069c4..24eb6b78d 100644
---- a/mingw-w64-headers/include/winbase.h
-+++ b/mingw-w64-headers/include/winbase.h
-@@ -1448,6 +1448,7 @@ typedef enum FILE_FLUSH_MODE {
- #define FORMAT_MESSAGE_FROM_SYSTEM 0x00001000
- #define FORMAT_MESSAGE_ARGUMENT_ARRAY 0x00002000
- #define FORMAT_MESSAGE_MAX_WIDTH_MASK 0x000000ff
-+#define FORMAT_MESSAGE_ALLOCATE_BUFFER 0x00000100
- #endif
- 
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-@@ -1465,8 +1466,6 @@ typedef enum FILE_FLUSH_MODE {
- #define FILE_READ_ONLY 8
- #define FILE_DIR_DISALLOWED 9
- 
--#define FORMAT_MESSAGE_ALLOCATE_BUFFER 0x00000100
--
- #define EFS_USE_RECOVERY_KEYS (0x1)
- 
- #define CREATE_FOR_IMPORT (1)
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0018-headers-allow-RtlSecureZeroMemory-in-all-targets.patch deleted
=====================================
@@ -1,67 +0,0 @@
-From 600b99cc479aa3086ab51c52e333671bab89bbb7 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Wed, 9 Aug 2023 08:35:59 +0200
-Subject: [PATCH 18/19] headers: allow RtlSecureZeroMemory in all targets
-
-It's usually an inline function doing native CPU calls. It's also unrestricted
-in the Windows SDK since Windows 8, as well as SecureZeroMemory.
----
- mingw-w64-headers/include/winnt.h | 35 ++++++++++++++++---------------
- 1 file changed, 18 insertions(+), 17 deletions(-)
-
-diff --git a/mingw-w64-headers/include/winnt.h b/mingw-w64-headers/include/winnt.h
-index 257efdc1b..a49dd6ab8 100644
---- a/mingw-w64-headers/include/winnt.h
-+++ b/mingw-w64-headers/include/winnt.h
-@@ -8928,6 +8928,24 @@ typedef DWORD (WINAPI *PRTL_RUN_ONCE_INIT_FN)(PRTL_RUN_ONCE, PVOID, PVOID *);
- #define HEAP_MAXIMUM_TAG 0x0FFF
- #define HEAP_PSEUDO_TAG_FLAG 0x8000
- #define HEAP_TAG_SHIFT 18
-+
-+    PVOID WINAPI RtlSecureZeroMemory(PVOID ptr,SIZE_T cnt);
-+
-+#if !defined (__CRT__NO_INLINE) && !defined (__WIDL__)
-+    __CRT_INLINE PVOID WINAPI RtlSecureZeroMemory(PVOID ptr,SIZE_T cnt) {
-+      volatile char *vptr =(volatile char *)ptr;
-+#ifdef __x86_64
-+      __stosb((PBYTE)((DWORD64)vptr),0,cnt);
-+#else
-+      while(cnt) {
-+	*vptr++ = 0;
-+	cnt--;
-+      }
-+#endif /* __x86_64 */
-+      return ptr;
-+    }
-+#endif /* !__CRT__NO_INLINE // !__WIDL__ */
-+
- /* Let this macro fail for non-desktop mode.  AFAIU this should be better an inline-function ... */
- #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
- #define HEAP_MAKE_TAG_FLAGS(b,o) ((DWORD)((b) + ((o) << 18)))
-@@ -8983,23 +9001,6 @@ typedef DWORD (WINAPI *PRTL_RUN_ONCE_INIT_FN)(PRTL_RUN_ONCE, PVOID, PVOID *);
- #define RtlFillMemory(Destination,Length,Fill) memset((Destination),(Fill),(Length))
- #define RtlZeroMemory(Destination,Length) memset((Destination),0,(Length))
- 
--    PVOID WINAPI RtlSecureZeroMemory(PVOID ptr,SIZE_T cnt);
--
--#if !defined (__CRT__NO_INLINE) && !defined (__WIDL__)
--    __CRT_INLINE PVOID WINAPI RtlSecureZeroMemory(PVOID ptr,SIZE_T cnt) {
--      volatile char *vptr =(volatile char *)ptr;
--#ifdef __x86_64
--      __stosb((PBYTE)((DWORD64)vptr),0,cnt);
--#else
--      while(cnt) {
--	*vptr++ = 0;
--	cnt--;
--      }
--#endif /* __x86_64 */
--      return ptr;
--    }
--#endif /* !__CRT__NO_INLINE // !__WIDL__ */
--
-     typedef struct _MESSAGE_RESOURCE_ENTRY {
-       WORD Length;
-       WORD Flags;
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/0019-headers-use-inline-version-of-RtlSecureZeroMemory-fo.patch deleted
=====================================
@@ -1,46 +0,0 @@
-From e810b0d5c51842a1cda4376dad7209458ad8fee0 Mon Sep 17 00:00:00 2001
-From: Steve Lhomme <robux4 at ycbcr.xyz>
-Date: Wed, 9 Aug 2023 10:57:25 +0200
-Subject: [PATCH 19/19] headers: use inline version of RtlSecureZeroMemory for
- UCRT builds
-
-There's an intrinsic version in the kernel32 library. But it's not supposed
-to be used with UCRT builds.
-
-RtlSecureZeroMemory is not found in -O0 + UCRT builds without this fix.
-
-In the Windows SDK it's a forced inline version no matter what.
-(and there's an ARM version)
----
- mingw-w64-headers/include/winnt.h | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/mingw-w64-headers/include/winnt.h b/mingw-w64-headers/include/winnt.h
-index a49dd6ab8..7bd6d4bfe 100644
---- a/mingw-w64-headers/include/winnt.h
-+++ b/mingw-w64-headers/include/winnt.h
-@@ -8929,10 +8929,8 @@ typedef DWORD (WINAPI *PRTL_RUN_ONCE_INIT_FN)(PRTL_RUN_ONCE, PVOID, PVOID *);
- #define HEAP_PSEUDO_TAG_FLAG 0x8000
- #define HEAP_TAG_SHIFT 18
- 
--    PVOID WINAPI RtlSecureZeroMemory(PVOID ptr,SIZE_T cnt);
--
--#if !defined (__CRT__NO_INLINE) && !defined (__WIDL__)
--    __CRT_INLINE PVOID WINAPI RtlSecureZeroMemory(PVOID ptr,SIZE_T cnt) {
-+#if (!defined (__CRT__NO_INLINE) || defined(_UCRT)) && !defined (__WIDL__)
-+    __forceinline PVOID RtlSecureZeroMemory(PVOID ptr,SIZE_T cnt) {
-       volatile char *vptr =(volatile char *)ptr;
- #ifdef __x86_64
-       __stosb((PBYTE)((DWORD64)vptr),0,cnt);
-@@ -8944,6 +8942,8 @@ typedef DWORD (WINAPI *PRTL_RUN_ONCE_INIT_FN)(PRTL_RUN_ONCE, PVOID, PVOID *);
- #endif /* __x86_64 */
-       return ptr;
-     }
-+#else // intrinsic in kernel32
-+    PVOID WINAPI RtlSecureZeroMemory(PVOID ptr,SIZE_T cnt);
- #endif /* !__CRT__NO_INLINE // !__WIDL__ */
- 
- /* Let this macro fail for non-desktop mode.  AFAIU this should be better an inline-function ... */
--- 
-2.37.3.windows.1
-


=====================================
contrib/src/mingw64/SHA512SUMS
=====================================
@@ -1 +1 @@
-bc1c9fd9d8593ead9375fcbe40950f06cf7616b94dc676db2793ac9b496fe3a6cc94b5793effda3b752942be0d7d01a1c37a8f221aaf178df0d4eeb0aa6d1f8d  mingw-w64-v11.0.0.tar.bz2
\ No newline at end of file
+949b2bfab8763ab10ec4e9fdfdaf5361517a4ab787fb98ab419b38d02694061c2e821ebbf6e2e4b39d92bdf17419d116daa8e63afd9e01d11592f39df4da69d7  mingw-w64-v12.0.0.tar.bz2
\ No newline at end of file


=====================================
contrib/src/mingw64/rules.mak
=====================================
@@ -1,9 +1,9 @@
 # winpthreads, dxvahd, winrt_headers, dcomp
 
-MINGW64_VERSION := 11.0.0
+MINGW64_VERSION := 12.0.0
 MINGW64_URL := $(SF)/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v$(MINGW64_VERSION).tar.bz2
-MINGW64_HASH=2c35e8ff0d33916bd490e8932cba2049cd1af3d0
-MINGW64_GITURL := https://git.code.sf.net/p/mingw-w64/mingw-w64
+# MINGW64_HASH=2c35e8ff0d33916bd490e8932cba2049cd1af3d0
+# MINGW64_GITURL := https://git.code.sf.net/p/mingw-w64/mingw-w64
 
 ifdef HAVE_WIN32
 PKGS += winpthreads
@@ -45,8 +45,8 @@ endif # HAVE_WIN32
 
 PKGS_ALL += winpthreads winrt_headers dxva dxvahd dcomp mingw11-fixes alloweduwp mft10 d3d12
 
-$(TARBALLS)/mingw-w64-$(MINGW64_HASH).tar.xz:
-	$(call download_git,$(MINGW64_GITURL),,$(MINGW64_HASH))
+# $(TARBALLS)/mingw-w64-$(MINGW64_HASH).tar.xz:
+# 	$(call download_git,$(MINGW64_GITURL),,$(MINGW64_HASH))
 
 $(TARBALLS)/mingw-w64-v$(MINGW64_VERSION).tar.bz2:
 	$(call download_pkg,$(MINGW64_URL),winpthreads)
@@ -57,31 +57,6 @@ $(TARBALLS)/mingw-w64-v$(MINGW64_VERSION).tar.bz2:
 mingw64: mingw-w64-v$(MINGW64_VERSION).tar.bz2 .sum-mingw64
 # mingw64: mingw-w64-$(MINGW64_HASH).tar.xz .sum-mingw64
 	$(UNPACK)
-	$(APPLY) $(SRC)/mingw64/0001-headers-enable-GetFileInformationByHandle-in-Win10-U.patch
-	$(APPLY) $(SRC)/mingw64/0002-headers-enable-VirtualAlloc-Ex-in-Win10-UWP-builds.patch
-	$(APPLY) $(SRC)/mingw64/0003-headers-enable-GetVolumePathNameW-in-Win10-UWP-build.patch
-	$(APPLY) $(SRC)/mingw64/0004-headers-enable-GET_MODULE_HANDLE_EX_xxx-defines-in-U.patch
-	$(APPLY) $(SRC)/mingw64/0005-headers-enable-CreateHardLinkW-in-Win10-19H1-UWP-bui.patch
-	$(APPLY) $(SRC)/mingw64/0006-headers-enable-more-module-API-in-Win10-19H1-UWP-bui.patch
-	$(APPLY) $(SRC)/mingw64/0007-crt-add-api-ms-core-registry-def-files.patch
-	$(APPLY) $(SRC)/mingw64/0008-headers-enable-some-Registry-API-calls-in-Win10-19H1.patch
-	$(APPLY) $(SRC)/mingw64/0009-headers-only-enable-GetFileInformationByHandle-for-1.patch
-	$(APPLY) $(SRC)/mingw64/0010-headers-allow-Get-SetHandleInformation-in-Win10-19H1.patch
-	$(APPLY) $(SRC)/mingw64/0011-crt-add-missing-api-ms-win-core-heap-l1-1-0.patch
-	$(APPLY) $(SRC)/mingw64/0012-headers-Allow-some-Heap-API-in-Win10-19H1-UWP-builds.patch
-	$(APPLY) $(SRC)/mingw64/0013-headers-enable-FindResourceW-in-Win10-19H1-UWP-build.patch
-	$(APPLY) $(SRC)/mingw64/0014-headers-check-which-version-of-UWP-Windows-contains-.patch
-	$(APPLY) $(SRC)/mingw64/0015-headers-enabled-LoadLibraryEx-flags-in-Win10-19H1-UW.patch
-	$(APPLY) $(SRC)/mingw64/0016-headers-Allow-SetDllDirectoryW-A-API-in-Win10-19H1-U.patch
-	$(APPLY) $(SRC)/mingw64/0017-headers-allow-FORMAT_MESSAGE_ALLOCATE_BUFFER-in-UWP.patch
-	$(APPLY) $(SRC)/mingw64/0018-headers-allow-RtlSecureZeroMemory-in-all-targets.patch
-	$(APPLY) $(SRC)/mingw64/0019-headers-use-inline-version-of-RtlSecureZeroMemory-fo.patch
-	$(APPLY) $(SRC)/mingw64/0001-headers-allow-CryptAcquireContext-in-Win10-RS4-UWP-b.patch
-	$(APPLY) $(SRC)/mingw64/0002-headers-allow-CryptGenRandom-in-Win10-19H1-UWP-build.patch
-	$(APPLY) $(SRC)/mingw64/0003-headers-allow-more-wincrypt-API-s-in-Win10-RS4-UWP-b.patch
-	$(APPLY) $(SRC)/mingw64/0004-headers-allow-more-wincrypt-API-s-in-Win10-19H1-UWP-.patch
-	$(APPLY) $(SRC)/mingw64/0005-crt-use-wincrypt-API-from-windowsapp-in-Windows-10.patch
-	$(APPLY) $(SRC)/mingw64/0001-include-process-fix-bare-DllMain-_CRT_INIT-signature.patch
 	$(MOVE)
 
 .mingw64: mingw64
@@ -185,6 +160,7 @@ endif
 	install $</mingw-w64-headers/include/handleapi.h    "$(PREFIX)/include"
 	install $</mingw-w64-headers/include/wincrypt.h     "$(PREFIX)/include"
 	install $</mingw-w64-headers/include/winnt.h        "$(PREFIX)/include"
+	install $</mingw-w64-headers/include/heapapi.h      "$(PREFIX)/include"
 
 	# Trick mingw-w64 into just building libwindowsapp.a
 	$(MAKEBUILDDIR)


=====================================
include/vlc_fixups.h
=====================================
@@ -768,11 +768,6 @@ void sincosf(float, float *, float *);
 char *realpath(const char * restrict pathname, char * restrict resolved_path);
 #endif
 
-/* mingw-w64 has a broken IN6_IS_ADDR_MULTICAST macro */
-#if defined(_WIN32) && defined(__MINGW64_VERSION_MAJOR)
-# define IN6_IS_ADDR_MULTICAST IN6_IS_ADDR_MULTICAST
-#endif
-
 #ifdef __APPLE__
 # define fdatasync fsync
 



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/fea49c4504c83581d4c8f38cd3e02d81c7750618...25dfe4a2efd0db5995427e5a5b816dbe1d65e3da

-- 
This project does not include diff previews in email notifications.
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/fea49c4504c83581d4c8f38cd3e02d81c7750618...25dfe4a2efd0db5995427e5a5b816dbe1d65e3da
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list