#ifndef TQPLATFORMDEFS_H #define TQPLATFORMDEFS_H // Get TQt defines/settings #include "tqglobal.h" // Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs // DNS system header files are a mess! // includes . is using // 'u_char' and includes . Now the problem is that // defines 'u_char' only if __USE_BSD is defined. // __USE_BSD is defined in if _BSD_SOURCE is defined. #ifndef _BSD_SOURCE # define _BSD_SOURCE #endif // 1) need to reset default environment if _BSD_SOURCE is defined // 2) need to specify POSIX thread interfaces explicitly in glibc 2.0 // 3) it seems older glibc need this to include the X/Open stuff #ifndef _GNU_SOURCE # define _GNU_SOURCE #endif #include // We are hot - unistd.h should have turned on the specific APIs we requested #ifdef TQT_THREAD_SUPPORT #include #endif #include #include #include #include #include #include #include #include #include #include #include #include #include #include // DNS header files are not fully covered by X/Open specifications. // In particular nothing is said about res_* :/ // Header files and are not included // by on older versions of the GNU C library. Note that // must be included before . #include #include #include #if !defined(TQT_NO_COMPAT) #define TQT_STATBUF struct stat #define TQT_STATBUF4TSTAT struct stat #define TQT_STAT ::stat #define TQT_FSTAT ::fstat #define TQT_STAT_REG S_IFREG #define TQT_STAT_DIR S_IFDIR #define TQT_STAT_MASK S_IFMT #define TQT_STAT_LNK S_IFLNK #define TQT_FILENO fileno #define TQT_OPEN ::open #define TQT_CLOSE ::close #define TQT_LSEEK ::lseek #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 #endif #define TQT_SIGNAL_RETTYPE void #define TQT_SIGNAL_ARGS int #define TQT_SIGNAL_IGNORE SIG_IGN #if defined(__GLIBC__) && (__GLIBC__ >= 2) #define TQT_SOCKLEN_T socklen_t #else #define TQT_SOCKLEN_T int #endif #if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500) #define TQT_SNPRINTF ::snprintf #define TQT_VSNPRINTF ::vsnprintf #endif #define TQT_MITSHM #endif // TQPLATFORMDEFS_H