-rw-r--r-- | mkspecs/solaris-cc/qmake.conf | 13 | ||||
-rw-r--r-- | mkspecs/solaris-cc/qplatformdefs.h | 10 |
2 files changed, 15 insertions, 8 deletions
diff --git a/mkspecs/solaris-cc/qmake.conf b/mkspecs/solaris-cc/qmake.conf index bee60c9..d1f080e 100644 --- a/mkspecs/solaris-cc/qmake.conf +++ b/mkspecs/solaris-cc/qmake.conf | |||
@@ -1,38 +1,39 @@ | |||
1 | # | 1 | # |
2 | # $Id$ | 2 | # $Id$ |
3 | # | 3 | # |
4 | # qmake configuration for Sun WorkShop 5.0, Forte Developer 6, | 4 | # qmake configuration for solaris-cc |
5 | # and Sun ONE Studio 7 on Solaris | 5 | # |
6 | # Written for Sun WorkShop 5.0, Forte Developer 6, and Sun ONE Studio 7. | ||
6 | # | 7 | # |
7 | 8 | ||
8 | MAKEFILE_GENERATOR= UNIX | 9 | MAKEFILE_GENERATOR= UNIX |
9 | TEMPLATE = app | 10 | TEMPLATE = app |
10 | CONFIG += qt warn_on release | 11 | CONFIG += qt warn_on release link_prl |
11 | 12 | ||
12 | QMAKE_CC = cc | 13 | QMAKE_CC = cc |
13 | QMAKE_LEX = flex | 14 | QMAKE_LEX = flex |
14 | QMAKE_LEXFLAGS = | 15 | QMAKE_LEXFLAGS = |
15 | QMAKE_YACC = yacc | 16 | QMAKE_YACC = yacc |
16 | QMAKE_YACCFLAGS = -d | 17 | QMAKE_YACCFLAGS = -d |
17 | QMAKE_CFLAGS = $(CFLAGS_EXTRA) | 18 | QMAKE_CFLAGS = $(CFLAGS_EXTRA) |
18 | QMAKE_CFLAGS_DEPS= -xM | 19 | QMAKE_CFLAGS_DEPS= -xM |
19 | QMAKE_CFLAGS_WARN_ON= | 20 | QMAKE_CFLAGS_WARN_ON= |
20 | QMAKE_CFLAGS_WARN_OFF= -w | 21 | QMAKE_CFLAGS_WARN_OFF= -w |
21 | QMAKE_CFLAGS_RELEASE= $(if $(CFLAGS_RELEASE),$(CFLAGS_RELEASE), -O) | 22 | QMAKE_CFLAGS_RELEASE= $(if $(CFLAGS_RELEASE),$(CFLAGS_RELEASE), -O) |
22 | QMAKE_CFLAGS_DEBUG= -g | 23 | QMAKE_CFLAGS_DEBUG= -g |
23 | QMAKE_CFLAGS_SHLIB= -KPIC | 24 | QMAKE_CFLAGS_SHLIB= -KPIC |
24 | QMAKE_CFLAGS_YACC= | 25 | QMAKE_CFLAGS_YACC= |
25 | QMAKE_CFLAGS_THREAD= -mt | 26 | QMAKE_CFLAGS_THREAD= -mt |
26 | 27 | ||
27 | QMAKE_CXX = CC | 28 | QMAKE_CXX = CC |
28 | QMAKE_CXXFLAGS = $$QMAKE_CFLAGS $(CXXFLAGS_EXTRA) | 29 | QMAKE_CXXFLAGS = $$QMAKE_CFLAGS $(CXXFLAGS_EXTRA) |
29 | QMAKE_CXXFLAGS_DEPS= $$QMAKE_CFLAGS_DEPS | 30 | QMAKE_CXXFLAGS_DEPS= $$QMAKE_CFLAGS_DEPS |
30 | QMAKE_CXXFLAGS_WARN_ON= $$QMAKE_CFLAGS_WARN_ON | 31 | QMAKE_CXXFLAGS_WARN_ON= $$QMAKE_CFLAGS_WARN_ON |
31 | QMAKE_CXXFLAGS_WARN_OFF= $$QMAKE_CFLAGS_WARN_OFF | 32 | QMAKE_CXXFLAGS_WARN_OFF= $$QMAKE_CFLAGS_WARN_OFF |
32 | QMAKE_CXXFLAGS_RELEASE= -O2 | 33 | QMAKE_CXXFLAGS_RELEASE= -O2 |
33 | QMAKE_CXXFLAGS_DEBUG= $$QMAKE_CFLAGS_DEBUG | 34 | QMAKE_CXXFLAGS_DEBUG= $$QMAKE_CFLAGS_DEBUG |
34 | QMAKE_CXXFLAGS_SHLIB= $$QMAKE_CFLAGS_SHLIB | 35 | QMAKE_CXXFLAGS_SHLIB= $$QMAKE_CFLAGS_SHLIB |
35 | QMAKE_CXXFLAGS_YACC= $$QMAKE_CFLAGS_YACC | 36 | QMAKE_CXXFLAGS_YACC= $$QMAKE_CFLAGS_YACC |
36 | QMAKE_CXXFLAGS_THREAD= $$QMAKE_CFLAGS_THREAD | 37 | QMAKE_CXXFLAGS_THREAD= $$QMAKE_CFLAGS_THREAD |
37 | 38 | ||
38 | QMAKE_INCDIR = | 39 | QMAKE_INCDIR = |
@@ -43,41 +44,43 @@ QMAKE_INCDIR_QT = $(QTDIR)/include | |||
43 | QMAKE_LIBDIR_QT = $(QTDIR)/lib | 44 | QMAKE_LIBDIR_QT = $(QTDIR)/lib |
44 | QMAKE_INCDIR_OPENGL= /usr/openwin/include | 45 | QMAKE_INCDIR_OPENGL= /usr/openwin/include |
45 | QMAKE_LIBDIR_OPENGL= /usr/openwin/lib | 46 | QMAKE_LIBDIR_OPENGL= /usr/openwin/lib |
46 | 47 | ||
47 | QMAKE_LINK = CC | 48 | QMAKE_LINK = CC |
48 | QMAKE_LINK_SHLIB= CC | 49 | QMAKE_LINK_SHLIB= CC |
49 | QMAKE_LFLAGS = -R$(QTDIR)/lib $(LFLAGS_EXTRA) | 50 | QMAKE_LFLAGS = -R$(QTDIR)/lib $(LFLAGS_EXTRA) |
50 | QMAKE_LFLAGS_RELEASE= | 51 | QMAKE_LFLAGS_RELEASE= |
51 | QMAKE_LFLAGS_DEBUG= | 52 | QMAKE_LFLAGS_DEBUG= |
52 | QMAKE_LFLAGS_SHLIB= -G | 53 | QMAKE_LFLAGS_SHLIB= -G |
53 | QMAKE_LFLAGS_PLUGIN= $$QMAKE_LFLAGS_SHLIB | 54 | QMAKE_LFLAGS_PLUGIN= $$QMAKE_LFLAGS_SHLIB |
54 | QMAKE_LFLAGS_SONAME= -h$$LITERAL_WHITESPACE | 55 | QMAKE_LFLAGS_SONAME= -h$$LITERAL_WHITESPACE |
55 | QMAKE_LFLAGS_THREAD= -mt | 56 | QMAKE_LFLAGS_THREAD= -mt |
56 | QMAKE_RPATH = -R | 57 | QMAKE_RPATH = -R |
57 | 58 | ||
58 | QMAKE_LIBS = $(LIBS_EXTRA) | 59 | QMAKE_LIBS = $(LIBS_EXTRA) |
59 | QMAKE_LIBS_DYNLOAD= -ldl | 60 | QMAKE_LIBS_DYNLOAD= -ldl |
60 | QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl | 61 | QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl |
61 | QMAKE_LIBS_X11SM= -lSM -lICE | 62 | QMAKE_LIBS_X11SM= -lSM -lICE |
62 | QMAKE_LIBS_NIS = | 63 | QMAKE_LIBS_NIS = |
63 | QMAKE_LIBS_QT = -lqt | 64 | QMAKE_LIBS_QT = -lqt |
64 | QMAKE_LIBS_QT_THREAD= -lqt-mt | 65 | QMAKE_LIBS_QT_THREAD= -lqt-mt |
65 | QMAKE_LIBS_OPENGL= -lGLU -lGL -lXmu | 66 | QMAKE_LIBS_OPENGL= -lGLU -lGL -lXmu |
66 | QMAKE_LIBS_OPENGL_QT= -lGL -lXmu | 67 | QMAKE_LIBS_OPENGL_QT= -lGL -lXmu |
67 | QMAKE_LIBS_THREAD= -lpthread | 68 | QMAKE_LIBS_THREAD= -lpthread -lrt |
68 | 69 | ||
69 | QMAKE_MOC = $(QTDIR)/bin/moc | 70 | QMAKE_MOC = $(QTDIR)/bin/moc |
70 | QMAKE_UIC = $(QTDIR)/bin/uic | 71 | QMAKE_UIC = $(QTDIR)/bin/uic |
71 | 72 | ||
72 | QMAKE_AR = CC -xar -o | 73 | QMAKE_AR = CC -xar -o |
73 | QMAKE_RANLIB = | 74 | QMAKE_RANLIB = |
74 | 75 | ||
75 | QMAKE_CLEAN = -r $(OBJECTS_DIR)Templates.DB $(OBJECTS_DIR)SunWS_cache | 76 | QMAKE_CLEAN = -r $(OBJECTS_DIR)Templates.DB $(OBJECTS_DIR)SunWS_cache |
76 | 77 | ||
77 | QMAKE_TAR = tar -cf | 78 | QMAKE_TAR = tar -cf |
78 | QMAKE_GZIP = gzip -9f | 79 | QMAKE_GZIP = gzip -9f |
79 | 80 | ||
80 | QMAKE_COPY = cp -f | 81 | QMAKE_COPY = cp -f |
81 | QMAKE_MOVE = mv -f | 82 | QMAKE_MOVE = mv -f |
82 | QMAKE_DEL_FILE = rm -f | 83 | QMAKE_DEL_FILE = rm -f |
83 | QMAKE_DEL_DIR = rmdir | 84 | QMAKE_DEL_DIR = rmdir |
85 | QMAKE_CHK_DIR_EXISTS= test -d | ||
86 | QMAKE_MKDIR = mkdir -p | ||
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 |