获取源文件属性

获取源文件的属性。

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

从源文件中获取属性。属性的值存储在指定的``<variable>``中。如果未找到源属性,则行为取决于它是否已被定义为 INHERITED 属性(请参阅:command:define_property)。非继承属性会将 variable 设置为 NOTFOUND,而继承属性将搜索相关的父范围,如 define_property() 命令所述,如果仍然找不到属性,``variable `` 将被设置为空字符串。

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

在 3.18 版本加入: 可以使用以下子选项之一覆盖目录范围:

目录<目录>

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

TARGET_DIRECTORY <目标>

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

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

备注

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

也可以看看