Merge topic 'FindQt-fixes'

b937f753 FindQt: explicitely mention that it cannot Qt5 or later
6af8cbf2 FindQt: fix variable name in error message
49d05a47 FindQt: fix setting DESIRED_QT_VERSION if "find_package(Qt VVV)" was called
This commit is contained in:
Brad King 2015-01-19 09:43:20 -05:00 committed by CMake Topic Stage
commit a5be8e3111
1 changed files with 10 additions and 3 deletions

View File

@ -13,6 +13,9 @@
# or FindQt4 module is included. Once the user sets DESIRED_QT_VERSION,
# then the FindQt3 or FindQt4 module is included.
#
# This module can only detect and switch between Qt versions 3 and 4. It
# cannot handle Qt5 or any later versions.
#
# ::
#
# QT_REQUIRED if this is set to TRUE then if CMake can
@ -79,7 +82,11 @@ endif()
set(GLOB_TEMP_VAR)
if (Qt_FIND_VERSION)
set(DESIRED_QT_VERSION "${Qt_FIND_VERSION}")
if (Qt_FIND_VERSION MATCHES "^([34])(\\.[0-9]+.*)?$")
set(DESIRED_QT_VERSION ${CMAKE_MATCH_1})
else ()
message(FATAL_ERROR "FindQt was called with invalid version '${Qt_FIND_VERSION}'. Only Qt major versions 3 or 4 are supported. If you do not need to support both Qt3 and Qt4 in your source consider calling find_package(Qt3) or find_package(Qt4) instead of find_package(Qt) instead.")
endif ()
endif ()
# now find qmake
@ -179,9 +186,9 @@ else()
endif()
if(NOT QT_FOUND AND DESIRED_QT_VERSION)
if(QT_REQUIRED)
message(FATAL_ERROR "CMake was unable to find Qt version: ${DESIRED_QT_VERSION}. Set advanced values QT_QMAKE_EXECUTABLE and QT${DESIRED_QT_VERSION}_QGLOBAL_FILE, if those are set then QT_QT_LIBRARY or QT_LIBRARY_DIR.")
message(FATAL_ERROR "CMake was unable to find Qt version: ${DESIRED_QT_VERSION}. Set advanced values QT_QMAKE_EXECUTABLE and QT${DESIRED_QT_VERSION}_QGLOBAL_H_FILE, if those are set then QT_QT_LIBRARY or QT_LIBRARY_DIR.")
else()
message( "CMake was unable to find desired Qt version: ${DESIRED_QT_VERSION}. Set advanced values QT_QMAKE_EXECUTABLE and QT${DESIRED_QT_VERSION}_QGLOBAL_FILE.")
message( "CMake was unable to find desired Qt version: ${DESIRED_QT_VERSION}. Set advanced values QT_QMAKE_EXECUTABLE and QT${DESIRED_QT_VERSION}_QGLOBAL_H_FILE.")
endif()
endif()
endif()