Gérer les fichiers du même nom par automoc

Gérer les fichiers du même nom par automoc


Il existe l'arborescence source suivante :


*-source
*----subsource
*--------Source1.hpp
*----Source1.hpp

Les deux fichiers, ./Source1.hpp et ./subsource/Source1.hpp, doivent être gérés par moc.
Lors de l'utilisation d'automoc, il place les fichiers de sortie moc dans le même répertoire avec le même nom, car il est impossible qu'il écrase le fichier.


Qt - 5.2


CMake - 2.8.12


Les fichiers CMake sont plutôt volumineux, mais voici un bref exemple :


# Main CMakeLists.txt
set(CMAKE_AUTOMOC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
add_subdirectory("${CMAKE_SOURCE_DIR}/components/Com1" ./Com1)
# Com1 CMakeLists.txt in components/Com1
file(GLOB_RECURSE CPP_FILES source/*.cpp)
add_library(Com1 SHARED ${CPP_FILES})

Des solutions ?


Réponses :


Le tracker prétend que cela est corrigé dans CMake 3.6 :


http://public.kitware.com/Bug/view.php?id=12873


Quelques réponses de code


*-source *----subsource *--------Source1.hpp *----Source1.hpp 
# Main CMakeLists.txt set(CMAKE_AUTOMOC ON) set(CMAKE_INCLUDE_CURRENT_DIR ON)   add_subdirectory("${CMAKE_SOURCE_DIR}/components/Com1" ./Com1)   # Com1 CMakeLists.txt in components/Com1  file(GLOB_RECURSE CPP_FILES source/*.cpp) add_library(Com1 SHARED ${CPP_FILES})