From 6a6fd56e662b2c1a581727f7ec44d5bd60913ad4 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 30 May 2012 14:44:39 +0200 Subject: Move the sub-architecture feature to better places in qmake Instead of saving the ability of the compiler to produce SSE2, AVX, Neon, etc. code in .qmake.cache (Unix) or qconfig.pri (Windows), move everything to qmodule.pri. Accordingly, move the DEFINES += settings to qt_module.prf instead of qt.prf. This allows us to re-use these settings in other Qt modules (other than qtbase), if necessary. Though currently the extra compiler definitions are found only in src/gui/gui.pro. They can be moved elsewhere when it becomes necessary. As a side-effect of this change, some other flags are moved from .qmake.cache to qmodule.pri (on Unix). The flags that are getting moved should probably be moved anyway. Change-Id: Ibc3ab0111e148d81870772f9357273660aa93417 Reviewed-by: Oswald Buddenhagen --- configure | 4 ++-- mkspecs/features/qt.prf | 13 ------------- mkspecs/features/qt_module.prf | 13 +++++++++++++ tools/configure/configureapp.cpp | 11 ++++++----- 4 files changed, 21 insertions(+), 20 deletions(-) diff --git a/configure b/configure index 8f135d3774..0dd432edf0 100755 --- a/configure +++ b/configure @@ -5781,7 +5781,7 @@ fi #------------------------------------------------------------------------------- QTMODULE="$outpath/mkspecs/qmodule.pri" -echo "CONFIG += create_prl link_prl" >> "$QTMODULE.tmp" +echo "CONFIG += $QMAKE_CONFIG create_prl link_prl" >> "$QTMODULE.tmp" # Ensure we can link to uninistalled libraries if [ "$BUILD_ON_MAC" != "yes" ] && [ "$XPLATFORM_MINGW" != "yes" ] && linkerSupportsFlag -rpath-link "$outpath/lib"; then @@ -5856,7 +5856,7 @@ QMAKE_INCDIR_QT = \$\$QT_BUILD_TREE/include QMAKE_LIBDIR_QT = \$\$QT_BUILD_TREE/lib include(\$\$PWD/mkspecs/qmodule.pri) -CONFIG += $QMAKE_CONFIG dylib depend_includepath fix_output_dirs no_private_qt_headers_warning QTDIR_build +CONFIG += dylib depend_includepath fix_output_dirs no_private_qt_headers_warning QTDIR_build EOF diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf index 75196d6392..8511c84f62 100644 --- a/mkspecs/features/qt.prf +++ b/mkspecs/features/qt.prf @@ -175,16 +175,3 @@ wince*:static:gui { mac { !isEmpty(QT_NAMESPACE_MAC_CRC):DEFINES *= QT_NAMESPACE_MAC_CRC=$$QT_NAMESPACE_MAC_CRC } - -#SIMD defines: -sse2:DEFINES += QT_COMPILER_SUPPORTS_SSE2 -sse3:DEFINES += QT_COMPILER_SUPPORTS_SSE3 -ssse3:DEFINES += QT_COMPILER_SUPPORTS_SSSE3 -sse4_1:DEFINES += QT_COMPILER_SUPPORTS_SSE4_1 -sse4_2:DEFINES += QT_COMPILER_SUPPORTS_SSE4_2 -avx:DEFINES += QT_COMPILER_SUPPORTS_AVX -avx2:DEFINES += QT_COMPILER_SUPPORTS_AVX2 -iwmmxt:DEFINES += QT_COMPILER_SUPPORTS_IWMMXT -neon:DEFINES += QT_COMPILER_SUPPORTS_NEON -mips_dsp:DEFINES += QT_COMPILER_SUPPORTS_MIPS_DSP -mips_dspr2:DEFINES += QT_COMPILER_SUPPORTS_MIPS_DSPR2 diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf index 865e3e51e5..b6b865ba5e 100644 --- a/mkspecs/features/qt_module.prf +++ b/mkspecs/features/qt_module.prf @@ -31,3 +31,16 @@ mac { # Qt modules get compiled without exceptions enabled by default CONFIG += exceptions_off + +#SIMD defines: +sse2:DEFINES += QT_COMPILER_SUPPORTS_SSE2 +sse3:DEFINES += QT_COMPILER_SUPPORTS_SSE3 +ssse3:DEFINES += QT_COMPILER_SUPPORTS_SSSE3 +sse4_1:DEFINES += QT_COMPILER_SUPPORTS_SSE4_1 +sse4_2:DEFINES += QT_COMPILER_SUPPORTS_SSE4_2 +avx:DEFINES += QT_COMPILER_SUPPORTS_AVX +avx2:DEFINES += QT_COMPILER_SUPPORTS_AVX2 +iwmmxt:DEFINES += QT_COMPILER_SUPPORTS_IWMMXT +neon:DEFINES += QT_COMPILER_SUPPORTS_NEON +mips_dsp:DEFINES += QT_COMPILER_SUPPORTS_MIPS_DSP +mips_dspr2:DEFINES += QT_COMPILER_SUPPORTS_MIPS_DSPR2 diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 8ef10a1c94..45c9f5c063 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -2533,7 +2533,12 @@ void Configure::generateCachefile() if (!dictionary["DECORATIONS"].isEmpty()) moduleStream << "decorations += "<