Usando destinos de alias no CMake
Ao definir destinos do CMake, é possível criar destinos de alias para que o nome do alias possa ser usado para se referir ao destino definido nos comandos subseqüentes. Por exemplo
add_library(foo_lib foo.cpp bar.cpp bat.cpp)
add_library(foo::lib ALIAS foo_lib)
Até onde eu entendi, isso tem a vantagem de que o nomefoo_lib
não aparece como um alvo de marca. No entanto, dado esse nome alternativo, eu gostaria de definir todos os tipos de propriedades para eles, como:
set_target_properties(foo::lib PROPERTIES COMPILE_DEFINITIONS ...)
target_include_directories(foo::lib PUBLIC ... PRIVATE ...)
infelizmente, isso não é possível, poisErro CMake: set_target_properties não pode ser usado em um destino ALIAS. Não vejo por que isso não deveria ser possível, pois eu gostaria de definir o nome da minha lib uma vez e me referir ao alias fornecido sempre que desejar ajustar uma propriedade do destino. Alguma dica sobre como usar os alias do ALIAS "corretamente"? Qual é o objetivo dos alias do ALIAS além de não aparecerem como criar alvos?