mips: dsp and dspr2 can be enabled separately fix dspr2 only compilation
authorHolger Hans Peter Freyther <holger@moiji-mobile.com>
Tue, 12 Jun 2012 09:38:50 +0000 (11:38 +0200)
committerQt by Nokia <qt-info@nokia.com>
Tue, 12 Jun 2012 15:45:03 +0000 (17:45 +0200)
Separate dsp and dspr2 handling. The configure script allows to disable
them separately and with this patch it is possible to compile a dspr2
only libQtGui.so.

Change-Id: Ifca583c9b46a25c93751967a31ac77eafc5d51e4
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
src/gui/gui.pro
src/gui/painting/qdrawhelper.cpp
src/gui/painting/qdrawhelper_mips_dsp_p.h

index 5fa1de8..9dc9299 100644 (file)
@@ -111,7 +111,6 @@ win32:!contains(QT_CONFIG, directwrite) {
             HEADERS += $$MIPS_DSP_HEADERS
 
             DRAWHELPER_MIPS_DSP_ASM_FILES = $$MIPS_DSP_ASM
-            mips_dspr2:DRAWHELPER_MIPS_DSP_ASM_FILES += $$MIPS_DSPR2_ASM
             mips_dsp_compiler.commands = $$QMAKE_CXX -c
             mips_dsp_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
             mips_dsp_compiler.dependency_type = TYPE_C
@@ -122,6 +121,20 @@ win32:!contains(QT_CONFIG, directwrite) {
             silent:mips_dsp_compiler.commands = @echo compiling[mips_dsp] ${QMAKE_FILE_IN} && $$mips_dsp_compiler.commands
             QMAKE_EXTRA_COMPILERS += mips_dsp_compiler
         }
+        mips_dspr2 {
+            HEADERS += $$MIPS_DSP_HEADERS
+
+            DRAWHELPER_MIPS_DSPR2_ASM_FILES += $$MIPS_DSPR2_ASM
+            mips_dspr2_compiler.commands = $$QMAKE_CXX -c
+            mips_dspr2_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
+            mips_dspr2_compiler.dependency_type = TYPE_C
+            mips_dspr2_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)}
+            mips_dspr2_compiler.input = DRAWHELPER_MIPS_DSPR2_ASM_FILES
+            mips_dspr2_compiler.variable_out = OBJECTS
+            mips_dspr2_compiler.name = compiling[mips_dspr2] ${QMAKE_FILE_IN}
+            silent:mips_dspr2_compiler.commands = @echo compiling[mips_dspr2] ${QMAKE_FILE_IN} && $$mips_dspr2_compiler.commands
+            QMAKE_EXTRA_COMPILERS += mips_dspr2_compiler
+        }
 } else:win32-msvc* {
         sse2 {
             sse2_compiler.commands = $$QMAKE_CXX -c $(CXXFLAGS)
index a91f683..2ca304b 100644 (file)
@@ -56,7 +56,7 @@
 #include <private/qpainter_p.h>
 #include <private/qdrawhelper_x86_p.h>
 #include <private/qdrawhelper_neon_p.h>
-#ifdef QT_COMPILER_SUPPORTS_MIPS_DSP
+#if defined(QT_COMPILER_SUPPORTS_MIPS_DSP) || defined(QT_COMPILER_SUPPORTS_MIPS_DSPR2)
 #include <private/qdrawhelper_mips_dsp_p.h>
 #endif
 #include <private/qmath_p.h>
index 1a1e151..ed84848 100644 (file)
@@ -71,14 +71,15 @@ uint * QT_FASTCALL qt_destFetchARGB32_mips_dsp(uint *buffer,
 void QT_FASTCALL qt_destStoreARGB32_mips_dsp(QRasterBuffer *rasterBuffer, int x, int y,
                                              const uint *buffer, int length);
 
+#endif // QT_COMPILER_SUPPORTS_MIPS_DSP
+
+
 #ifdef QT_COMPILER_SUPPORTS_MIPS_DSPR2
 
 extern "C" void  qConvertRgb16To32_asm_mips_dspr2(quint32 *dest, const quint16 *src, int length);
 
 #endif // QT_COMPILER_SUPPORTS_MIPS_DSPR2
 
-#endif // QT_COMPILER_SUPPORTS_MIPS_DSP
-
 QT_END_NAMESPACE
 
 #endif // QDRAWHELPER_MIPS_P_H