7 MODULE_PRI = ../modules/qt_gui.pri
9 DEFINES += QT_BUILD_GUI_LIB QT_NO_USING_NAMESPACE
11 unix|win32-g++*:QMAKE_PKGCONFIG_REQUIRES = QtCore
13 load(qt_module_config)
15 # Code coverage with TestCocoon
16 # The following is required as extra compilers use $$QMAKE_CXX instead of $(CXX).
17 # Without this, testcocoon.prf is read only after $$QMAKE_CXX is used by the
23 QMAKE_DOCS = $$PWD/doc/qtgui.qdocconf
24 QMAKE_DOCS_INDEX = ../../doc
26 include(accessible/accessible.pri)
27 include(kernel/kernel.pri)
28 include(image/image.pri)
29 include(text/text.pri)
30 include(painting/painting.pri)
31 include(util/util.pri)
32 include(math3d/math3d.pri)
33 include(opengl/opengl.pri)
34 include(animation/animation.pri)
36 QMAKE_LIBS += $$QMAKE_LIBS_GUI
38 win32:!contains(QT_CONFIG, directwrite) {
39 DEFINES += QT_NO_DIRECTWRITE
42 *-g++*|linux-icc*|*-clang|*-qcc* {
44 sse2_compiler.commands = $$QMAKE_CXX -c $(CXXFLAGS)
45 sse2_compiler.commands += $$QMAKE_CFLAGS_SSE2
46 sse2_compiler.commands += $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
47 sse2_compiler.dependency_type = TYPE_C
48 sse2_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
49 sse2_compiler.input = SSE2_SOURCES
50 sse2_compiler.variable_out = OBJECTS
51 sse2_compiler.name = compiling[sse2] ${QMAKE_FILE_IN}
52 silent:sse2_compiler.commands = @echo compiling[sse2] ${QMAKE_FILE_IN} && $$sse2_compiler.commands
53 QMAKE_EXTRA_COMPILERS += sse2_compiler
56 ssse3_compiler.commands = $$QMAKE_CXX -c $(CXXFLAGS)
57 ssse3_compiler.commands += $$QMAKE_CFLAGS_SSSE3
58 ssse3_compiler.commands += $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
59 ssse3_compiler.dependency_type = TYPE_C
60 ssse3_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
61 ssse3_compiler.input = SSSE3_SOURCES
62 ssse3_compiler.variable_out = OBJECTS
63 ssse3_compiler.name = compiling[ssse3] ${QMAKE_FILE_IN}
64 silent:ssse3_compiler.commands = @echo compiling[ssse3] ${QMAKE_FILE_IN} && $$ssse3_compiler.commands
65 QMAKE_EXTRA_COMPILERS += ssse3_compiler
68 avx_compiler.commands = $$QMAKE_CXX -c $(CXXFLAGS)
69 avx_compiler.commands += $$QMAKE_CFLAGS_AVX
70 avx_compiler.commands += $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
71 avx_compiler.dependency_type = TYPE_C
72 avx_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
73 avx_compiler.input = AVX_SOURCES
74 avx_compiler.variable_out = OBJECTS
75 avx_compiler.name = compiling[avx] ${QMAKE_FILE_IN}
76 silent:avx_compiler.commands = @echo compiling[avx] ${QMAKE_FILE_IN} && $$avx_compiler.commands
77 QMAKE_EXTRA_COMPILERS += avx_compiler
80 HEADERS += $$NEON_HEADERS
82 DRAWHELPER_NEON_ASM_FILES = $$NEON_ASM
84 neon_compiler.commands = $$QMAKE_CXX -c $(CXXFLAGS)
85 neon_compiler.commands += $$QMAKE_CFLAGS_NEON
86 neon_compiler.commands += $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
87 neon_compiler.dependency_type = TYPE_C
88 neon_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
89 neon_compiler.input = DRAWHELPER_NEON_ASM_FILES NEON_SOURCES
90 neon_compiler.variable_out = OBJECTS
91 neon_compiler.name = compiling[neon] ${QMAKE_FILE_IN}
92 silent:neon_compiler.commands = @echo compiling[neon] ${QMAKE_FILE_IN} && $$neon_compiler.commands
93 QMAKE_EXTRA_COMPILERS += neon_compiler
96 iwmmxt_compiler.commands = $$QMAKE_CXX -c $(CXXFLAGS)
97 iwmmxt_compiler.commands += $$QMAKE_CFLAGS_IWMMXT
98 iwmmxt_compiler.commands += $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
99 iwmmxt_compiler.dependency_type = TYPE_C
100 iwmmxt_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
101 iwmmxt_compiler.input = IWMMXT_SOURCES
102 iwmmxt_compiler.variable_out = OBJECTS
103 iwmmxt_compiler.name = compiling[iwmmxt] ${QMAKE_FILE_IN}
104 silent:iwmmxt_compiler.commands = @echo compiling[iwmmxt] ${QMAKE_FILE_IN} && $$iwmmxt_compiler.commands
105 QMAKE_EXTRA_COMPILERS += iwmmxt_compiler
108 HEADERS += $$MIPS_DSP_HEADERS
110 DRAWHELPER_MIPS_DSP_ASM_FILES = $$MIPS_DSP_ASM
111 mips_dsp_compiler.commands = $$QMAKE_CXX -c
112 mips_dsp_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
113 mips_dsp_compiler.dependency_type = TYPE_C
114 mips_dsp_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
115 mips_dsp_compiler.input = DRAWHELPER_MIPS_DSP_ASM_FILES MIPS_DSP_SOURCES
116 mips_dsp_compiler.variable_out = OBJECTS
117 mips_dsp_compiler.name = compiling[mips_dsp] ${QMAKE_FILE_IN}
118 silent:mips_dsp_compiler.commands = @echo compiling[mips_dsp] ${QMAKE_FILE_IN} && $$mips_dsp_compiler.commands
119 QMAKE_EXTRA_COMPILERS += mips_dsp_compiler
122 HEADERS += $$MIPS_DSP_HEADERS
124 DRAWHELPER_MIPS_DSPR2_ASM_FILES += $$MIPS_DSPR2_ASM
125 mips_dspr2_compiler.commands = $$QMAKE_CXX -c
126 mips_dspr2_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
127 mips_dspr2_compiler.dependency_type = TYPE_C
128 mips_dspr2_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
129 mips_dspr2_compiler.input = DRAWHELPER_MIPS_DSPR2_ASM_FILES
130 mips_dspr2_compiler.variable_out = OBJECTS
131 mips_dspr2_compiler.name = compiling[mips_dspr2] ${QMAKE_FILE_IN}
132 silent:mips_dspr2_compiler.commands = @echo compiling[mips_dspr2] ${QMAKE_FILE_IN} && $$mips_dspr2_compiler.commands
133 QMAKE_EXTRA_COMPILERS += mips_dspr2_compiler
137 sse2_compiler.commands = $$QMAKE_CXX -c $(CXXFLAGS)
138 sse2_compiler.commands += $$QMAKE_CFLAGS_SSE2
139 sse2_compiler.commands += $(INCPATH) ${QMAKE_FILE_IN} -Fo${QMAKE_FILE_OUT}
140 sse2_compiler.dependency_type = TYPE_C
141 sse2_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
142 sse2_compiler.input = SSE2_SOURCES
143 sse2_compiler.variable_out = OBJECTS
144 sse2_compiler.name = compiling[sse2] ${QMAKE_FILE_IN}
145 silent:sse2_compiler.commands = @echo compiling[sse2] ${QMAKE_FILE_IN} && $$sse2_compiler.commands
146 QMAKE_EXTRA_COMPILERS += sse2_compiler
149 ssse3_compiler.commands = $$QMAKE_CXX -c $(CXXFLAGS)
150 ssse3_compiler.commands += $$QMAKE_CFLAGS_SSSE3
151 ssse3_compiler.commands += $(INCPATH) ${QMAKE_FILE_IN} -Fo${QMAKE_FILE_OUT}
152 ssse3_compiler.dependency_type = TYPE_C
153 ssse3_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
154 ssse3_compiler.input = SSSE3_SOURCES
155 ssse3_compiler.variable_out = OBJECTS
156 ssse3_compiler.name = compiling[ssse3] ${QMAKE_FILE_IN}
157 silent:ssse3_compiler.commands = @echo compiling[ssse3] ${QMAKE_FILE_IN} && $$ssse3_compiler.commands
158 QMAKE_EXTRA_COMPILERS += ssse3_compiler
161 avx_compiler.commands = $$QMAKE_CXX -c $(CXXFLAGS) -D_M_AVX
162 avx_compiler.commands += $$QMAKE_CFLAGS_AVX
163 avx_compiler.commands += $(INCPATH) ${QMAKE_FILE_IN} -Fo${QMAKE_FILE_OUT}
164 avx_compiler.dependency_type = TYPE_C
165 avx_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
166 avx_compiler.input = AVX_SOURCES
167 avx_compiler.variable_out = OBJECTS
168 avx_compiler.name = compiling[avx] ${QMAKE_FILE_IN}
169 silent:avx_compiler.commands = @echo compiling[avx] ${QMAKE_FILE_IN} && $$avx_compiler.commands
170 QMAKE_EXTRA_COMPILERS += avx_compiler
173 # This allows an IDE like Creator to know that these files are part of the sources
174 SOURCES += $$SSE2_SOURCES $$SSSE3_SOURCES \
176 $$NEON_SOURCES $$NEON_ASM \
178 $$MIPS_DSP_SOURCES $$MIPS_DSP_ASM $$MIPS_DSPR2_ASM