1
TARGET     = QtGui
2
QPRO_PWD   = $$PWD
3
QT = core
4
DEFINES   += QT_BUILD_GUI_LIB QT_NO_USING_NAMESPACE
5
win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x65000000
6
irix-cc*:QMAKE_CXXFLAGS += -no_prelink -ptused
7
8
!win32:!embedded:!qpa:!mac:!symbian:CONFIG      += x11
9
10
unix|win32-g++*:QMAKE_PKGCONFIG_REQUIRES = QtCore
11
12
include(../qbase.pri)
13
14
contains(QT_CONFIG, x11sm):CONFIG += x11sm
15
16
#platforms
17
x11:include(kernel/x11.pri)
18
mac:include(kernel/mac.pri)
19
win32:include(kernel/win.pri)
20
embedded:include(embedded/embedded.pri)
21
symbian {
22
    include(kernel/symbian.pri)
23
    include(s60framework/s60framework.pri)
24
}
25
26
#modules
27
include(animation/animation.pri)
28
include(kernel/kernel.pri)
29
include(image/image.pri)
30
include(painting/painting.pri)
31
include(text/text.pri)
32
include(styles/styles.pri)
33
include(widgets/widgets.pri)
34
include(dialogs/dialogs.pri)
35
include(accessible/accessible.pri)
36
include(itemviews/itemviews.pri)
37
include(inputmethod/inputmethod.pri)
38
include(graphicsview/graphicsview.pri)
39
include(util/util.pri)
40
include(statemachine/statemachine.pri)
41
include(math3d/math3d.pri)
42
include(effects/effects.pri)
43
44
include(egl/egl.pri)
45
win32:!wince*: DEFINES += QT_NO_EGL
46
embedded: QT += network
47
48
QMAKE_LIBS += $$QMAKE_LIBS_GUI
49
50
contains(DEFINES,QT_EVAL):include($$QT_SOURCE_TREE/src/corelib/eval.pri)
51
52
QMAKE_DYNAMIC_LIST_FILE = $$PWD/QtGui.dynlist
53
54
DEFINES += Q_INTERNAL_QAPP_SRC
55
symbian {
56
    TARGET.UID3=0x2001B2DD
57
58
    # ro-section in gui can exceed default allocated space, so move rw-section a little further
59
    QMAKE_LFLAGS.ARMCC += --rw-base 0x800000
60
    QMAKE_LFLAGS.GCCE += -Tdata 0x800000
61
}
62
63
neon:*-g++* {
64
    DEFINES += QT_HAVE_NEON
65
    HEADERS += $$NEON_HEADERS
66
67
    DRAWHELPER_NEON_ASM_FILES = $$NEON_ASM
68
69
    neon_compiler.commands = $$QMAKE_CXX -c
70
    neon_compiler.commands += $(CXXFLAGS) -mfpu=neon $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
71
    neon_compiler.dependency_type = TYPE_C
72
    neon_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
73
    neon_compiler.input = DRAWHELPER_NEON_ASM_FILES NEON_SOURCES
74
    neon_compiler.variable_out = OBJECTS
75
    neon_compiler.name = compiling[neon] ${QMAKE_FILE_IN}
76
    silent:neon_compiler.commands = @echo compiling[neon] ${QMAKE_FILE_IN} && $$neon_compiler.commands
77
    QMAKE_EXTRA_COMPILERS += neon_compiler
78
}
79
80
win32:!contains(QT_CONFIG, directwrite) {
81
    DEFINES += QT_NO_DIRECTWRITE
82
}
83
84
contains(QMAKE_MAC_XARCH, no) {
85
    DEFINES += QT_NO_MAC_XARCH
86
} else {
87
    win32-g++*|!win32:!win32-icc*:!macx-icc* {
88
        mmx {
89
            mmx_compiler.commands = $$QMAKE_CXX -c -Winline
90
91
            mac {
92
                mmx_compiler.commands += -Xarch_i386 -mmmx
93
                mmx_compiler.commands += -Xarch_x86_64 -mmmx
94
            } else {
95
                mmx_compiler.commands += -mmmx
96
            }
97
98
            mmx_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
99
            mmx_compiler.dependency_type = TYPE_C
100
            mmx_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
101
            mmx_compiler.input = MMX_SOURCES
102
            mmx_compiler.variable_out = OBJECTS
103
            mmx_compiler.name = compiling[mmx] ${QMAKE_FILE_IN}
104
            silent:mmx_compiler.commands = @echo compiling[mmx] ${QMAKE_FILE_IN} && $$mmx_compiler.commands
105
            QMAKE_EXTRA_COMPILERS += mmx_compiler
106
        }
107
        3dnow {
108
            mmx3dnow_compiler.commands = $$QMAKE_CXX -c -Winline
109
110
            mac {
111
                mmx3dnow_compiler.commands += -Xarch_i386 -m3dnow -Xarch_i386 -mmmx
112
                mmx3dnow_compiler.commands += -Xarch_x86_64 -m3dnow -Xarch_x86_64 -mmmx
113
            } else {
114
                mmx3dnow_compiler.commands += -m3dnow -mmmx
115
            }
116
117
            mmx3dnow_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
118
            mmx3dnow_compiler.dependency_type = TYPE_C
119
            mmx3dnow_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
120
            mmx3dnow_compiler.input = MMX3DNOW_SOURCES
121
            mmx3dnow_compiler.variable_out = OBJECTS
122
            mmx3dnow_compiler.name = compiling[mmx3dnow] ${QMAKE_FILE_IN}
123
            silent:mmx3dnow_compiler.commands = @echo compiling[mmx3dnow] ${QMAKE_FILE_IN} && $$mmx3dnow_compiler.commands
124
            QMAKE_EXTRA_COMPILERS += mmx3dnow_compiler
125
            sse {
126
                sse3dnow_compiler.commands = $$QMAKE_CXX -c -Winline
127
128
                mac {
129
                    sse3dnow_compiler.commands += -Xarch_i386 -m3dnow -Xarch_i386 -msse
130
                    sse3dnow_compiler.commands += -Xarch_x86_64 -m3dnow -Xarch_x86_64 -msse
131
                } else {
132
                    sse3dnow_compiler.commands += -m3dnow -msse
133
                }
134
135
                sse3dnow_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
136
                sse3dnow_compiler.dependency_type = TYPE_C
137
                sse3dnow_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
138
                sse3dnow_compiler.input = SSE3DNOW_SOURCES
139
                sse3dnow_compiler.variable_out = OBJECTS
140
                sse3dnow_compiler.name = compiling[sse3dnow] ${QMAKE_FILE_IN}
141
                silent:sse3dnow_compiler.commands = @echo compiling[sse3dnow] ${QMAKE_FILE_IN} && $$sse3dnow_compiler.commands
142
                QMAKE_EXTRA_COMPILERS += sse3dnow_compiler
143
            }
144
        }
145
        sse {
146
            sse_compiler.commands = $$QMAKE_CXX -c -Winline
147
148
            mac {
149
                sse_compiler.commands += -Xarch_i386 -msse
150
                sse_compiler.commands += -Xarch_x86_64 -msse
151
            } else {
152
                sse_compiler.commands += -msse
153
            }
154
155
            sse_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
156
            sse_compiler.dependency_type = TYPE_C
157
            sse_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
158
            sse_compiler.input = SSE_SOURCES
159
            sse_compiler.variable_out = OBJECTS
160
            sse_compiler.name = compiling[sse] ${QMAKE_FILE_IN}
161
            silent:sse_compiler.commands = @echo compiling[sse] ${QMAKE_FILE_IN} && $$sse_compiler.commands
162
            QMAKE_EXTRA_COMPILERS += sse_compiler
163
        }
164
        sse2 {
165
            sse2_compiler.commands = $$QMAKE_CXX -c -Winline
166
167
            mac {
168
                sse2_compiler.commands += -Xarch_i386 -msse2
169
                sse2_compiler.commands += -Xarch_x86_64 -msse2
170
            } else {
171
                sse2_compiler.commands += -msse2
172
            }
173
174
            sse2_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
175
            sse2_compiler.dependency_type = TYPE_C
176
            sse2_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
177
            sse2_compiler.input = SSE2_SOURCES
178
            sse2_compiler.variable_out = OBJECTS
179
            sse2_compiler.name = compiling[sse2] ${QMAKE_FILE_IN}
180
            silent:sse2_compiler.commands = @echo compiling[sse2] ${QMAKE_FILE_IN} && $$sse2_compiler.commands
181
            QMAKE_EXTRA_COMPILERS += sse2_compiler
182
        }
183
        ssse3 {
184
            ssse3_compiler.commands = $$QMAKE_CXX -c -Winline
185
186
            mac {
187
                ssse3_compiler.commands += -Xarch_i386 -mssse3
188
                ssse3_compiler.commands += -Xarch_x86_64 -mssse3
189
            } else {
190
                ssse3_compiler.commands += -mssse3
191
            }
192
193
            ssse3_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
194
            ssse3_compiler.dependency_type = TYPE_C
195
            ssse3_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
196
            ssse3_compiler.input = SSSE3_SOURCES
197
            ssse3_compiler.variable_out = OBJECTS
198
            ssse3_compiler.name = compiling[ssse3] ${QMAKE_FILE_IN}
199
            silent:ssse3_compiler.commands = @echo compiling[ssse3] ${QMAKE_FILE_IN} && $$ssse3_compiler.commands
200
            QMAKE_EXTRA_COMPILERS += ssse3_compiler
201
        }
202
        iwmmxt {
203
            iwmmxt_compiler.commands = $$QMAKE_CXX -c -Winline
204
            iwmmxt_compiler.commands += -mcpu=iwmmxt
205
            iwmmxt_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
206
            iwmmxt_compiler.dependency_type = TYPE_C
207
            iwmmxt_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
208
            iwmmxt_compiler.input = IWMMXT_SOURCES
209
            iwmmxt_compiler.variable_out = OBJECTS
210
            iwmmxt_compiler.name = compiling[iwmmxt] ${QMAKE_FILE_IN}
211
            silent:iwmmxt_compiler.commands = @echo compiling[iwmmxt] ${QMAKE_FILE_IN} && $$iwmmxt_compiler.commands
212
            QMAKE_EXTRA_COMPILERS += iwmmxt_compiler
213
        }
214
    } else {
215
        mmx: SOURCES += $$MMX_SOURCES
216
        3dnow: SOURCES += $$MMX3DNOW_SOURCES
217
        3dnow:sse: SOURCES += $$SSE3DNOW_SOURCES
218
        sse: SOURCES += $$SSE_SOURCES
219
        sse2: SOURCES += $$SSE2_SOURCES
220
        ssse3: SOURCES += $$SSSE3_SOURCES
221
        iwmmxt: SOURCES += $$IWMMXT_SOURCES
222
    }
223
}