在CMake中,aux_source_directory
和set
是两个用于定义变量,但用途和行为有所不同的命令。
aux_source_directory
aux_source_directory
命令用于自动查找指定目录下的所有源文件,并将文件列表存储在指定变量中。这个命令通常用于项目中自动收集源文件,避免了手动列出所有源文件的需要,特别是当源文件数量较多或经常更改时。
语法:
aux_source_directory(<dir> <variable>)
<dir>
是你想要搜索源文件的目录。<variable>
是存储找到的源文件路径的变量。
例如:
aux_source_directory(. SRC_LIST)
这会将当前目录(.
)下的所有源文件列表存储到变量SRC_LIST
中。
set
set
命令用于显式地设置一个变量的值,可以用于定义源文件列表或任何其他类型的变量值。
语法:
set(<variable> <value1> <value2> ... <valueN>)
<variable>
是你想要设置的变量名。<value