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