aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorAlexander Neundorf <neundorf@kde.org>2009-12-19 14:33:24 +0000
committerAlexander Neundorf <neundorf@kde.org>2009-12-19 14:33:24 +0000
commite741edda28738c99531df34980ebb0b00bdc27e8 (patch)
tree87f47d69aa864ec4982320c28967afdb2f191179 /modules
parent93bcab3adf37b3f12e69d1b2cfe3216c23e641d3 (diff)
downloadextra-cmake-modules-e741edda28738c99531df34980ebb0b00bdc27e8.tar.gz
extra-cmake-modules-e741edda28738c99531df34980ebb0b00bdc27e8.tar.bz2
-keep in sync with Qt4 from cmake
Alex svn path=/trunk/KDE/kdelibs/; revision=1063890
Diffstat (limited to 'modules')
-rw-r--r--modules/Qt4ConfigDependentSettings.cmake32
1 files changed, 25 insertions, 7 deletions
diff --git a/modules/Qt4ConfigDependentSettings.cmake b/modules/Qt4ConfigDependentSettings.cmake
index 55f7097f..f6062a74 100644
--- a/modules/Qt4ConfigDependentSettings.cmake
+++ b/modules/Qt4ConfigDependentSettings.cmake
@@ -36,8 +36,7 @@ ENDIF(UNIX)
# find dependencies for some Qt modules
# when doing builds against a static Qt, they are required
-# when doing builds against a shared Qt, they are sometimes not required
-# even some Linux distros do not require these dependencies
+# when doing builds against a shared Qt, they are not required
# if a user needs the dependencies, and they couldn't be found, they can set
# the variables themselves.
@@ -49,12 +48,31 @@ SET(QT_QTDBUS_LIB_DEPENDENCIES "")
SET(QT_QTHELP_LIB_DEPENDENCIES ${QT_QTCLUCENE_LIBRARY})
-# build using shared Qt needs -DQT_DLL
-IF(WIN32 AND NOT QT_CONFIG MATCHES "static")
- # warning currently only qconfig.pri on Windows potentially contains "static"
- # so QT_DLL might not get defined properly on other platforms.
+IF(WIN32)
+ # On Windows, qconfig.pri has "static" for static library builds
+ IF(QT_CONFIG MATCHES "static")
+ SET(QT_IS_STATIC 1)
+ ENDIF(QT_CONFIG MATCHES "static")
+ELSE(WIN32)
+ # On other platforms, check file extension to know if its static
+ IF(QT_QTCORE_LIBRARY_RELEASE)
+ GET_FILENAME_COMPONENT(qtcore_lib_ext "${QT_QTCORE_LIBRARY_RELEASE}" EXT)
+ IF(${qtcore_lib_ext} STREQUAL ${CMAKE_STATIC_LIBRARY_SUFFIX})
+ SET(QT_IS_STATIC 1)
+ ENDIF(${qtcore_lib_ext} STREQUAL ${CMAKE_STATIC_LIBRARY_SUFFIX})
+ ENDIF(QT_QTCORE_LIBRARY_RELEASE)
+ IF(QT_QTCORE_LIBRARY_DEBUG)
+ GET_FILENAME_COMPONENT(qtcore_lib_ext "${QT_QTCORE_LIBRARY_DEBUG}" EXT)
+ IF(${qtcore_lib_ext} STREQUAL ${CMAKE_STATIC_LIBRARY_SUFFIX})
+ SET(QT_IS_STATIC 1)
+ ENDIF(${qtcore_lib_ext} STREQUAL ${CMAKE_STATIC_LIBRARY_SUFFIX})
+ ENDIF(QT_QTCORE_LIBRARY_DEBUG)
+ENDIF(WIN32)
+
+# build using shared Qt needs -DQT_DLL on Windows
+IF(WIN32 AND NOT QT_IS_STATIC)
SET(QT_DEFINITIONS ${QT_DEFINITIONS} -DQT_DLL)
-ENDIF(WIN32 AND NOT QT_CONFIG MATCHES "static")
+ENDIF(WIN32 AND NOT QT_IS_STATIC)
# QtOpenGL dependencies