#ifndef _W32COMPAT_H_ #define _W32COMPAT_H_ 1 #include #include #include #include #include #include #include #include <../include/process.h> #include #include #define dev_t _dev_t #define fstat _fstat #define chmod _chmod #include #include <../include/sys/time.h> #include #include #include typedef unsigned int sigset_t; typedef unsigned int ssize_t; #ifndef _WIN64 typedef unsigned short mode_t; #endif #if 0 struct timezone { int tz_minuteswest; /* minutes west of Greenwich */ int tz_dsttime; /* type of dst correction */ }; #endif void gettimeofday (struct timeval *, struct timezone *); struct tm *gmtime_r (time_t const * __restrict, struct tm * __restrict); struct tm *localtime_r (time_t const * __restrict, struct tm * __restrict); #include #include #define inline __inline #ifndef O_RDONLY #define O_RDONLY _O_RDONLY #endif #ifndef O_WRONLY #define O_WRONLY _O_WRONLY #endif #ifndef O_RDWR #define O_RDWR _O_RDWR #endif #ifndef O_APPEND #define O_APPEND _O_APPEND #endif #ifndef O_CREAT #define O_CREAT _O_CREAT #endif #ifndef O_TRUNC #define O_TRUNC _O_TRUNC #endif #ifndef O_EXCL #define O_EXCL _O_EXCL #endif #ifndef O_TEXT #define O_TEXT _O_TEXT #endif #ifndef O_BINARY #define O_BINARY _O_BINARY #endif #ifndef O_RAW #define O_RAW _O_BINARY #endif #ifndef O_TEMPORARY #define O_TEMPORARY _O_TEMPORARY #endif #ifndef O_NOINHERIT #define O_NOINHERIT _O_NOINHERIT #endif #ifndef O_SEQUENTIAL #define O_SEQUENTIAL _O_SEQUENTIAL #endif #ifndef O_RANDOM #define O_RANDOM _O_RANDOM #endif #define alloca _alloca #define stricmp _stricmp #define access _access #define chmod _chmod #define chsize _chsize #define close _close #define creat _creat #define dup _dup #define dup2 _dup2 #if 0 /* This one conflicts with texk/web2/lib/eofeoln.c */ #define eof _eof #endif #define filelength _filelength #define isatty _isatty #define locking _locking #define lseek _lseek #define mktemp _mktemp #define open _open #define read _read #define setmode _setmode #define sopen _sopen #define tell _tell #define umask _umask #define unlink _unlink #define write _write #define cgets _cgets #define cprintf _cprintf #define cputs _cputs #define cscanf _cscanf #define inp _inp #define inpw _inpw #define getch _getch #define getche _getche #define kbhit _kbhit #define outp _outp #define outpw _outpw #define putch _putch #define ungetch _ungetch #define chdir _chdir #define getcwd _getcwd #define mkdir _mkdir #define rmdir _rmdir #define CLK_TCK CLOCKS_PER_SEC #if _MSC_VER <= 1310 #define timezone _timezone #endif #define daylight _daylight #define tzname _tzname #define tzset _tzset #define P_WAIT _P_WAIT #define P_NOWAIT _P_NOWAIT #define P_OVERLAY _P_OVERLAY #define OLD_P_OVERLAY _OLD_P_OVERLAY #define P_NOWAITO _P_NOWAITO #define P_DETACH _P_DETACH #define WAIT_CHILD _WAIT_CHILD #define WAIT_GRANDCHILD _WAIT_GRANDCHILD #define cwait _cwait #define execl _execl #define execle _execle #define execlp _execlp #define execlpe _execlpe #define execv _execv #define execve _execve #define execvp _execvp #define execvpe _execvpe #define spawnl _spawnl #define spawnle _spawnle #define spawnlp _spawnlp #define spawnlpe _spawnlpe #define spawnv _spawnv #define spawnve _spawnve #define spawnvp _spawnvp #define spawnvpe _spawnvpe #define getpid _getpid #define P_tmpdir _P_tmpdir #define SYS_OPEN _SYS_OPEN #define fcloseall _fcloseall #define fdopen _fdopen #define fgetchar _fgetchar #define fileno _fileno #define flushall _flushall #define fputchar _fputchar #define getw _getw #define putw _putw #define rmtmp _rmtmp #define tempnam _tempnam #define unlink _unlink #define sys_errlist _sys_errlist #define sys_nerr _sys_nerr #define environ _environ #define onexit_t _onexit_t #define ecvt _ecvt #define fcvt _fcvt #define gcvt _gcvt #define itoa _itoa #define ltoa _ltoa #define onexit _onexit #define putenv _putenv #define swab _swab #define ultoa _ultoa #ifndef S_IFMT #define S_IFMT _S_IFMT #endif #ifndef S_IFDIR #define S_IFDIR _S_IFDIR #endif #ifndef S_IFCHR #define S_IFCHR _S_IFCHR #endif #ifndef S_IFIFO #define S_IFIFO _S_IFIFO #endif #ifndef S_IFREG #define S_IFREG _S_IFREG #endif #ifndef S_IREAD #define S_IREAD _S_IREAD #endif #ifndef S_IWRITE #define S_IWRITE _S_IWRITE #endif #ifndef S_IEXEC #define S_IEXEC _S_IEXEC #endif #ifndef S_IXUSR #define S_IXUSR _S_IEXEC #endif #ifndef S_IXGRP #define S_IXGRP _S_IEXEC #endif #ifndef S_IXOTH #define S_IXOTH _S_IEXEC #endif #ifndef S_IRUSR #define S_IRUSR _S_IREAD #endif #ifndef S_IRGRP #define S_IRGRP _S_IREAD #endif #ifndef S_IROTH #define S_IROTH _S_IREAD #endif #ifndef S_IWUSR #define S_IWUSR _S_IWRITE #endif #ifndef S_IWGRP #define S_IWGRP _S_IWRITE #endif #ifndef S_IWOTH #define S_IWOTH _S_IWRITE #endif #if 0 #define stat _stat64i32 #endif typedef long off_t; /* from string.h */ #define memccpy _memccpy #define memicmp _memicmp #define strcmpi _strcmpi #define stricmp _stricmp #define strdup _strdup #define strlwr _strlwr #define strnicmp _strnicmp #define strnset _strnset #define strrev _strrev #define strset _strset #define strupr _strupr #define wcsdup _wcsdup #define isascii __isascii #define toascii __toascii #define iscsymf __iscsymf #define iscsym __iscsym #define timeb __timeb32 #define ftime _ftime #define utimbuf _utimbuf #define utime _utime #define locking _locking #define LK_LOCK _LK_LOCK #define LK_NBLCK _LK_NBLCK #define LK_NBRLCK _LK_NBRLCK #define LK_RLCK _LK_RLCK #define LK_UNLCK _LK_UNLCK #endif