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/* Used by shutdown(2). */ 29#ifdef _POSIX_SOURCE 30 31/* MySql connector already defined SHUT_RDWR. */ 32#ifndef SHUT_RDWR 33#define SHUT_RD 0x00 34#define SHUT_WR 0x01 35#define SHUT_RDWR 0x02 36#endif 37 38#endif 39 40#ifdef __cplusplus 41extern "C" { 42#endif 43 44#pragma push_macro("sleep") 45#undef sleep 46unsigned int __cdecl sleep (unsigned int); 47#pragma pop_macro("sleep") 48 49#if !defined __NO_ISOCEXT 50#include <sys/types.h> /* For useconds_t. */ 51 52int __cdecl __MINGW_NOTHROW usleep(useconds_t); 53#endif /* Not __NO_ISOCEXT */ 54 55#ifndef FTRUNCATE_DEFINED 56#define FTRUNCATE_DEFINED 57/* This is defined as a real library function to allow autoconf 58 to verify its existence. */ 59#if !defined(NO_OLDNAMES) || defined(_POSIX) 60int ftruncate(int, off32_t); 61int ftruncate64(int, off64_t); 62int truncate(const char *, off32_t); 63int truncate64(const char *, off64_t); 64#ifndef __CRT__NO_INLINE 65__CRT_INLINE int ftruncate(int __fd, off32_t __length) 66{ 67 return _chsize (__fd, __length); 68} 69#endif /* !__CRT__NO_INLINE */ 70#else 71int ftruncate(int, _off_t); 72int ftruncate64(int, _off64_t); 73int truncate(const char *, _off_t); 74int truncate64(const char *, _off64_t); 75#ifndef __CRT__NO_INLINE 76__CRT_INLINE int ftruncate(int __fd, _off_t __length) 77{ 78 return _chsize (__fd, __length); 79} 80#endif /* !__CRT__NO_INLINE */ 81#endif 82#endif /* FTRUNCATE_DEFINED */ 83 84#ifndef _FILE_OFFSET_BITS_SET_FTRUNCATE 85#define _FILE_OFFSET_BITS_SET_FTRUNCATE 86#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64)) 87#define ftruncate ftruncate64 88#endif /* _FILE_OFFSET_BITS_SET_FTRUNCATE */ 89#endif /* _FILE_OFFSET_BITS_SET_FTRUNCATE */ 90 91#ifndef _CRT_SWAB_DEFINED 92#define _CRT_SWAB_DEFINED /* Also in stdlib.h */ 93 void __cdecl swab(char *_Buf1,char *_Buf2,int _SizeInBytes) __MINGW_ATTRIB_DEPRECATED_MSVC2005; 94#endif 95 96#ifndef _CRT_GETPID_DEFINED 97#define _CRT_GETPID_DEFINED /* Also in process.h */ 98 int __cdecl getpid(void) __MINGW_ATTRIB_DEPRECATED_MSVC2005; 99#endif 100 101#ifdef __cplusplus 102} 103#endif 104 105#include <pthread_unistd.h> 106 107#undef __UNISTD_H_SOURCED__ 108#endif /* _UNISTD_H */ 109 110