为什么CMake FILE(READ)会忽略我文件中的逗号?

时间:2015-06-09 07:55:19

标签: cmake

我有一个css文件(我想解析并适应Qt,但这不是问题)。让我们说一下:

QLineEdit:hover:not(focus),
QWidget QPlainTextEdit:not(hover):not(focus) {
    border-color: #5575b0;
}

我创建了一个CMake脚本,用not(...)替换!...:脚本的那部分可以正常工作。

问题是CMake删除了行尾的逗号(;)。当我这样做时:

file(READ ${INPUT_FILE_PATH} CONTENT)
message(${CONTENT})

不幸的是,输出是:

QLineEdit:hover:not(focus),
QWidget QPlainTextEdit:not(hover):not(focus) {
    border-color: #5575b0 // <-- missing comma here !
}

任何人都知道为什么会这样?以及如何避免它?

1 个答案:

答案 0 :(得分:3)

我发现了问题所在:CMake将我的输入视为一个列表,其中的元素用逗号分隔(;)。

为避免这种情况,我们必须为变量添加引号,例如"${MY_VAR}"

message("${CONTENT}")