home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / qt3_emx.zip / mkspecs / aix-64 / qplatformdefs.h < prev   
C/C++ Source or Header  |  2001-12-03  |  2KB  |  94 lines

  1. #ifndef QPLATFORMDEFS_H
  2. #define QPLATFORMDEFS_H
  3.  
  4. // Get Qt defines/settings
  5.  
  6. #include "qglobal.h"
  7.  
  8. // Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
  9.  
  10. #include <unistd.h>
  11.  
  12.  
  13. // We are hot - unistd.h should have turned on the specific APIs we requested
  14.  
  15.  
  16. #ifdef QT_THREAD_SUPPORT
  17. #include <pthread.h>
  18. #endif
  19.  
  20. #include <dirent.h>
  21. #include <fcntl.h>
  22. #include <grp.h>
  23. #include <pwd.h>
  24. #include <signal.h>
  25. #include <strings.h> // AIX X11 headers define FD_ZERO using bzero()
  26.  
  27. #include <sys/types.h>
  28. #include <sys/ioctl.h>
  29. #include <sys/ipc.h>
  30. #include <sys/time.h>
  31. #include <sys/select.h>
  32. #include <sys/shm.h>
  33. #include <sys/socket.h>
  34. #include <sys/stat.h>
  35. #include <sys/wait.h>
  36.  
  37. // DNS header files are not fully covered by X/Open specifications.
  38. // In particular nothing is said about res_* :/
  39. // On AIX header files <netinet/in.h> and <arpa/nameser.h> are not
  40. // included by <resolv.h>. Note that <arpa/nameser.h> must be included
  41. // before <resolv.h>.
  42. #include <netinet/in.h>
  43. #define class c_class // AIX 4.3.1.0
  44. #include <arpa/nameser.h>
  45. #undef class
  46. #include <resolv.h>
  47.  
  48.  
  49. #define QT_STATBUF        struct stat
  50. #define QT_STATBUF4TSTAT    struct stat
  51. #define QT_STAT            ::stat
  52. #define QT_FSTAT        ::fstat
  53. #define QT_STAT_REG        S_IFREG
  54. #define QT_STAT_DIR        S_IFDIR
  55. #define QT_STAT_MASK        S_IFMT
  56. #define QT_STAT_LNK        S_IFLNK
  57. #define QT_FILENO        fileno
  58. #define QT_OPEN            ::open
  59. #define QT_CLOSE        ::close
  60. #define QT_LSEEK        ::lseek
  61. #define QT_READ            ::read
  62. #define QT_WRITE        ::write
  63. #define QT_ACCESS        ::access
  64. #define QT_GETCWD        ::getcwd
  65. #define QT_CHDIR        ::chdir
  66. #define QT_MKDIR        ::mkdir
  67. #define QT_RMDIR        ::rmdir
  68. #define QT_OPEN_RDONLY        O_RDONLY
  69. #define QT_OPEN_WRONLY        O_WRONLY
  70. #define QT_OPEN_RDWR        O_RDWR
  71. #define QT_OPEN_CREAT        O_CREAT
  72. #define QT_OPEN_TRUNC        O_TRUNC
  73. #define QT_OPEN_APPEND        O_APPEND
  74.  
  75. #define QT_SIGNAL_RETTYPE    void
  76. #define QT_SIGNAL_ARGS        int
  77. #define QT_SIGNAL_IGNORE    SIG_IGN
  78.  
  79. // Only AIX 4.3 and better supports 64-bit.
  80. // The AIX 4.3 online documentation says 'size_t' but a user asked IBM
  81. // and they told him the documentation is wrong. Indeed 'size_t' is
  82. // obviously wrong for 64-bit programming. And anyway 'socklen_t'
  83. // reportedly works for all AIX 4.3 users.
  84. #define QT_SOCKLEN_T        socklen_t
  85.  
  86. #if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500)
  87. // Only AIX 4.3 and better supports 64-bit.
  88. #define QT_SNPRINTF        ::snprintf
  89. #define QT_VSNPRINTF        ::vsnprintf
  90. #endif
  91.  
  92.  
  93. #endif // QPLATFORMDEFS_H
  94.