Звучит так, будто вы хотите внешний проект CMake.Я довольно много работал с ним при разработке системы сборки Titan, и она предоставляет способ управления несколькими сборками из исходного кода.Вы можете включить ExternalProject, и тогда что-то вроде следующего создаст проект:
ExternalProject_Add(Qt
DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR}
URL ${qt_file}
UPDATE_COMMAND ""
SOURCE_DIR ${qt_source}
BUILD_IN_SOURCE 1
CONFIGURE_COMMAND ${qt_configure}
BUILD_COMMAND ${qt_build}
INSTALL_COMMAND "${qt_install}"
)
В выпуске от источника также есть статья о внешних проектахИспользуя внешний проект, вы можете вызывать любые команды make, доступные в хост-системе, мы собираем Qt, используя прилагаемую команду configure для Windows, Mac и Linux.