summaryrefslogtreecommitdiff
path: root/mkspecs/solaris-cc/qplatformdefs.h
Unidiff
Diffstat (limited to 'mkspecs/solaris-cc/qplatformdefs.h') (more/less context) (show whitespace changes)
-rw-r--r--mkspecs/solaris-cc/qplatformdefs.h10
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,20 +1,21 @@
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>
@@ -68,31 +69,34 @@
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.
85typedef unsigned int useconds_t; 88typedef unsigned int useconds_t;
86extern "C" int usleep(useconds_t); 89extern "C" int usleep(useconds_t);
90extern "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