aux_source_directory¶
查找目录中的所有源文件。
aux_source_directory(<dir> <variable>)
收集指定目录中所有源文件的名称,并将列表存储在提供的 <变量> 中。 此命令旨在用于使用显式模板实例化(explicit template instantiation)的项目。 模板实例化文件可以存储在 Templates 子目录中,并使用此命令自动收集,以避免手动列出所有实例化。
使用此命令来避免编写库或可执行目标的文件列表可能很诱人。 虽然这似乎有效,但 CMake 无法生成一个知道何时添加了新源文件的构建系统。 通常,生成的构建系统知道何时需要重新运行 CMake,因为 CMakeLists.txt 文件被修改以添加新的源文件。 当源文件只是添加到目录中而没有修改此文件时,必须手动重新运行 CMake 才能生成包含新文件的构建系统。