HEADER_FILE_ONLY¶
此源文件是否仅为头文件。
源文件的一个属性,指示源文件是否为没有关联实现的头文件。 这会根据文件扩展名自动设置,并由 CMake 用来确定是否应计算某些依赖关系信息。
通过将此属性设置为 ON
,您可以禁用给定源文件的编译,即使它应该是库/可执行文件源文件的一部分而应该被编译。
如果您有一些源文件需要以某种方式预处理,然后通过 add_library()
或 add_executable()
添加这些预处理后的源文件,这将非常有用。 通常,在 IDE 中,不会引用原始源文件,而只会引用这些预处理后的源文件。 因此,通过将所有原始源文件的此属性设置为 ON
,然后调用 add_library()
或 add_executable()
,同时传递预处理后的源文件和原始源文件,或者通过使用 target_sources()
添加原始源文件,将完全达到预期的效果,即原始源文件将在 IDE 中可见,并且不会被构建。