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 <dlfcn.h>
26 
27 #include <sys/types.h>
28 #include <sys/ioctl.h>
29 #include <sys/ipc.h>
30 #include <sys/time.h>
31 #include <sys/shm.h>
32 #include <sys/socket.h>
33 #include <sys/stat.h>
34 #include <sys/wait.h>
35 
36 // DNS header files are not fully covered by X/Open specifications.
37 // In particular nothing is said about res_* :/
38 // On BSDs header files <netinet/in.h> and <arpa/nameser.h> are not
39 // included by <resolv.h>. Note that <arpa/nameser.h> must be included
40 // before <resolv.h>.
41 #include <netinet/in.h>
42 #include <arpa/nameser.h>
43 #include <resolv.h>
44 
45 
46 #if !defined(QT_NO_COMPAT)
47 #define QT_STATBUF		struct stat
48 #define QT_STATBUF4TSTAT	struct stat
49 #define QT_STAT			::stat
50 #define QT_FSTAT		::fstat
51 #define QT_STAT_REG		S_IFREG
52 #define QT_STAT_DIR		S_IFDIR
53 #define QT_STAT_MASK		S_IFMT
54 #define QT_STAT_LNK		S_IFLNK
55 #define QT_FILENO		fileno
56 #define QT_OPEN			::open
57 #define QT_CLOSE		::close
58 #define QT_LSEEK		::lseek
59 #define QT_READ			::read
60 #define QT_WRITE		::write
61 #define QT_ACCESS		::access
62 #define QT_GETCWD		::getcwd
63 #define QT_CHDIR		::chdir
64 #define QT_MKDIR		::mkdir
65 #define QT_RMDIR		::rmdir
66 #define QT_OPEN_RDONLY		O_RDONLY
67 #define QT_OPEN_WRONLY		O_WRONLY
68 #define QT_OPEN_RDWR		O_RDWR
69 #define QT_OPEN_CREAT		O_CREAT
70 #define QT_OPEN_TRUNC		O_TRUNC
71 #define QT_OPEN_APPEND		O_APPEND
72 #endif
73 
74 #define QT_SIGNAL_RETTYPE	void
75 #define QT_SIGNAL_ARGS		int
76 #define QT_SIGNAL_IGNORE	SIG_IGN
77 
78 #define QT_SOCKLEN_T		socklen_t
79 #define QT_SOCKOPTLEN_T		size_t
80 
81 #define QT_SNPRINTF		::snprintf
82 #define QT_VSNPRINTF		::vsnprintf
83 
84 #endif // QPLATFORMDEFS_H
85