У меня есть структура проекта вроде:
src/CMakeLists.txt
src/test/component1/CMakeLists.txt
src/test/component2/CMakeLists.txt
Для тестирования я использую Qt - однако, я хочу убедиться, что если Qt (или какой-либо другой тестовый пакет не найден), я просто пропускаю пакет.
Я пробовал
find_package(Qt4 QUIET COMPONENTS QtCore QtTestLib)
if (NOT QT4_FOUND)
message(SEND_ERROR "Qt4 not found - skipping building tests")
endif (NOT QT4_FOUND)
но это не работает, как я хочу, поскольку это все еще препятствует генерации Make файлов. Единственный способ, я могу думать, - поместить все тело файла CMakeLists в тело условного.
Есть ли способ сказать "пропустить обработку оставшейся части этого CMakeLists"?