2014-09-18 14 views
12

Irgendwie habe ich Probleme damit herauszufinden, ob es möglich ist, eine importierte Bibliothek in CMake zu definieren, Zieleigenschaften (include_directories und Bibliothekspfad) anzugeben und hofft, dass CMake die include-Verzeichnisse anfügt, sobald ich dieses Projekt target_link_libraries in einem anderen Projekt hinzufüge.Es ist möglich, eine importierte Bibliothek zu target_link_libraries hinzuzufügen, die sich auch um Include-Verzeichnisse kümmert?

Lassen Sie uns sagen, ich habe eine importierte Bibliothek in einer Datei Modul Conf.cmake genannt:

add_library(mymodule STATIC IMPORTED) 
set_target_properties(mymodule PROPERTIES IMPORTED_LOCATION "${OUTPUT_DIR}/lib") 
set_target_properties(mymodule PROPERTIES INCLUDE_DIRECTORIES "${OUTPUT_DIR}/include") 

Und in einem Projekt hinzufügen ich die Abhängigkeit:

include(Module-Conf) 
target_link_libraries(${PROJECT_NAME} mymodule) 

Wird CMake die include_directories Eigenschaft anhängen zum Include-Pfad? Im Moment kann ich den Pfad nicht sehen, also scheint es, dass ich es selbst tun muss, indem ich get_target_property verwende?

Frage: Kann ich eine CMake-Magie verwenden, um das Include automatisch an die Include-Verzeichnisse eines anderen Projekts anzuhängen?

Vielen Dank. Martin

Antwort

Verwandte Themen