-rw-r--r-- | mkspecs/solaris-cc/qmake.conf | 83 | ||||
-rw-r--r-- | mkspecs/solaris-cc/qplatformdefs.h | 110 |
2 files changed, 193 insertions, 0 deletions
diff --git a/mkspecs/solaris-cc/qmake.conf b/mkspecs/solaris-cc/qmake.conf new file mode 100644 index 0000000..0aa1097 --- a/dev/null +++ b/mkspecs/solaris-cc/qmake.conf | |||
@@ -0,0 +1,83 @@ | |||
1 | # | ||
2 | # $Id$ | ||
3 | # | ||
4 | # qmake configuration for Sun WorkShop 5.0, Forte Developer 6, | ||
5 | # and Sun ONE Studio 7 on Solaris | ||
6 | # | ||
7 | |||
8 | MAKEFILE_GENERATOR= UNIX | ||
9 | TEMPLATE = app | ||
10 | CONFIG += qt warn_on release | ||
11 | |||
12 | QMAKE_CC = cc | ||
13 | QMAKE_LEX = flex | ||
14 | QMAKE_LEXFLAGS = | ||
15 | QMAKE_YACC = yacc | ||
16 | QMAKE_YACCFLAGS = -d | ||
17 | QMAKE_CFLAGS = | ||
18 | QMAKE_CFLAGS_DEPS= -xM | ||
19 | QMAKE_CFLAGS_WARN_ON= | ||
20 | QMAKE_CFLAGS_WARN_OFF= -w | ||
21 | QMAKE_CFLAGS_RELEASE= -O | ||
22 | QMAKE_CFLAGS_DEBUG= -g | ||
23 | QMAKE_CFLAGS_SHLIB= -KPIC | ||
24 | QMAKE_CFLAGS_YACC= | ||
25 | QMAKE_CFLAGS_THREAD= -mt | ||
26 | |||
27 | QMAKE_CXX = CC | ||
28 | QMAKE_CXXFLAGS = $$QMAKE_CFLAGS | ||
29 | QMAKE_CXXFLAGS_DEPS= $$QMAKE_CFLAGS_DEPS | ||
30 | QMAKE_CXXFLAGS_WARN_ON= $$QMAKE_CFLAGS_WARN_ON | ||
31 | QMAKE_CXXFLAGS_WARN_OFF= $$QMAKE_CFLAGS_WARN_OFF | ||
32 | QMAKE_CXXFLAGS_RELEASE= -O2 | ||
33 | QMAKE_CXXFLAGS_DEBUG= $$QMAKE_CFLAGS_DEBUG | ||
34 | QMAKE_CXXFLAGS_SHLIB= $$QMAKE_CFLAGS_SHLIB | ||
35 | QMAKE_CXXFLAGS_YACC= $$QMAKE_CFLAGS_YACC | ||
36 | QMAKE_CXXFLAGS_THREAD= $$QMAKE_CFLAGS_THREAD | ||
37 | |||
38 | QMAKE_INCDIR = | ||
39 | QMAKE_LIBDIR = | ||
40 | QMAKE_INCDIR_X11= /usr/openwin/include | ||
41 | QMAKE_LIBDIR_X11= /usr/openwin/lib | ||
42 | QMAKE_INCDIR_QT = $(QTDIR)/include | ||
43 | QMAKE_LIBDIR_QT = $(QTDIR)/lib | ||
44 | QMAKE_INCDIR_OPENGL= /usr/openwin/include | ||
45 | QMAKE_LIBDIR_OPENGL= /usr/openwin/lib | ||
46 | |||
47 | QMAKE_LINK = CC | ||
48 | QMAKE_LINK_SHLIB= CC | ||
49 | QMAKE_LFLAGS = -R$(QTDIR)/lib | ||
50 | QMAKE_LFLAGS_RELEASE= | ||
51 | QMAKE_LFLAGS_DEBUG= | ||
52 | QMAKE_LFLAGS_SHLIB= -G | ||
53 | QMAKE_LFLAGS_PLUGIN= $$QMAKE_LFLAGS_SHLIB | ||
54 | QMAKE_LFLAGS_SONAME= -h$$LITERAL_WHITESPACE | ||
55 | QMAKE_LFLAGS_THREAD= -mt | ||
56 | QMAKE_RPATH = -R | ||
57 | |||
58 | QMAKE_LIBS = | ||
59 | QMAKE_LIBS_DYNLOAD= -ldl | ||
60 | QMAKE_LIBS_X11 = -lXext -lX11 -lresolv -lsocket -lnsl | ||
61 | QMAKE_LIBS_X11SM= -lSM -lICE | ||
62 | QMAKE_LIBS_NIS = | ||
63 | QMAKE_LIBS_QT = -lqt | ||
64 | QMAKE_LIBS_QT_THREAD= -lqt-mt | ||
65 | QMAKE_LIBS_OPENGL= -lGLU -lGL -lXmu | ||
66 | QMAKE_LIBS_OPENGL_QT= -lGL -lXmu | ||
67 | QMAKE_LIBS_THREAD= -lpthread | ||
68 | |||
69 | QMAKE_MOC = $(QTDIR)/bin/moc | ||
70 | QMAKE_UIC = $(QTDIR)/bin/uic | ||
71 | |||
72 | QMAKE_AR = CC -xar -o | ||
73 | QMAKE_RANLIB = | ||
74 | |||
75 | QMAKE_CLEAN = -r $(OBJECTS_DIR)Templates.DB $(OBJECTS_DIR)SunWS_cache | ||
76 | |||
77 | QMAKE_TAR = tar -cf | ||
78 | QMAKE_GZIP = gzip -9f | ||
79 | |||
80 | QMAKE_COPY = cp -f | ||
81 | QMAKE_MOVE = mv -f | ||
82 | QMAKE_DEL_FILE = rm -f | ||
83 | QMAKE_DEL_DIR = rmdir | ||
diff --git a/mkspecs/solaris-cc/qplatformdefs.h b/mkspecs/solaris-cc/qplatformdefs.h new file mode 100644 index 0000000..f9480a9 --- a/dev/null +++ b/mkspecs/solaris-cc/qplatformdefs.h | |||
@@ -0,0 +1,110 @@ | |||
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/filio.h> | ||
30 | #include <sys/ipc.h> | ||
31 | #include <sys/time.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 Solaris 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 | #include <arpa/nameser.h> | ||
44 | #include <resolv.h> | ||
45 | |||
46 | |||
47 | #if !defined(QT_NO_COMPAT) | ||
48 | #define QT_STATBUF struct stat | ||
49 | #define QT_STATBUF4TSTATstruct stat | ||
50 | #define QT_STAT ::stat | ||
51 | #define QT_FSTAT ::fstat | ||
52 | #define QT_STAT_REG S_IFREG | ||
53 | #define QT_STAT_DIR S_IFDIR | ||
54 | #define QT_STAT_MASK S_IFMT | ||
55 | #define QT_STAT_LNK S_IFLNK | ||
56 | #define QT_FILENO fileno | ||
57 | #define QT_OPEN ::open | ||
58 | #define QT_CLOSE ::close | ||
59 | #define QT_LSEEK ::lseek | ||
60 | #define QT_READ ::read | ||
61 | #define QT_WRITE ::write | ||
62 | #define QT_ACCESS ::access | ||
63 | #define QT_GETCWD ::getcwd | ||
64 | #define QT_CHDIR ::chdir | ||
65 | #define QT_MKDIR ::mkdir | ||
66 | #define QT_RMDIR ::rmdir | ||
67 | #define QT_OPEN_RDONLY O_RDONLY | ||
68 | #define QT_OPEN_WRONLY O_WRONLY | ||
69 | #define QT_OPEN_RDWR O_RDWR | ||
70 | #define QT_OPEN_CREAT O_CREAT | ||
71 | #define QT_OPEN_TRUNC O_TRUNC | ||
72 | #define QT_OPEN_APPEND O_APPEND | ||
73 | #endif | ||
74 | |||
75 | #define QT_SIGNAL_RETTYPEvoid | ||
76 | #define QT_SIGNAL_ARGS int | ||
77 | #define QT_SIGNAL_IGNORESIG_IGN | ||
78 | |||
79 | #if !defined(_XOPEN_UNIX) | ||
80 | // Function usleep() is in C library but not in header files on Solaris 2.5.1. | ||
81 | // Not really a surprise, usleep() is specified by XPG4v2 and XPG4v2 is only | ||
82 | // supported by Solaris 2.6 and better. | ||
83 | // 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. | ||
85 | typedef unsigned int useconds_t; | ||
86 | extern "C" int usleep(useconds_t); | ||
87 | #endif | ||
88 | |||
89 | #if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE-0 >= 500) && (_XOPEN_VERSION-0 >= 500) | ||
90 | // on Solaris 7 and better with specific feature test macros | ||
91 | #define QT_SOCKLEN_T socklen_t | ||
92 | #elif defined(_XOPEN_SOURCE_EXTENDED) && (_XOPEN_VERSION-0 >= 4) | ||
93 | // on Solaris 2.6 and better with specific feature test macros | ||
94 | #define QT_SOCKLEN_T size_t | ||
95 | #else | ||
96 | // always this case in practice | ||
97 | #define QT_SOCKLEN_T int | ||
98 | #endif | ||
99 | |||
100 | #if defined(_XOPEN_UNIX) | ||
101 | // 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 | ||
103 | // macro _XOPEN_UNIX which is not defined by <unistd.h> when XPG4v2 is not | ||
104 | // supported. | ||
105 | #define QT_SNPRINTF ::snprintf | ||
106 | #define QT_VSNPRINTF ::vsnprintf | ||
107 | #endif | ||
108 | |||
109 | |||
110 | #endif // QPLATFORMDEFS_H | ||