SOURCES

这指定了目标源文件的路径列表。以下命令都设置或添加到SOURCES目标属性,是操纵它的常用方式

SOURCES的内容可以使用生成器表达式。如果路径以生成器表达式开头,则期望它求值为绝对路径。否则被认为是不确定的行为。

如果路径未指定为绝对路径,则构建生成的文件路径将被视为相对于目标的构建目录。请注意,文件是否被视为生成可能会受到策略CMP0118CMP0163的影响。

如果路径不是以生成器表达式开头,也不是绝对路径,也不是生成的文件,则它将被视为相对于以下匹配项中第一个选定的位置

  • 如果指定路径的文件相对于目标的源目录存在,则使用该文件。

  • 如果策略CMP0115未设置为NEW,则尝试将每个已知的源文件扩展名附加到路径并检查该文件是否相对于目标的源目录存在。

  • 重复上述两个步骤,这次相对于目标的二进制目录。

请注意,上述决定是在生成时而非构建时做出的。

有关定义构建系统属性的更多信息,请参阅cmake-buildsystem(7)手册。