summaryrefslogtreecommitdiff
path: root/mkspecs/aix-xlc
Unidiff
Diffstat (limited to 'mkspecs/aix-xlc') (more/less context) (ignore whitespace changes)
-rw-r--r--mkspecs/aix-xlc/qmake.conf85
-rw-r--r--mkspecs/aix-xlc/qplatformdefs.h105
2 files changed, 190 insertions, 0 deletions
diff --git a/mkspecs/aix-xlc/qmake.conf b/mkspecs/aix-xlc/qmake.conf
new file mode 100644
index 0000000..364d909
--- a/dev/null
+++ b/mkspecs/aix-xlc/qmake.conf
@@ -0,0 +1,85 @@
1#
2# $Id$
3#
4# qmake configuration for aix-xlc
5#
6
7 MAKEFILE_GENERATOR= UNIX
8 TEMPLATE = app
9 CONFIG += qt warn_on release
10
11 QMAKE_CC = xlc
12 QMAKE_CC_THREAD = xlc_r
13 QMAKE_LEX = flex
14 QMAKE_LEXFLAGS =
15 QMAKE_YACC = yacc
16 QMAKE_YACCFLAGS = -d
17 QMAKE_CFLAGS = -qstrict
18 QMAKE_CFLAGS_WARN_ON=
19 QMAKE_CFLAGS_WARN_OFF=
20 QMAKE_CFLAGS_RELEASE= -O3
21 QMAKE_CFLAGS_DEBUG= -g
22 QMAKE_CFLAGS_SHLIB=
23 QMAKE_CFLAGS_YACC=
24 QMAKE_CFLAGS_THREAD= -qthreaded -D_THREAD_SAFE
25
26 QMAKE_CXX = xlC
27 QMAKE_CXX_THREAD= xlC_r
28 QMAKE_CXXFLAGS = -+ $$QMAKE_CFLAGS
29 QMAKE_CXXFLAGS_WARN_ON= $$QMAKE_CFLAGS_WARN_ON
30 QMAKE_CXXFLAGS_WARN_OFF= $$QMAKE_CFLAGS_WARN_OFF
31 QMAKE_CXXFLAGS_RELEASE= $$QMAKE_CFLAGS_RELEASE
32 QMAKE_CXXFLAGS_DEBUG= $$QMAKE_CFLAGS_DEBUG
33 QMAKE_CXXFLAGS_SHLIB= $$QMAKE_CFLAGS_SHLIB
34 QMAKE_CXXFLAGS_YACC= $$QMAKE_CFLAGS_YACC
35 QMAKE_CXXFLAGS_THREAD= $$QMAKE_CFLAGS_THREAD
36
37 QMAKE_INCDIR =
38 QMAKE_LIBDIR =
39 QMAKE_INCDIR_X11=
40 QMAKE_LIBDIR_X11=
41 QMAKE_INCDIR_QT = $(QTDIR)/include
42 QMAKE_LIBDIR_QT = $(QTDIR)/lib
43 QMAKE_INCDIR_OPENGL=
44 QMAKE_LIBDIR_OPENGL=
45
46 QMAKE_LINK = xlC
47 QMAKE_LINK_THREAD= xlC_r
48 QMAKE_LINK_SHLIB= ld
49 QMAKE_LINK_SHLIB_CMD= makeC++SharedLib -p 0 \
50 -o $(TARGETD) \
51 $(LFLAGS) $(OBJECTS) $(OBJMOC) $(LIBS); \
52 ar q lib$(QMAKE_TARGET).a $(TARGETD); \
53 ranlib lib$(QMAKE_TARGET).a; \
54 mv lib$(QMAKE_TARGET).a $(DESTDIR)
55 QMAKE_LFLAGS =
56 QMAKE_LFLAGS_RELEASE=
57 QMAKE_LFLAGS_DEBUG=
58 QMAKE_LFLAGS_SHLIB=
59 QMAKE_LFLAGS_PLUGIN= $$QMAKE_LFLAGS_SHLIB
60 QMAKE_LFLAGS_SONAME=
61 QMAKE_LFLAGS_THREAD= -L/usr/lib/threads
62
63 QMAKE_LIBS =
64 QMAKE_LIBS_DYNLOAD= -ldl
65 QMAKE_LIBS_X11 = -lXext -lX11 -lm -lbind
66 QMAKE_LIBS_X11SM= -lSM -lICE
67 QMAKE_LIBS_QT = -lqt
68 QMAKE_LIBS_QT_THREAD= -lqt-mt
69 QMAKE_LIBS_OPENGL= -lGLU -lGL -lXmu
70 QMAKE_LIBS_OPENGL_QT= -lGL -lXmu
71 QMAKE_LIBS_THREAD= -lpthreads
72
73 QMAKE_MOC = $(QTDIR)/bin/moc
74 QMAKE_UIC = $(QTDIR)/bin/uic
75
76 QMAKE_AR = ar cq
77 QMAKE_RANLIB = ranlib
78
79 QMAKE_TAR = tar -cf
80 QMAKE_GZIP = gzip -9f
81
82 QMAKE_COPY = cp -f
83 QMAKE_MOVE = mv -f
84 QMAKE_DEL_FILE = rm -f
85 QMAKE_DEL_DIR = rmdir
diff --git a/mkspecs/aix-xlc/qplatformdefs.h b/mkspecs/aix-xlc/qplatformdefs.h
new file mode 100644
index 0000000..7685a7b
--- a/dev/null
+++ b/mkspecs/aix-xlc/qplatformdefs.h
@@ -0,0 +1,105 @@
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#include <strings.h> // AIX X11 headers define FD_ZERO using bzero()
27
28#include <sys/types.h>
29#include <sys/ioctl.h>
30#include <sys/ipc.h>
31#include <sys/time.h>
32#include <sys/select.h>
33#include <sys/shm.h>
34#include <sys/socket.h>
35#include <sys/stat.h>
36#include <sys/wait.h>
37
38// DNS header files are not fully covered by X/Open specifications.
39// In particular nothing is said about res_* :/
40// On AIX header files <netinet/in.h> and <arpa/nameser.h> are not
41// included by <resolv.h>. Note that <arpa/nameser.h> must be included
42// before <resolv.h>.
43#include <netinet/in.h>
44#define class nsrr_class // AIX 4.3.1.0
45#include <arpa/nameser.h>
46#undef class
47#include <resolv.h>
48
49
50#if !defined(QT_NO_COMPAT)
51 #define QT_STATBUF struct stat
52 #define QT_STATBUF4TSTATstruct stat
53 #define QT_STAT ::stat
54 #define QT_FSTAT ::fstat
55 #define QT_STAT_REG S_IFREG
56 #define QT_STAT_DIR S_IFDIR
57 #define QT_STAT_MASK S_IFMT
58 #define QT_STAT_LNK S_IFLNK
59 #define QT_FILENO fileno
60 #define QT_OPEN ::open
61 #define QT_CLOSE ::close
62 #define QT_LSEEK ::lseek
63 #define QT_READ ::read
64 #define QT_WRITE ::write
65 #define QT_ACCESS ::access
66 #define QT_GETCWD ::getcwd
67 #define QT_CHDIR ::chdir
68 #define QT_MKDIR ::mkdir
69 #define QT_RMDIR ::rmdir
70 #define QT_OPEN_RDONLY O_RDONLY
71 #define QT_OPEN_WRONLY O_WRONLY
72 #define QT_OPEN_RDWR O_RDWR
73 #define QT_OPEN_CREAT O_CREAT
74 #define QT_OPEN_TRUNC O_TRUNC
75 #define QT_OPEN_APPEND O_APPEND
76#endif
77
78 #define QT_SIGNAL_RETTYPEvoid
79 #define QT_SIGNAL_ARGS int
80 #define QT_SIGNAL_IGNORESIG_IGN
81
82#ifdef _AIX43
83// AIX 4.3
84// The AIX 4.3 online documentation says 'size_t' but a user asked IBM
85// and they told him the documentation is wrong. And anyway 'socklen_t'
86// reportedly works for all AIX 4.3 users.
87 #define QT_SOCKLEN_T socklen_t
88#elif _AIX42
89// AIX 4.2
90 #define QT_SOCKLEN_T size_t
91#else
92// AIX 4.1
93 #define QT_SOCKLEN_T size_t
94// override
95 #define QT_SOCKOPTLEN_T int
96#endif
97
98#if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500)
99// AIX 4.3 and better only
100 #define QT_SNPRINTF ::snprintf
101 #define QT_VSNPRINTF ::vsnprintf
102#endif
103
104
105#endif // QPLATFORMDEFS_H