findqt4.cmake

来自「Gaussian Mixture Algorithm」· CMAKE 代码 · 共 1,031 行 · 第 1/3 页

CMAKE
1,031
字号
    ELSE (QT_USE_FRAMEWORKS)      STRING( REGEX REPLACE "/QtCore$" "" qt4_include_dir ${QT_QTCORE_INCLUDE_DIR})      SET( QT_INCLUDE_DIR ${qt4_include_dir} CACHE PATH "")    ENDIF (QT_USE_FRAMEWORKS)  ENDIF( QT_QTCORE_INCLUDE_DIR AND NOT QT_INCLUDE_DIR)  IF( NOT QT_INCLUDE_DIR)    IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED)      MESSAGE( FATAL_ERROR "Could NOT find QtGlobal header")    ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED)  ENDIF( NOT QT_INCLUDE_DIR)  #############################################  #  # Find out what window system we're using  #  #############################################  # Save required includes variable  SET(CMAKE_REQUIRED_INCLUDES_SAVE ${CMAKE_REQUIRED_INCLUDES})  # Add QT_INCLUDE_DIR to CMAKE_REQUIRED_INCLUDES  SET(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${QT_INCLUDE_DIR}")  # Check for Window system symbols (note: only one should end up being set)  CHECK_SYMBOL_EXISTS(Q_WS_X11 "QtCore/qglobal.h" Q_WS_X11)  CHECK_SYMBOL_EXISTS(Q_WS_MAC "QtCore/qglobal.h" Q_WS_MAC)  CHECK_SYMBOL_EXISTS(Q_WS_WIN "QtCore/qglobal.h" Q_WS_WIN)  IF (QT_QTCOPY_REQUIRED)     CHECK_SYMBOL_EXISTS(QT_IS_QTCOPY "QtCore/qglobal.h" QT_KDE_QT_COPY)     IF (NOT QT_IS_QTCOPY)        MESSAGE(FATAL_ERROR "qt-copy is required, but hasn't been found")     ENDIF (NOT QT_IS_QTCOPY)  ENDIF (QT_QTCOPY_REQUIRED)  # Restore CMAKE_REQUIRED_INCLUDES variable  SET(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_SAVE})  #  #############################################  IF (QT_USE_FRAMEWORKS)    SET(QT_DEFINITIONS ${QT_DEFINITIONS} -F${QT_LIBRARY_DIR} -L${QT_LIBRARY_DIR} )  ENDIF (QT_USE_FRAMEWORKS)  # Set QT_QT3SUPPORT_INCLUDE_DIR  FIND_PATH(QT_QT3SUPPORT_INCLUDE_DIR Qt3Support    PATHS    ${QT_INCLUDE_DIR}/Qt3Support    ${QT_LIBRARY_DIR}/Qt3Support.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QT_INCLUDE_DIR  FIND_PATH(QT_QT_INCLUDE_DIR qglobal.h    PATHS    ${QT_INCLUDE_DIR}/Qt    ${QT_LIBRARY_DIR}/QtCore.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QTGUI_INCLUDE_DIR  FIND_PATH(QT_QTGUI_INCLUDE_DIR QtGui    PATHS    ${QT_INCLUDE_DIR}/QtGui    ${QT_LIBRARY_DIR}/QtGui.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QTSVG_INCLUDE_DIR  FIND_PATH(QT_QTSVG_INCLUDE_DIR QtSvg    PATHS    ${QT_INCLUDE_DIR}/QtSvg    ${QT_LIBRARY_DIR}/QtSvg.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QTTEST_INCLUDE_DIR  FIND_PATH(QT_QTTEST_INCLUDE_DIR QtTest    PATHS    ${QT_INCLUDE_DIR}/QtTest    ${QT_LIBRARY_DIR}/QtTest.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QTUITOOLS_INCLUDE_DIR  FIND_PATH(QT_QTUITOOLS_INCLUDE_DIR QtUiTools    PATHS    ${QT_INCLUDE_DIR}/QtUiTools    ${QT_LIBRARY_DIR}/QtUiTools.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QTMOTIF_INCLUDE_DIR  IF(Q_WS_X11)    FIND_PATH(QT_QTMOTIF_INCLUDE_DIR QtMotif PATHS ${QT_INCLUDE_DIR}/QtMotif NO_DEFAULT_PATH )  ENDIF(Q_WS_X11)  # Set QT_QTNETWORK_INCLUDE_DIR  FIND_PATH(QT_QTNETWORK_INCLUDE_DIR QtNetwork    PATHS    ${QT_INCLUDE_DIR}/QtNetwork    ${QT_LIBRARY_DIR}/QtNetwork.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QTNSPLUGIN_INCLUDE_DIR  FIND_PATH(QT_QTNSPLUGIN_INCLUDE_DIR QtNsPlugin    PATHS    ${QT_INCLUDE_DIR}/QtNsPlugin    ${QT_LIBRARY_DIR}/QtNsPlugin.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QTOPENGL_INCLUDE_DIR  FIND_PATH(QT_QTOPENGL_INCLUDE_DIR QtOpenGL    PATHS    ${QT_INCLUDE_DIR}/QtOpenGL    ${QT_LIBRARY_DIR}/QtOpenGL.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QTSQL_INCLUDE_DIR  FIND_PATH(QT_QTSQL_INCLUDE_DIR QtSql    PATHS    ${QT_INCLUDE_DIR}/QtSql    ${QT_LIBRARY_DIR}/QtSql.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QTXML_INCLUDE_DIR  FIND_PATH(QT_QTXML_INCLUDE_DIR QtXml    PATHS    ${QT_INCLUDE_DIR}/QtXml    ${QT_LIBRARY_DIR}/QtXml.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QTASSISTANT_INCLUDE_DIR  FIND_PATH(QT_QTASSISTANT_INCLUDE_DIR QtAssistant    PATHS    ${QT_INCLUDE_DIR}/QtAssistant    ${QT_HEADERS_DIR}/QtAssistant    ${QT_LIBRARY_DIR}/QtAssistant.framework/Headers    NO_DEFAULT_PATH    )  # Set QT_QTDESIGNER_INCLUDE_DIR  FIND_PATH(QT_QTDESIGNER_INCLUDE_DIR QDesignerComponents    PATHS    ${QT_INCLUDE_DIR}/QtDesigner    ${QT_HEADERS_DIR}/QtDesigner    ${QT_LIBRARY_DIR}/QtDesigner.framework/Headers    NO_DEFAULT_PATH    )  # Make variables changeble to the advanced user  MARK_AS_ADVANCED( QT_LIBRARY_DIR QT_INCLUDE_DIR QT_QT_INCLUDE_DIR QT_DOC_DIR)  # Set QT_INCLUDES  SET( QT_INCLUDES ${QT_INCLUDE_DIR} ${QT_QT_INCLUDE_DIR} ${QT_MKSPECS_DIR}/default )    # Set QT_QTCORE_LIBRARY by searching for a lib with "QtCore."  as part of the filename    FIND_LIBRARY(QT_QTCORE_LIBRARY_RELEASE NAMES QtCore QtCore4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH )  FIND_LIBRARY(QT_QTCORE_LIBRARY_DEBUG NAMES QtCore_debug QtCored QtCored4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    # Set QT_QT3SUPPORT_LIBRARY    FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_RELEASE NAMES Qt3Support Qt3Support4 PATHS ${QT_LIBRARY_DIR}        NO_DEFAULT_PATH)    FIND_LIBRARY(QT_QT3SUPPORT_LIBRARY_DEBUG   NAMES Qt3Support_debug Qt3Supportd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    # Set QT_QTGUI_LIBRARY    FIND_LIBRARY(QT_QTGUI_LIBRARY_RELEASE NAMES QtGui QtGui4 PATHS ${QT_LIBRARY_DIR}        NO_DEFAULT_PATH)    FIND_LIBRARY(QT_QTGUI_LIBRARY_DEBUG   NAMES QtGui_debug QtGuid4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    # Set QT_QTMOTIF_LIBRARY    IF(Q_WS_X11)      FIND_LIBRARY(QT_QTMOTIF_LIBRARY_RELEASE NAMES QtMotif PATHS ${QT_LIBRARY_DIR}       NO_DEFAULT_PATH)      FIND_LIBRARY(QT_QTMOTIF_LIBRARY_DEBUG   NAMES QtMotif_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    ENDIF(Q_WS_X11)    # Set QT_QTNETWORK_LIBRARY    FIND_LIBRARY(QT_QTNETWORK_LIBRARY_RELEASE NAMES QtNetwork QtNetwork4 PATHS ${QT_LIBRARY_DIR}        NO_DEFAULT_PATH)    FIND_LIBRARY(QT_QTNETWORK_LIBRARY_DEBUG   NAMES QtNetwork_debug QtNetworkd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    # Set QT_QTNSPLUGIN_LIBRARY    FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_RELEASE NAMES QtNsPlugin PATHS ${QT_LIBRARY_DIR}       NO_DEFAULT_PATH)    FIND_LIBRARY(QT_QTNSPLUGIN_LIBRARY_DEBUG   NAMES QtNsPlugin_debug PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    # Set QT_QTOPENGL_LIBRARY    FIND_LIBRARY(QT_QTOPENGL_LIBRARY_RELEASE NAMES QtOpenGL QtOpenGL4 PATHS ${QT_LIBRARY_DIR}        NO_DEFAULT_PATH)    FIND_LIBRARY(QT_QTOPENGL_LIBRARY_DEBUG   NAMES QtOpenGL_debug QtOpenGLd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    # Set QT_QTSQL_LIBRARY    FIND_LIBRARY(QT_QTSQL_LIBRARY_RELEASE NAMES QtSql QtSql4 PATHS ${QT_LIBRARY_DIR}        NO_DEFAULT_PATH)    FIND_LIBRARY(QT_QTSQL_LIBRARY_DEBUG   NAMES QtSql_debug QtSqld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    # Set QT_QTXML_LIBRARY    FIND_LIBRARY(QT_QTXML_LIBRARY_RELEASE NAMES QtXml QtXml4 PATHS ${QT_LIBRARY_DIR}        NO_DEFAULT_PATH)    FIND_LIBRARY(QT_QTXML_LIBRARY_DEBUG   NAMES QtXml_debug QtXmld4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    # Set QT_QTSVG_LIBRARY    FIND_LIBRARY(QT_QTSVG_LIBRARY_RELEASE NAMES QtSvg QtSvg4 PATHS ${QT_LIBRARY_DIR}        NO_DEFAULT_PATH)    FIND_LIBRARY(QT_QTSVG_LIBRARY_DEBUG   NAMES QtSvg_debug QtSvgd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    # Set QT_QTUITOOLS_LIBRARY    FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_RELEASE NAMES QtUiTools QtUiTools4 PATHS ${QT_LIBRARY_DIR}        NO_DEFAULT_PATH)    FIND_LIBRARY(QT_QTUITOOLS_LIBRARY_DEBUG   NAMES QtUiTools_debug QtUiToolsd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    # Set QT_QTTEST_LIBRARY    FIND_LIBRARY(QT_QTTEST_LIBRARY_RELEASE NAMES QtTest QtTest4 PATHS ${QT_LIBRARY_DIR}                      NO_DEFAULT_PATH)    FIND_LIBRARY(QT_QTTEST_LIBRARY_DEBUG   NAMES QtTest_debug QtTest_debug4 QtTestd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)    MARK_AS_ADVANCED(QT_QT3SUPPORT_LIBRARY QT_QTGUI_LIBRARY )  IF( NOT QT_QTCORE_LIBRARY_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE )    IF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED)      MESSAGE( FATAL_ERROR "Could NOT find QtCore. Check ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log for more details.")    ENDIF( NOT Qt4_FIND_QUIETLY AND Qt4_FIND_REQUIRED)  ENDIF( NOT QT_QTCORE_LIBRARY_DEBUG AND NOT QT_QTCORE_LIBRARY_RELEASE )  # Set QT_QTASSISTANT_LIBRARY  FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_RELEASE NAMES QtAssistantClient QtAssistantClient4 QtAssistant QtAssistant4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)  FIND_LIBRARY(QT_QTASSISTANT_LIBRARY_DEBUG   NAMES QtAssistantClientd QtAssistantClientd4 QtAssistantClient_debug QtAssistant_debug QtAssistantd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)  # Set QT_QTDESIGNER_LIBRARY  FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_RELEASE NAMES QtDesigner QtDesigner4 PATHS ${QT_LIBRARY_DIR}        NO_DEFAULT_PATH)  FIND_LIBRARY(QT_QTDESIGNER_LIBRARY_DEBUG   NAMES QtDesigner_debug QtDesignerd4 PATHS ${QT_LIBRARY_DIR} NO_DEFAULT_PATH)  # Set QT_QTMAIN_LIBRARY  IF(WIN32)    FIND_LIBRARY(QT_QTMAIN_LIBRARY_RELEASE NAMES qtmain PATHS ${QT_LIBRARY_DIR}      NO_DEFAULT_PATH)    FIND_LIBRARY(QT_QTMAIN_LIBRARY_DEBUG NAMES qtmaind PATHS ${QT_LIBRARY_DIR}      NO_DEFAULT_PATH)  ENDIF(WIN32)  ############################################  #  # Check the existence of the libraries.  #  ############################################  MACRO (_QT4_ADJUST_LIB_VARS basename)    IF (QT_${basename}_INCLUDE_DIR)      # if only the release version was found, set the debug variable also to the release version      IF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG)        SET(QT_${basename}_LIBRARY_DEBUG ${QT_${basename}_LIBRARY_RELEASE})        SET(QT_${basename}_LIBRARY       ${QT_${basename}_LIBRARY_RELEASE})        SET(QT_${basename}_LIBRARIES     ${QT_${basename}_LIBRARY_RELEASE})      ENDIF (QT_${basename}_LIBRARY_RELEASE AND NOT QT_${basename}_LIBRARY_DEBUG)      # if only the debug version was found, set the release variable also to the debug version      IF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE)        SET(QT_${basename}_LIBRARY_RELEASE ${QT_${basename}_LIBRARY_DEBUG})        SET(QT_${basename}_LIBRARY         ${QT_${basename}_LIBRARY_DEBUG})        SET(QT_${basename}_LIBRARIES       ${QT_${basename}_LIBRARY_DEBUG})      ENDIF (QT_${basename}_LIBRARY_DEBUG AND NOT QT_${basename}_LIBRARY_RELEASE)      IF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE)        # if the generator supports configuration types then set        # optimized and debug libraries, or if the CMAKE_BUILD_TYPE has a value        IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE)          SET(QT_${basename}_LIBRARY       optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG})        ELSE(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE)          # if there are no configuration types and CMAKE_BUILD_TYPE has no value          # then just use the release libraries          SET(QT_${basename}_LIBRARY       ${QT_${basename}_LIBRARY_RELEASE} )        ENDIF(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE)        SET(QT_${basename}_LIBRARIES       optimized ${QT_${basename}_LIBRARY_RELEASE} debug ${QT_${basename}_LIBRARY_DEBUG})      ENDIF (QT_${basename}_LIBRARY_DEBUG AND QT_${basename}_LIBRARY_RELEASE)      SET(QT_${basename}_LIBRARY ${QT_${basename}_LIBRARY} CACHE FILEPATH "The Qt ${basename} library")      IF (QT_${basename}_LIBRARY)        SET(QT_${basename}_FOUND 1)      ENDIF (QT_${basename}_LIBRARY)      #add the include directory to QT_INCLUDES      SET(QT_INCLUDES ${QT_INCLUDES} "${QT_${basename}_INCLUDE_DIR}")    ENDIF (QT_${basename}_INCLUDE_DIR )    # Make variables changeble to the advanced user    MARK_AS_ADVANCED(QT_${basename}_LIBRARY QT_${basename}_LIBRARY_RELEASE QT_${basename}_LIBRARY_DEBUG QT_${basename}_INCLUDE_DIR)  ENDMACRO (_QT4_ADJUST_LIB_VARS)  IF(WIN32)    # there is no include for qtmain but adjust macro needs it set    SET(QT_QTMAIN_INCLUDE_DIR 1)     _QT4_ADJUST_LIB_VARS(QTMAIN)    SET(QT_QTMAIN_INCLUDE_DIR )  ENDIF(WIN32)  _QT4_ADJUST_LIB_VARS(QTCORE)  _QT4_ADJUST_LIB_VARS(QTGUI)  _QT4_ADJUST_LIB_VARS(QT3SUPPORT)  _QT4_ADJUST_LIB_VARS(QTASSISTANT)  _QT4_ADJUST_LIB_VARS(QTDESIGNER)  IF(Q_WS_X11)    _QT4_ADJUST_LIB_VARS(QTMOTIF)  ENDIF(Q_WS_X11)  _QT4_ADJUST_LIB_VARS(QTNETWORK)  _QT4_ADJUST_LIB_VARS(QTNSPLUGIN)  _QT4_ADJUST_LIB_VARS(QTOPENGL)  _QT4_ADJUST_LIB_VARS(QTSQL)  _QT4_ADJUST_LIB_VARS(QTXML)  _QT4_ADJUST_LIB_VARS(QTSVG)  _QT4_ADJUST_LIB_VARS(QTUITOOLS)  _QT4_ADJUST_LIB_VARS(QTTEST)  #######################################  #  #       Check the executables of Qt   #          ( moc, uic, rcc )  #  #######################################   # find moc and uic using qmake  QT_QUERY_QMAKE(QT_MOC_EXECUTABLE_INTERNAL "QMAKE_MOC")  QT_QUERY_QMAKE(QT_UIC_EXECUTABLE_INTERNAL "QMAKE_UIC")   FILE(TO_CMAKE_PATH      "${QT_MOC_EXECUTABLE_INTERNAL}" QT_MOC_EXECUTABLE_INTERNAL)   FILE(TO_CMAKE_PATH      "${QT_UIC_EXECUTABLE_INTERNAL}" QT_UIC_EXECUTABLE_INTERNAL)   SET(QT_MOC_EXECUTABLE      ${QT_MOC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The moc executable")   SET(QT_UIC_EXECUTABLE      ${QT_UIC_EXECUTABLE_INTERNAL} CACHE FILEPATH "The uic executable")  FIND_PROGRAM(QT_UIC3_EXECUTABLE    NAMES uic3    PATHS ${QT_BINARY_DIR}    NO_DEFAULT_PATH    )  FIND_PROGRAM(QT_RCC_EXECUTABLE     NAMES rcc    PATHS ${QT_BINARY_DIR}    NO_DEFAULT_PATH    )

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?