#ifndef TQPLATFORMDEFS_H #define TQPLATFORMDEFS_H #ifdef UNICODE #ifndef _UNICODE #define _UNICODE #endif #endif // Get TQt defines/settings #include "tqglobal.h" #define TQ_FS_FAT #define _POSIX_ #include #undef _POSIX_ #include #include #include #include #include #include #include #include #include #include #if __BORLANDC__ >= 0x550 // Borland Builder 6 #ifdef TQT_LARGEFILE_SUPPORT # define TQT_STATBUF struct stati64 // non-ANSI defs # define TQT_STATBUF4TSTAT struct stati64 // non-ANSI defs # define TQT_STAT ::_stati64 # define TQT_FSTAT ::fstati64 # define TQT_LSEEK ::_lseeki64 # define TQT_TSTAT ::_tstati64 #else # define TQT_STATBUF struct stat // non-ANSI defs # define TQT_STATBUF4TSTAT struct _stat // non-ANSI defs # define TQT_STAT ::stat # define TQT_FSTAT ::fstat # define TQT_LSEEK ::_lseek # define TQT_TSTAT ::_tstat #endif #define TQT_STAT_REG _S_IFREG #define TQT_STAT_DIR _S_IFDIR #define TQT_STAT_MASK _S_IFMT #if defined(_S_IFLNK) # define TQT_STAT_LNK _S_IFLNK #endif #define TQT_FILENO _fileno #define TQT_OPEN ::open #define TQT_CLOSE ::_close #define TQT_READ ::_read #define TQT_WRITE ::_write #define TQT_ACCESS ::_access #define TQT_GETCWD ::_getcwd #define TQT_CHDIR ::chdir #define TQT_MKDIR ::_mkdir #define TQT_RMDIR ::_rmdir #define TQT_OPEN_RDONLY _O_RDONLY #define TQT_OPEN_WRONLY _O_WRONLY #define TQT_OPEN_RDWR _O_RDWR #define TQT_OPEN_CREAT _O_CREAT #define TQT_OPEN_TRUNC _O_TRUNC #define TQT_OPEN_APPEND _O_APPEND #if defined(O_TEXT) # define TQT_OPEN_TEXT _O_TEXT # define TQT_OPEN_BINARY _O_BINARY #endif #else // Borland Builder 5 #ifdef TQT_LARGEFILE_SUPPORT # define TQT_STATBUF struct stati64 // non-ANSI defs # define TQT_STATBUF4TSTAT struct stati64 // non-ANSI defs # define TQT_STAT ::stati64 # define TQT_FSTAT ::fstati64 # define TQT_LSEEK ::lseeki64 # define TQT_TSTAT ::tstati64 #else # define TQT_STATBUF struct stat // non-ANSI defs # define TQT_STATBUF4TSTAT struct stat // non-ANSI defs # define TQT_STAT ::stat # define TQT_FSTAT ::fstat # define TQT_LSEEK ::lseek # define TQT_TSTAT ::tstat #endif #define TQT_STAT_REG S_IFREG #define TQT_STAT_DIR S_IFDIR #define TQT_STAT_MASK S_IFMT #if defined(S_IFLNK) # define TQT_STAT_LNK S_IFLNK #endif #define TQT_FILENO fileno #define TQT_OPEN ::open #define TQT_CLOSE ::close #define TQT_READ ::read #define TQT_WRITE ::write #define TQT_ACCESS ::access #if defined(TQ_OS_OS2EMX) // This is documented in the un*x to OS/2-EMX Porting FAQ: // http://homepages.tu-darmstadt.de/~st002279/os2/porting.html # define TQT_GETCWD ::_getcwd2 # define TQT_CHDIR ::_chdir2 #else # define TQT_GETCWD ::getcwd # define TQT_CHDIR ::chdir #endif #define TQT_MKDIR ::mkdir #define TQT_RMDIR ::rmdir #define TQT_OPEN_RDONLY O_RDONLY #define TQT_OPEN_WRONLY O_WRONLY #define TQT_OPEN_RDWR O_RDWR #define TQT_OPEN_CREAT O_CREAT #define TQT_OPEN_TRUNC O_TRUNC #define TQT_OPEN_APPEND O_APPEND #if defined(O_TEXT) # define TQT_OPEN_TEXT O_TEXT # define TQT_OPEN_BINARY O_BINARY #endif #endif // __BORLANDC__ >= 0x550 // Borland Builder 5 and 6 #define TQT_SIGNAL_ARGS int #define TQT_VSNPRINTF ::_vsnprintf #define TQT_SNPRINTF ::_snprintf # define F_OK 0 # define X_OK 1 # define W_OK 2 # define R_OK 4 #endif // TQPLATFORMDEFS_H