get_source_file_property

获取源文件的一个属性。

get_source_file_property(<variable> <file>
                         [DIRECTORY <dir> | TARGET_DIRECTORY <target>]
                         <property>)

从源文件中获取属性。属性值存储在指定的 <variable> 中。如果 <file> 不是源文件或者源属性未找到,则 <variable> 将设置为 NOTFOUND。如果源属性被定义为 INHERITED 属性(参见 define_property()),则搜索将包含相关父范围,如 define_property() 命令中所述。

默认情况下,源文件的属性将从当前源目录的范围中读取。

在 3.18 版本中添加: 目录范围可以通过以下子选项之一进行覆盖

DIRECTORY <dir>

源文件属性将从 <dir> 目录的范围内读取。CMake 必须已经了解该源目录,或者通过调用 add_subdirectory() 添加了它,或者 <dir> 是顶级源目录。相对路径被视为相对于当前源目录的相对路径。

TARGET_DIRECTORY <target>

源文件属性将从创建 <target> 的目录范围内读取(因此 <target> 必须已经存在)。

使用 set_source_files_properties() 设置属性值。源文件属性通常控制文件如何构建。一个始终存在的属性是 LOCATION

注意

GENERATED 源文件属性可能在全局范围内可见。有关详细信息,请参阅其文档。

参见