Доброго времени суток,
Ест cmake-проект, где библиотеки слинкованы примерно так
rootDir/CmakeLists.txt:
set(CMAKE_AUTOMOC ON)
subdir1/CmakeLists.txt:
target_link_libraries(myLibrary PUBLIC Qt5::Core)
subdir2/CmakeLists.txt:
target_link_libraries(myModule PRIVATE myLibrary)
subdir3/CmakeLists.txt:
target_link_libraries(myApp PRIVATE myModule)
По идее myModule должен знать о Qt, но Automoc для myModule не вызывается пока в subdir2 не поместить find_package(Qt5 COMPONENTS Core REQUIRED)
В чем подвох? Как правильно организовать зависимости? Пока что я поместил find_package в корневой Cmake перед add_subdir, но возможно есть какой-то более правильный вариант?