add version number to manpage
[tinycc.git] / win32 / include / sys / utime.h
blobfec8304ff582d6179eb0e19c30d987782382ff5c
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
5 */
6 #ifndef _INC_UTIME
7 #define _INC_UTIME
9 #ifndef _WIN32
10 #error Only Win32 target is supported!
11 #endif
13 #include <_mingw.h>
15 #pragma pack(push,_CRT_PACKING)
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
21 #ifndef _CRTIMP
22 #define _CRTIMP __declspec(dllimport)
23 #endif
25 #ifndef _WCHAR_T_DEFINED
26 typedef unsigned short wchar_t;
27 #define _WCHAR_T_DEFINED
28 #endif
30 #ifndef __TINYC__ /* gr */
31 #ifdef _USE_32BIT_TIME_T
32 #ifdef _WIN64
33 #undef _USE_32BIT_TIME_T
34 #endif
35 #else
36 #if _INTEGRAL_MAX_BITS < 64
37 #define _USE_32BIT_TIME_T
38 #endif
39 #endif
40 #endif
42 #ifndef _TIME32_T_DEFINED
43 #define _TIME32_T_DEFINED
44 typedef long __time32_t;
45 #endif
47 #ifndef _TIME64_T_DEFINED
48 #define _TIME64_T_DEFINED
49 #if _INTEGRAL_MAX_BITS >= 64
50 typedef __int64 __time64_t;
51 #endif
52 #endif
54 #ifndef _TIME_T_DEFINED
55 #define _TIME_T_DEFINED
56 #ifdef _USE_32BIT_TIME_T
57 typedef __time32_t time_t;
58 #else
59 typedef __time64_t time_t;
60 #endif
61 #endif
63 #ifndef _UTIMBUF_DEFINED
64 #define _UTIMBUF_DEFINED
66 struct _utimbuf {
67 time_t actime;
68 time_t modtime;
71 struct __utimbuf32 {
72 __time32_t actime;
73 __time32_t modtime;
76 #if _INTEGRAL_MAX_BITS >= 64
77 struct __utimbuf64 {
78 __time64_t actime;
79 __time64_t modtime;
81 #endif
83 #ifndef NO_OLDNAMES
84 struct utimbuf {
85 time_t actime;
86 time_t modtime;
89 struct utimbuf32 {
90 __time32_t actime;
91 __time32_t modtime;
93 #endif
94 #endif
96 _CRTIMP int __cdecl _utime32(const char *_Filename,struct __utimbuf32 *_Time);
97 _CRTIMP int __cdecl _futime32(int _FileDes,struct __utimbuf32 *_Time);
98 _CRTIMP int __cdecl _wutime32(const wchar_t *_Filename,struct __utimbuf32 *_Time);
99 #if _INTEGRAL_MAX_BITS >= 64
100 _CRTIMP int __cdecl _utime64(const char *_Filename,struct __utimbuf64 *_Time);
101 _CRTIMP int __cdecl _futime64(int _FileDes,struct __utimbuf64 *_Time);
102 _CRTIMP int __cdecl _wutime64(const wchar_t *_Filename,struct __utimbuf64 *_Time);
103 #endif
105 #ifndef RC_INVOKED
106 #ifdef _USE_32BIT_TIME_T
107 __CRT_INLINE int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf) {
108 return _utime32(_Filename,(struct __utimbuf32 *)_Utimbuf);
110 __CRT_INLINE int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) {
111 return _futime32(_Desc,(struct __utimbuf32 *)_Utimbuf);
113 __CRT_INLINE int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf) {
114 return _wutime32(_Filename,(struct __utimbuf32 *)_Utimbuf);
116 #else
117 __CRT_INLINE int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf) {
118 return _utime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
120 __CRT_INLINE int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) {
121 return _futime64(_Desc,(struct __utimbuf64 *)_Utimbuf);
123 __CRT_INLINE int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf) {
124 return _wutime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
126 #endif
128 #ifndef NO_OLDNAMES
129 #ifdef _USE_32BIT_TIME_T
130 __CRT_INLINE int __cdecl utime(const char *_Filename,struct utimbuf *_Utimbuf) {
131 return _utime32(_Filename,(struct __utimbuf32 *)_Utimbuf);
133 #else
134 __CRT_INLINE int __cdecl utime(const char *_Filename,struct utimbuf *_Utimbuf) {
135 return _utime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
137 #endif
138 #endif
139 #endif
141 #ifdef __cplusplus
143 #endif
145 #pragma pack(pop)
146 #endif