【问题标题】:Add space separated string to cmake `include_directories`将空格分隔的字符串添加到 cmake `include_directories`
【发布时间】:2016-12-31 21:25:29
【问题描述】:

我有一个空格分隔的字符串,表示我想添加的包含目录,我们称之为${MYSTRING},假设它包含字符串my/dir1 my/dir2 my/dir3

使用:

include_directories(${MYSTRING})

导致生成文件不正确,因为添加的 CXX_FLAGS 是:

-Imy/dir1 my/dir2 my/dir3

而不是:

-Imy/dir1 -Imy/dir2 -Imy/dir3

无论如何我可以解决这个问题吗?该字符串是通过外部命令生成的,我宁愿不必依赖外部工具,例如sed

【问题讨论】:

标签: cmake


【解决方案1】:

使用separate_arguments,它接受一个以空格分隔的字符串并将其转换为一个列表:

set(MY_LIST ${MYSTRING})
separate_arguments(MY_LIST)
include_directories(${MY_LIST})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-01
    • 2023-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多