Piotr Caban : include: Add corecrt_io.h header.

Alexandre Julliard julliard at winehq.org
Fri Dec 4 14:36:03 CST 2020


Module: wine
Branch: master
Commit: 713364f35c3ba97a8b121a00c7f3287c2c2816bd
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=713364f35c3ba97a8b121a00c7f3287c2c2816bd

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Fri Dec  4 15:50:07 2020 +0100

include: Add corecrt_io.h header.

Signed-off-by: Piotr Caban <piotr at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 include/Makefile.in         |   1 +
 include/msvcrt/corecrt_io.h | 109 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 110 insertions(+)

diff --git a/include/Makefile.in b/include/Makefile.in
index 9b6858b78f9..74a1d8e0c89 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -446,6 +446,7 @@ SOURCES = \
 	msvcrt/complex.h \
 	msvcrt/conio.h \
 	msvcrt/corecrt.h \
+	msvcrt/corecrt_io.h \
 	msvcrt/corecrt_startup.h \
 	msvcrt/corecrt_stdio_config.h \
 	msvcrt/corecrt_wctype.h \
diff --git a/include/msvcrt/corecrt_io.h b/include/msvcrt/corecrt_io.h
new file mode 100644
index 00000000000..d7554c3b1c6
--- /dev/null
+++ b/include/msvcrt/corecrt_io.h
@@ -0,0 +1,109 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the Wine project.
+ */
+
+#ifndef _IO_DEFINED
+#define _IO_DEFINED
+
+#include <corecrt_wio.h>
+
+#include <pshpack8.h>
+
+#if defined(_USE_32BIT_TIME_T)
+# define _finddata_t     _finddata32_t
+# define _finddatai64_t  _finddata32i64_t
+#else
+# define _finddata_t     _finddata64i32_t
+# define _finddatai64_t  _finddata64_t
+#endif
+
+struct _finddata32_t {
+  unsigned   attrib;
+  __time32_t time_create;
+  __time32_t time_access;
+  __time32_t time_write;
+  _fsize_t   size;
+  char       name[260];
+};
+
+struct _finddata32i64_t {
+  unsigned   attrib;
+  __time32_t time_create;
+  __time32_t time_access;
+  __time32_t time_write;
+  __int64    DECLSPEC_ALIGN(8) size;
+  char       name[260];
+};
+
+struct _finddata64i32_t {
+  unsigned   attrib;
+  __time64_t time_create;
+  __time64_t time_access;
+  __time64_t time_write;
+  _fsize_t   size;
+  char       name[260];
+};
+
+struct _finddata64_t {
+  unsigned   attrib;
+  __time64_t time_create;
+  __time64_t time_access;
+  __time64_t time_write;
+  __int64    DECLSPEC_ALIGN(8) size;
+  char       name[260];
+};
+
+#ifdef _UCRT
+# ifdef _USE_32BIT_TIME_T
+#  define _findfirst      _findfirst32
+#  define _findfirsti64   _findfirst32i64
+#  define _findnext       _findnext32
+#  define _findnexti64    _findnext32i64
+# else
+#  define _findfirst      _findfirst64i32
+#  define _findfirsti64   _findfirst64
+#  define _findnext       _findnext64i32
+#  define _findnexti64    _findnext64
+# endif
+#else /* _UCRT */
+# ifdef _USE_32BIT_TIME_T
+#  define _findfirst32    _findfirst
+#  define _findfirst32i64 _findfirsti64
+#  define _findnext32     _findnext
+#  define _findnext32i64  _findnexti64
+# else
+#  define _findfirst64i32 _findfirst
+#  define _findfirst64    _findfirsti64
+#  define _findnext64i32  _findnext
+#  define _findnext64     _findnexti64
+# endif
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+_ACRTIMP int      __cdecl _access(const char*,int);
+_ACRTIMP int      __cdecl _chmod(const char*,int);
+_ACRTIMP int      __cdecl _creat(const char*,int);
+_ACRTIMP intptr_t __cdecl _findfirst32(const char*,struct _finddata32_t*);
+_ACRTIMP intptr_t __cdecl _findfirst32i64(const char*, struct _finddata32i64_t*);
+_ACRTIMP intptr_t __cdecl _findfirst64(const char*,struct _finddata64_t*);
+_ACRTIMP intptr_t __cdecl _findfirst64i32(const char*, struct _finddata64i32_t*);
+_ACRTIMP int      __cdecl _findnext32(intptr_t,struct _finddata32_t*);
+_ACRTIMP int      __cdecl _findnext32i64(intptr_t,struct _finddata32i64_t*);
+_ACRTIMP int      __cdecl _findnext64(intptr_t,struct _finddata64_t*);
+_ACRTIMP int      __cdecl _findnext64i32(intptr_t,struct _finddata64i32_t*);
+_ACRTIMP char*    __cdecl _mktemp(char*);
+_ACRTIMP int      WINAPIV _open(const char*,int,...);
+_ACRTIMP int      WINAPIV _sopen(const char*,int,int,...);
+_ACRTIMP int      __cdecl _unlink(const char*);
+
+#ifdef __cplusplus
+}
+#endif
+
+#include <poppack.h>
+
+#endif /* _IO_DEFINED */




More information about the wine-cvs mailing list