Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | Download | RSS feed

  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
  8.  
  9. #ifndef _WIN32
  10. #error Only Win32 target is supported!
  11. #endif
  12.  
  13. #include <_mingw.h>
  14.  
  15. #pragma pack(push,_CRT_PACKING)
  16.  
  17. #ifdef __cplusplus
  18. extern "C" {
  19. #endif
  20.  
  21. #ifndef _CRTIMP
  22. #define _CRTIMP __declspec(dllimport)
  23. #endif
  24.  
  25. #ifndef _WCHAR_T_DEFINED
  26.   typedef unsigned short wchar_t;
  27. #define _WCHAR_T_DEFINED
  28. #endif
  29.  
  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
  41.  
  42. #ifndef _TIME32_T_DEFINED
  43. #define _TIME32_T_DEFINED
  44.   typedef long __time32_t;
  45. #endif
  46.  
  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
  53.  
  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
  62.  
  63. #ifndef _UTIMBUF_DEFINED
  64. #define _UTIMBUF_DEFINED
  65.  
  66.   struct _utimbuf {
  67.     time_t actime;
  68.     time_t modtime;
  69.   };
  70.  
  71.   struct __utimbuf32 {
  72.     __time32_t actime;
  73.     __time32_t modtime;
  74.   };
  75.  
  76. #if _INTEGRAL_MAX_BITS >= 64
  77.   struct __utimbuf64 {
  78.     __time64_t actime;
  79.     __time64_t modtime;
  80.   };
  81. #endif
  82.  
  83. #ifndef NO_OLDNAMES
  84.   struct utimbuf {
  85.     time_t actime;
  86.     time_t modtime;
  87.   };
  88.  
  89.   struct utimbuf32 {
  90.     __time32_t actime;
  91.     __time32_t modtime;
  92.   };
  93. #endif
  94. #endif
  95.  
  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
  104.  
  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);
  109. }
  110. __CRT_INLINE int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) {
  111.   return _futime32(_Desc,(struct __utimbuf32 *)_Utimbuf);
  112. }
  113. __CRT_INLINE int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf) {
  114.   return _wutime32(_Filename,(struct __utimbuf32 *)_Utimbuf);
  115. }
  116. #else
  117. __CRT_INLINE int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf) {
  118.   return _utime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
  119. }
  120. __CRT_INLINE int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) {
  121.   return _futime64(_Desc,(struct __utimbuf64 *)_Utimbuf);
  122. }
  123. __CRT_INLINE int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf) {
  124.   return _wutime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
  125. }
  126. #endif
  127.  
  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);
  132. }
  133. #else
  134. __CRT_INLINE int __cdecl utime(const char *_Filename,struct utimbuf *_Utimbuf) {
  135.   return _utime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
  136. }
  137. #endif
  138. #endif
  139. #endif
  140.  
  141. #ifdef __cplusplus
  142. }
  143. #endif
  144.  
  145. #pragma pack(pop)
  146. #endif
  147.