From 9d0817f4751618c08ac6c252eec38a92fa9da2f5 Mon Sep 17 00:00:00 2001 From: Caleb Tennis Date: Mon, 5 Mar 2007 13:21:55 +0000 Subject: This patch fixes finding Qt4 when installed as a framework on OS X. The original code simply implied that if Qt4 was installed as a framework, all of the components would be there. However, this patch actually verifies the components are installed and sets the appropriate _FOUND variables if they are found or not. Patch was originally submitted to kde-buildsystem. However, I'm guessing most current users aren't on OS X and using the framework install, so the impact is probably minimal at the moment. svn path=/trunk/KDE/kdelibs/; revision=639611 --- modules/FindQt4.cmake | 85 +++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 73 insertions(+), 12 deletions(-) (limited to 'modules') diff --git a/modules/FindQt4.cmake b/modules/FindQt4.cmake index 9fc24bc0..8b97377e 100644 --- a/modules/FindQt4.cmake +++ b/modules/FindQt4.cmake @@ -553,20 +553,81 @@ IF (QT4_QMAKE_FOUND) IF (QT_USE_FRAMEWORKS) # If FIND_LIBRARY found libraries in Apple frameworks, we would NOT have # to jump through these hoops. - SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") - SET(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" CACHE STRING "The Qt3Support library.") - SET(QT_QTGUI_LIBRARY "-framework QtGui" CACHE STRING "The QtGui library.") - SET(QT_QTNETWORK_LIBRARY "-framework QtNetwork" CACHE STRING "The QtNetwork library.") - SET(QT_QTOPENGL_LIBRARY "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") - SET(QT_QTSQL_LIBRARY "-framework QtSql" CACHE STRING "The QtSql library.") - SET(QT_QTXML_LIBRARY "-framework QtXml" CACHE STRING "The QtXml library.") - SET(QT_QTSVG_LIBRARY "-framework QtSvg" CACHE STRING "The QtSvg library.") - SET(QT_QTDBUS_LIBRARY "-framework QtDBus" CACHE STRING "The QtDBus library.") - SET(QT_QTTEST_LIBRARY "-framework QtTest" CACHE STRING "The QtTest library.") + IF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND TRUE) + SET(QT_QTCORE_LIBRARY "-F${QT_LIBRARY_DIR} -framework QtCore" CACHE STRING "The QtCore library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + SET(QT_QTCORE_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtCore.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND TRUE) + SET(QT_QTGUI_LIBRARY "-framework QtGui" CACHE STRING "The QtGui library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + SET(QT_QTGUI_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtGui.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND TRUE) + SET(QT_QT3SUPPORT_LIBRARY "-framework Qt3Support" CACHE STRING "The Qt3Support library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + SET(QT_QT3SUPPORT_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/Qt3Support.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND TRUE) + SET(QT_QTNETWORK_LIBRARY "-framework QtNetwork" CACHE STRING "The QtNetwork library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + SET(QT_QTNETWORK_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtNetwork.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND TRUE) + SET(QT_QTOPENGL_LIBRARY "-framework QtOpenGL" CACHE STRING "The QtOpenGL library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + SET(QT_QTOPENGL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtOpenGL.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND TRUE) + SET(QT_QTSQL_LIBRARY "-framework QtSql" CACHE STRING "The QtSql library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + SET(QT_QTSQL_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSql.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND TRUE) + SET(QT_QTXML_LIBRARY "-framework QtXml" CACHE STRING "The QtXml library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + SET(QT_QTXML_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtXml.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND TRUE) + SET(QT_QTSVG_LIBRARY "-framework QtSvg" CACHE STRING "The QtSvg library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + SET(QT_QTSVG_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtSvg.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND TRUE) + SET(QT_QTDBUS_LIBRARY "-framework QtDBus" CACHE STRING "The QtDBus library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + SET(QT_QTDBUS_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtDBus.framework) + + IF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND TRUE) + SET(QT_QTTEST_LIBRARY "-framework QtTest" CACHE STRING "The QtTest library.") + ELSE(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) + SET(QT_QTTEST_FOUND FALSE) + ENDIF(EXISTS ${QT_LIBRARY_DIR}/QtTest.framework) # WTF? why don't we have frameworks? :P - SET(QT_QTUITOOLS_LIBRARY "-L${QT_LIBRARY_DIR} -lQtUiTools" CACHE STRING "The QtUiTools library.") - SET(QT_QTSCRIPT_LIBRARY "-L${QT_LIBRARY_DIR} -lQtScript" CACHE STRING "The QtScript library.") + # Set QT_QTUITOOLS_LIBRARY + FIND_LIBRARY(QT_QTUITOOLS_LIBRARY NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR} ) + # Set QT_QTSCRIPT_LIBRARY + FIND_LIBRARY(QT_QTSCRIPT_LIBRARY NAMES QtScript QtScript4 PATHS ${QT_LIBRARY_DIR} ) ELSE (QT_USE_FRAMEWORKS) -- cgit v1.2.1