Списки CMake представляют собой, по сути, строки, разделенные точкой с запятой, но если вы передадите такую переменную команде, она будет расширена на несколько аргументов - например,
set(FLAGS f1 f2 f3)
# now FLAGS == 'f1;f2;f3'
add_custom_command(
...
COMMAND my_cmd ${FLAGS}
...
)
будет правильно вызывать my_cmd f1 f2 f3
.
Теперь, если я делаю это с помощью
set_target_properties(
myTarget PROPERTIES
LINK_FLAGS "${LD_FLAGS}"
)
разложение не происходит, и я заканчиваю одним LD_FLAG, который содержит точки с запятой - бесполезен, вместо того, чтобы расширять его в строку, разделенную пробелом.
Есть ли способ сделать это так, что когда я передаю список в свойство LINK_FLAGS (или любое другое свойство), он расширяется на несколько аргументов, а не только на один?
Спасибо, Dan