Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef _UNISTD_H
      7 #define _UNISTD_H
      8 #define __UNISTD_H_SOURCED__ 1
      9 
     10 #include <io.h>
     11 #include <process.h>
     12 #include <getopt.h>
     13 
     14 /* These are also defined in stdio.h. */
     15 #ifndef SEEK_SET
     16 #define SEEK_SET 0
     17 #define SEEK_CUR 1
     18 #define SEEK_END 2
     19 #endif
     20 
     21 /* These are also defined in stdio.h. */
     22 #ifndef STDIN_FILENO
     23 #define STDIN_FILENO  0
     24 #define STDOUT_FILENO 1
     25 #define STDERR_FILENO 2
     26 #endif
     27 
     28 #ifdef __cplusplus
     29 extern "C" {
     30 #endif
     31 
     32 #pragma push_macro("sleep")
     33 #undef sleep
     34 unsigned int __cdecl sleep (unsigned int);
     35 #pragma pop_macro("sleep")
     36 
     37 #if !defined __NO_ISOCEXT
     38 #include <sys/types.h> /* For useconds_t. */
     39 
     40 int __cdecl __MINGW_NOTHROW usleep(useconds_t);
     41 #endif  /* Not __NO_ISOCEXT */
     42 
     43 #ifndef FTRUNCATE_DEFINED
     44 #define FTRUNCATE_DEFINED
     45 /* This is defined as a real library function to allow autoconf
     46    to verify its existence. */
     47 #if !defined(NO_OLDNAMES) || defined(_POSIX)
     48 int ftruncate(int, off32_t);
     49 int ftruncate64(int, off64_t);
     50 int truncate(const char *, off32_t);
     51 int truncate64(const char *, off64_t);
     52 #ifndef __CRT__NO_INLINE
     53 __CRT_INLINE int ftruncate(int __fd, off32_t __length)
     54 {
     55   return _chsize (__fd, __length);
     56 }
     57 #endif /* !__CRT__NO_INLINE */
     58 #else
     59 int ftruncate(int, _off_t);
     60 int ftruncate64(int, _off64_t);
     61 int truncate(const char *, _off_t);
     62 int truncate64(const char *, _off64_t);
     63 #ifndef __CRT__NO_INLINE
     64 __CRT_INLINE int ftruncate(int __fd, _off_t __length)
     65 {
     66   return _chsize (__fd, __length);
     67 }
     68 #endif /* !__CRT__NO_INLINE */
     69 #endif
     70 #endif /* FTRUNCATE_DEFINED */
     71 
     72 #ifndef _FILE_OFFSET_BITS_SET_FTRUNCATE
     73 #define _FILE_OFFSET_BITS_SET_FTRUNCATE
     74 #if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
     75 #define ftruncate ftruncate64
     76 #endif /* _FILE_OFFSET_BITS_SET_FTRUNCATE */
     77 #endif /* _FILE_OFFSET_BITS_SET_FTRUNCATE */
     78 
     79 #ifndef _CRT_SWAB_DEFINED
     80 #define _CRT_SWAB_DEFINED /* Also in stdlib.h */
     81   void __cdecl swab(char *_Buf1,char *_Buf2,int _SizeInBytes) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
     82 #endif
     83 
     84 #ifdef __cplusplus
     85 }
     86 #endif
     87 
     88 #include <pthread_unistd.h>
     89 
     90 #undef __UNISTD_H_SOURCED__
     91 #endif /* _UNISTD_H */
     92 
     93