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
源文件属性可能是全局可见的。有关详细信息,请参阅其文档。