Diffstat (limited to 'mkspecs/solaris-cc/qplatformdefs.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | mkspecs/solaris-cc/qplatformdefs.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/mkspecs/solaris-cc/qplatformdefs.h b/mkspecs/solaris-cc/qplatformdefs.h index f9480a9..9506b3c 100644 --- a/mkspecs/solaris-cc/qplatformdefs.h +++ b/mkspecs/solaris-cc/qplatformdefs.h | |||
@@ -1,32 +1,33 @@ | |||
1 | #ifndef QPLATFORMDEFS_H | 1 | #ifndef QPLATFORMDEFS_H |
2 | #define QPLATFORMDEFS_H | 2 | #define QPLATFORMDEFS_H |
3 | 3 | ||
4 | // Get Qt defines/settings | 4 | // Get Qt defines/settings |
5 | 5 | ||
6 | #include "qglobal.h" | 6 | #include "qglobal.h" |
7 | 7 | ||
8 | // Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs | 8 | // Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs |
9 | #define _POSIX_PTHREAD_SEMANTICS | ||
9 | 10 | ||
10 | #include <unistd.h> | 11 | #include <unistd.h> |
11 | 12 | ||
12 | 13 | ||
13 | // We are hot - unistd.h should have turned on the specific APIs we requested | 14 | // We are hot - unistd.h should have turned on the specific APIs we requested |
14 | 15 | ||
15 | 16 | ||
16 | #ifdef QT_THREAD_SUPPORT | 17 | #ifdef QT_THREAD_SUPPORT |
17 | #include <pthread.h> | 18 | #include <pthread.h> |
18 | #endif | 19 | #endif |
19 | 20 | ||
20 | #include <dirent.h> | 21 | #include <dirent.h> |
21 | #include <fcntl.h> | 22 | #include <fcntl.h> |
22 | #include <grp.h> | 23 | #include <grp.h> |
23 | #include <pwd.h> | 24 | #include <pwd.h> |
24 | #include <signal.h> | 25 | #include <signal.h> |
25 | #include <dlfcn.h> | 26 | #include <dlfcn.h> |
26 | 27 | ||
27 | #include <sys/types.h> | 28 | #include <sys/types.h> |
28 | #include <sys/ioctl.h> | 29 | #include <sys/ioctl.h> |
29 | #include <sys/filio.h> | 30 | #include <sys/filio.h> |
30 | #include <sys/ipc.h> | 31 | #include <sys/ipc.h> |
31 | #include <sys/time.h> | 32 | #include <sys/time.h> |
32 | #include <sys/shm.h> | 33 | #include <sys/shm.h> |
@@ -56,55 +57,58 @@ | |||
56 | #define QT_FILENO fileno | 57 | #define QT_FILENO fileno |
57 | #define QT_OPEN ::open | 58 | #define QT_OPEN ::open |
58 | #define QT_CLOSE ::close | 59 | #define QT_CLOSE ::close |
59 | #define QT_LSEEK ::lseek | 60 | #define QT_LSEEK ::lseek |
60 | #define QT_READ ::read | 61 | #define QT_READ ::read |
61 | #define QT_WRITE ::write | 62 | #define QT_WRITE ::write |
62 | #define QT_ACCESS ::access | 63 | #define QT_ACCESS ::access |
63 | #define QT_GETCWD ::getcwd | 64 | #define QT_GETCWD ::getcwd |
64 | #define QT_CHDIR ::chdir | 65 | #define QT_CHDIR ::chdir |
65 | #define QT_MKDIR ::mkdir | 66 | #define QT_MKDIR ::mkdir |
66 | #define QT_RMDIR ::rmdir | 67 | #define QT_RMDIR ::rmdir |
67 | #define QT_OPEN_RDONLY O_RDONLY | 68 | #define QT_OPEN_RDONLY O_RDONLY |
68 | #define QT_OPEN_WRONLY O_WRONLY | 69 | #define QT_OPEN_WRONLY O_WRONLY |
69 | #define QT_OPEN_RDWR O_RDWR | 70 | #define QT_OPEN_RDWR O_RDWR |
70 | #define QT_OPEN_CREAT O_CREAT | 71 | #define QT_OPEN_CREAT O_CREAT |
71 | #define QT_OPEN_TRUNC O_TRUNC | 72 | #define QT_OPEN_TRUNC O_TRUNC |
72 | #define QT_OPEN_APPEND O_APPEND | 73 | #define QT_OPEN_APPEND O_APPEND |
73 | #endif | 74 | #endif |
74 | 75 | ||
75 | #define QT_SIGNAL_RETTYPEvoid | 76 | #define QT_SIGNAL_RETTYPEvoid |
76 | #define QT_SIGNAL_ARGS int | 77 | #define QT_SIGNAL_ARGS int |
77 | #define QT_SIGNAL_IGNORESIG_IGN | 78 | #define QT_SIGNAL_IGNORESIG_IGN |
78 | 79 | ||
79 | #if !defined(_XOPEN_UNIX) | 80 | #if !defined(_XOPEN_UNIX) |
80 | // Function usleep() is in C library but not in header files on Solaris 2.5.1. | 81 | // Function usleep() is defined in C library but not declared in header files |
81 | // Not really a surprise, usleep() is specified by XPG4v2 and XPG4v2 is only | 82 | // on Solaris 2.5.1. Not really a surprise, usleep() is specified by XPG4v2 |
82 | // supported by Solaris 2.6 and better. | 83 | // and XPG4v2 is only supported by Solaris 2.6 and better. |
84 | // Function gethostname() is defined in C library but not declared in <unistd.h> | ||
85 | // on Solaris 2.5.1. | ||
83 | // So we are trying to detect Solaris 2.5.1 using macro _XOPEN_UNIX which is | 86 | // So we are trying to detect Solaris 2.5.1 using macro _XOPEN_UNIX which is |
84 | // not defined by <unistd.h> when XPG4v2 is not supported. | 87 | // not defined by <unistd.h> when XPG4v2 is not supported. |
85 | typedef unsigned int useconds_t; | 88 | typedef unsigned int useconds_t; |
86 | extern "C" int usleep(useconds_t); | 89 | extern "C" int usleep(useconds_t); |
90 | extern "C" int gethostname(char *, int); | ||
87 | #endif | 91 | #endif |
88 | 92 | ||
89 | #if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE-0 >= 500) && (_XOPEN_VERSION-0 >= 500) | 93 | #if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE-0 >= 500) && (_XOPEN_VERSION-0 >= 500) |
90 | // on Solaris 7 and better with specific feature test macros | 94 | // on Solaris 7 and better with specific feature test macros |
91 | #define QT_SOCKLEN_T socklen_t | 95 | #define QT_SOCKLEN_T socklen_t |
92 | #elif defined(_XOPEN_SOURCE_EXTENDED) && (_XOPEN_VERSION-0 >= 4) | 96 | #elif defined(_XOPEN_SOURCE_EXTENDED) && (_XOPEN_VERSION-0 >= 4) |
93 | // on Solaris 2.6 and better with specific feature test macros | 97 | // on Solaris 2.6 and better with specific feature test macros |
94 | #define QT_SOCKLEN_T size_t | 98 | #define QT_SOCKLEN_T size_t |
95 | #else | 99 | #else |
96 | // always this case in practice | 100 | // always this case in practice |
97 | #define QT_SOCKLEN_T int | 101 | #define QT_SOCKLEN_T int |
98 | #endif | 102 | #endif |
99 | 103 | ||
100 | #if defined(_XOPEN_UNIX) | 104 | #if defined(_XOPEN_UNIX) |
101 | // Supported by Solaris 2.6 and better. XPG4v2 and XPG4v2 is also supported | 105 | // Supported by Solaris 2.6 and better. XPG4v2 and XPG4v2 is also supported |
102 | // by Solaris 2.6 and better. So we are trying to detect Solaris 2.6 using | 106 | // by Solaris 2.6 and better. So we are trying to detect Solaris 2.6 using |
103 | // macro _XOPEN_UNIX which is not defined by <unistd.h> when XPG4v2 is not | 107 | // macro _XOPEN_UNIX which is not defined by <unistd.h> when XPG4v2 is not |
104 | // supported. | 108 | // supported. |
105 | #define QT_SNPRINTF ::snprintf | 109 | #define QT_SNPRINTF ::snprintf |
106 | #define QT_VSNPRINTF ::vsnprintf | 110 | #define QT_VSNPRINTF ::vsnprintf |
107 | #endif | 111 | #endif |
108 | 112 | ||
109 | 113 | ||
110 | #endif // QPLATFORMDEFS_H | 114 | #endif // QPLATFORMDEFS_H |