And add missing CopyFileExA and ReadDirectoryChangesW in
api-ms-win-core-file-l2-1-0 or the ansi variant
---
mingw-w64-crt/Makefile.am | 2 ++
.../api-ms-win-core-file-ansi-l2-1-0.def | 1 +
.../api-ms-win-core-file-l2-1-0.def | 6 ++++++
mingw-w64-crt/lib-common/mincore.mri | 3 ++-
mingw-w64-crt/lib-common/windowsapp.mri | 1 +
.../api-ms-win-core-file-ansi-l2-1-0.def | 1 +
.../lib32/api-ms-win-core-file-l2-1-0.def | 6 ++++++
mingw-w64-headers/include/winbase.h | 21 ++++++++++++++-----
8 files changed, 35 insertions(+), 6 deletions(-)
create mode 100644 mingw-w64-crt/lib-common/api-ms-win-core-file-l2-1-0.def
create mode 100644 mingw-w64-crt/lib32/api-ms-win-core-file-l2-1-0.def
diff --git a/mingw-w64-crt/Makefile.am b/mingw-w64-crt/Makefile.am
index 6bf3f3c7..277d1537 100644
--- a/mingw-w64-crt/Makefile.am
+++ b/mingw-w64-crt/Makefile.am
@@ -1667,6 +1667,7 @@ endif
%/libapi-ms-win-core-errorhandling-l1-1-3.a \
%/libapi-ms-win-core-fibers-l1-1-1.a \
%/libapi-ms-win-core-file-l1-2-1.a \
+ %/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-interlocked-l1-2-0.a \
@@ -1759,6 +1760,7 @@ endif
%/libapi-ms-win-core-fibers-l2-1-1.a \
%/libapi-ms-win-core-file-ansi-l2-1-0.a \
%/libapi-ms-win-core-file-l1-2-1.a \
+ %/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-2-0.a \
diff --git a/mingw-w64-crt/lib-common/api-ms-win-core-file-ansi-l2-1-0.def
b/mingw-w64-crt/lib-common/api-ms-win-core-file-ansi-l2-1-0.def
index 4092a731..435f600c 100644
--- a/mingw-w64-crt/lib-common/api-ms-win-core-file-ansi-l2-1-0.def
+++ b/mingw-w64-crt/lib-common/api-ms-win-core-file-ansi-l2-1-0.def
@@ -3,3 +3,4 @@ LIBRARY api-ms-win-core-file-ansi-l2-1-0
EXPORTS
ReplaceFileA
+CopyFileExA
diff --git a/mingw-w64-crt/lib-common/api-ms-win-core-file-l2-1-0.def
b/mingw-w64-crt/lib-common/api-ms-win-core-file-l2-1-0.def
new file mode 100644
index 00000000..307e7c70
--- /dev/null
+++ b/mingw-w64-crt/lib-common/api-ms-win-core-file-l2-1-0.def
@@ -0,0 +1,6 @@
+LIBRARY api-ms-win-core-file-l1-2-0
+
+EXPORTS
+
+CopyFileExW
+ReadDirectoryChangesW
diff --git a/mingw-w64-crt/lib-common/mincore.mri
b/mingw-w64-crt/lib-common/mincore.mri
index 4c62b661..a1e998de 100644
--- a/mingw-w64-crt/lib-common/mincore.mri
+++ b/mingw-w64-crt/lib-common/mincore.mri
@@ -21,11 +21,12 @@ ADDLIB libapi-ms-win-core-errorhandling-l1-1-1.a
ADDLIB libapi-ms-win-core-errorhandling-l1-1-3.a
; FIXME libapi-ms-win-core-fibers-l1-1-0.a
ADDLIB libapi-ms-win-core-fibers-l1-1-1.a
+ADDLIB libapi-ms-win-core-file-ansi-l2-1-0.a
; FIXME libapi-ms-win-core-file-l1-1-0.a
; FIXME libapi-ms-win-core-file-l1-2-0.a
ADDLIB libapi-ms-win-core-file-l1-2-1.a
; FIXME libapi-ms-win-core-file-l1-2-2.a
-; FIXME libapi-ms-win-core-file-l2-1-0.a
+ADDLIB libapi-ms-win-core-file-l2-1-0.a
ADDLIB libapi-ms-win-core-file-l2-1-1.a
; FIXME libapi-ms-win-core-file-l2-1-2.a
; FIXME libapi-ms-win-core-file-l2-1-3.a
diff --git a/mingw-w64-crt/lib-common/windowsapp.mri
b/mingw-w64-crt/lib-common/windowsapp.mri
index aefadef7..863e6bd4 100644
--- a/mingw-w64-crt/lib-common/windowsapp.mri
+++ b/mingw-w64-crt/lib-common/windowsapp.mri
@@ -13,6 +13,7 @@ ADDLIB libapi-ms-win-core-fibers-l1-1-1.a
ADDLIB libapi-ms-win-core-fibers-l2-1-1.a
ADDLIB libapi-ms-win-core-file-ansi-l2-1-0.a
ADDLIB libapi-ms-win-core-file-l1-2-1.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-2-0.a
diff --git a/mingw-w64-crt/lib32/api-ms-win-core-file-ansi-l2-1-0.def
b/mingw-w64-crt/lib32/api-ms-win-core-file-ansi-l2-1-0.def
index 271479c9..9cbbc7e5 100644
--- a/mingw-w64-crt/lib32/api-ms-win-core-file-ansi-l2-1-0.def
+++ b/mingw-w64-crt/lib32/api-ms-win-core-file-ansi-l2-1-0.def
@@ -3,3 +3,4 @@ LIBRARY api-ms-win-core-file-ansi-l2-1-0
EXPORTS
ReplaceFileA@24
+CopyFileExA@24
diff --git a/mingw-w64-crt/lib32/api-ms-win-core-file-l2-1-0.def
b/mingw-w64-crt/lib32/api-ms-win-core-file-l2-1-0.def
new file mode 100644
index 00000000..31aaabd1
--- /dev/null
+++ b/mingw-w64-crt/lib32/api-ms-win-core-file-l2-1-0.def
@@ -0,0 +1,6 @@
+LIBRARY api-ms-win-core-file-l1-2-0
+
+EXPORTS
+
+CopyFileExW@24
+ReadDirectoryChangesW@32
diff --git a/mingw-w64-headers/include/winbase.h
b/mingw-w64-headers/include/winbase.h
index cdae61df..bcfa0eb0 100644
--- a/mingw-w64-headers/include/winbase.h
+++ b/mingw-w64-headers/include/winbase.h
@@ -1989,15 +1989,20 @@ extern "C" {
#endif
#endif
-#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || _WIN32_WINNT >=
_WIN32_WINNT_WIN10
typedef DWORD (WINAPI *LPPROGRESS_ROUTINE) (LARGE_INTEGER TotalFileSize,
LARGE_INTEGER TotalBytesTransferred, LARGE_INTEGER StreamSize, LARGE_INTEGER
StreamBytesTransferred, DWORD dwStreamNumber, DWORD dwCallbackReason, HANDLE
hSourceFile, HANDLE hDestinationFile, LPVOID lpData);
+ WINBASEAPI WINBOOL WINAPI CopyFileExA (LPCSTR lpExistingFileName, LPCSTR
lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, LPBOOL
pbCancel, DWORD dwCopyFlags);
+ WINBASEAPI WINBOOL WINAPI CopyFileExW (LPCWSTR lpExistingFileName, LPCWSTR
lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, LPBOOL
pbCancel, DWORD dwCopyFlags);
+
+#define CopyFileEx __MINGW_NAME_AW(CopyFileEx)
+#endif
+
+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
WINBASEAPI WINBOOL WINAPI CheckNameLegalDOS8Dot3A (LPCSTR lpName, LPSTR
lpOemName, DWORD OemNameSize, PBOOL pbNameContainsSpaces, PBOOL pbNameLegal);
WINBASEAPI WINBOOL WINAPI CheckNameLegalDOS8Dot3W (LPCWSTR lpName, LPSTR
lpOemName, DWORD OemNameSize, PBOOL pbNameContainsSpaces, PBOOL pbNameLegal);
WINBASEAPI WINBOOL WINAPI CopyFileA (LPCSTR lpExistingFileName, LPCSTR
lpNewFileName, WINBOOL bFailIfExists);
WINBASEAPI WINBOOL WINAPI CopyFileW (LPCWSTR lpExistingFileName, LPCWSTR
lpNewFileName, WINBOOL bFailIfExists);
- WINBASEAPI WINBOOL WINAPI CopyFileExA (LPCSTR lpExistingFileName, LPCSTR
lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, LPBOOL
pbCancel, DWORD dwCopyFlags);
- WINBASEAPI WINBOOL WINAPI CopyFileExW (LPCWSTR lpExistingFileName, LPCWSTR
lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, LPBOOL
pbCancel, DWORD dwCopyFlags);
#if _WIN32_WINNT >= 0x0600
WINBASEAPI HANDLE WINAPI FindFirstFileTransactedA (LPCSTR lpFileName,
FINDEX_INFO_LEVELS fInfoLevelId, LPVOID lpFindFileData, FINDEX_SEARCH_OPS
fSearchOp, LPVOID lpSearchFilter, DWORD dwAdditionalFlags, HANDLE hTransaction);
@@ -2011,7 +2016,6 @@ extern "C" {
#define CheckNameLegalDOS8Dot3 __MINGW_NAME_AW(CheckNameLegalDOS8Dot3)
#define CopyFile __MINGW_NAME_AW(CopyFile)
-#define CopyFileEx __MINGW_NAME_AW(CopyFileEx)
#endif
@@ -2297,6 +2301,14 @@ extern "C" {
WINADVAPI WINBOOL WINAPI OperationEnd (OPERATION_END_PARAMETERS
*OperationEndParams);
#endif
+#endif
+
+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || _WIN32_WINNT >=
_WIN32_WINNT_WIN10
+ WINBASEAPI WINBOOL WINAPI ReadDirectoryChangesW (HANDLE hDirectory, LPVOID
lpBuffer, DWORD nBufferLength, WINBOOL bWatchSubtree, DWORD dwNotifyFilter,
LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped,
LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
+#endif
+
+#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
+
WINADVAPI WINBOOL WINAPI AccessCheckAndAuditAlarmA (LPCSTR SubsystemName,
LPVOID HandleId, LPSTR ObjectTypeName, LPSTR ObjectName, PSECURITY_DESCRIPTOR
SecurityDescriptor, DWORD DesiredAccess, PGENERIC_MAPPING GenericMapping,
WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL
pfGenerateOnClose);
WINADVAPI WINBOOL WINAPI AccessCheckByTypeAndAuditAlarmA (LPCSTR
SubsystemName, LPVOID HandleId, LPCSTR ObjectTypeName, LPCSTR ObjectName,
PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD
DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST
ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping,
WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL
pfGenerateOnClose);
WINADVAPI WINBOOL WINAPI AccessCheckByTypeResultListAndAuditAlarmA (LPCSTR
SubsystemName, LPVOID HandleId, LPCSTR ObjectTypeName, LPCSTR ObjectName,
PSECURITY_DESCRIPTOR SecurityDescriptor, PSID PrincipalSelfSid, DWORD
DesiredAccess, AUDIT_EVENT_TYPE AuditType, DWORD Flags, POBJECT_TYPE_LIST
ObjectTypeList, DWORD ObjectTypeListLength, PGENERIC_MAPPING GenericMapping,
WINBOOL ObjectCreation, LPDWORD GrantedAccess, LPDWORD AccessStatusList, LPBOOL
pfGenerateOnClose);
@@ -2308,7 +2320,6 @@ extern "C" {
WINADVAPI WINBOOL WINAPI PrivilegedServiceAuditAlarmA (LPCSTR SubsystemName,
LPCSTR ServiceName, HANDLE ClientToken, PPRIVILEGE_SET Privileges, WINBOOL
AccessGranted);
WINADVAPI WINBOOL WINAPI SetFileSecurityA (LPCSTR lpFileName,
SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR
pSecurityDescriptor);
WINADVAPI WINBOOL WINAPI GetFileSecurityA (LPCSTR lpFileName,
SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR
pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded);
- WINBASEAPI WINBOOL WINAPI ReadDirectoryChangesW (HANDLE hDirectory, LPVOID
lpBuffer, DWORD nBufferLength, WINBOOL bWatchSubtree, DWORD dwNotifyFilter,
LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped,
LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
WINBASEAPI WINBOOL WINAPI IsBadReadPtr (CONST VOID *lp, UINT_PTR ucb);
WINBASEAPI WINBOOL WINAPI IsBadWritePtr (LPVOID lp, UINT_PTR ucb);
WINBASEAPI WINBOOL WINAPI IsBadHugeReadPtr (CONST VOID *lp, UINT_PTR ucb);
--
2.20.1
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public