CMakeOnly.AllFindModules: clean up the Qt3/Qt4 code

This commit is contained in:
Rolf Eike Beer 2012-01-26 22:10:31 +01:00
parent 208569f1da
commit 9d72b25a86
1 changed files with 11 additions and 11 deletions

View File

@ -15,25 +15,25 @@ macro(do_find MODULE_NAME)
find_package(${MODULE_NAME}) find_package(${MODULE_NAME})
endmacro(do_find) endmacro(do_find)
# It is only possible to use either Qt3 or Qt4 in one project.
# Since FindQt will complain if both are found we explicitely
# filter out this and FindQt3. FindKDE3 also depends on Qt3 and
# is therefore also blocked
set(NO_QT4_MODULES "Qt" "Qt3" "KDE3")
foreach(FIND_MODULE ${FIND_MODULES}) foreach(FIND_MODULE ${FIND_MODULES})
string(REGEX REPLACE ".*/Find(.*)\\.cmake$" "\\1" MODULE_NAME "${FIND_MODULE}") string(REGEX REPLACE ".*/Find(.*)\\.cmake$" "\\1" MODULE_NAME "${FIND_MODULE}")
# It is only possible to use either Qt3 or Qt4 in one project. list(FIND NO_QT4_MODULES ${MODULE_NAME} NO_QT4_INDEX)
# Since FindQt will complain if both are found we explicitely if (NO_QT4_INDEX EQUAL -1)
# filter out this and FindQt3. FindKDE3 also depends on Qt3 and
# is therefore also blocked
if (NOT MODULE_NAME STREQUAL "Qt" AND
NOT MODULE_NAME STREQUAL "Qt3" AND
NOT MODULE_NAME STREQUAL "KDE3")
do_find(${MODULE_NAME}) do_find(${MODULE_NAME})
endif () endif ()
endforeach(FIND_MODULE) endforeach(FIND_MODULE)
# Qt4 is not present, so we can check Qt3 # Qt4 is not present, so we can check Qt3
if(NOT QT4_FOUND) if (NOT QT4_FOUND)
foreach(FIND_MODULE "Qt3" "Qt" "KDE3") foreach(FIND_MODULE ${NO_QT4_MODULES})
do_find(${FIND_MODULE}) do_find(${FIND_MODULE})
endforeach(FIND_MODULE) endforeach(FIND_MODULE)
endif(NOT QT4_FOUND) endif (NOT QT4_FOUND)