目录
1.目录路径
cmake中的一些特殊变量,被用于帮助寻找目录。
CMAKE_SOURCE_DIR 根源目录
CMAKE_CURRENT_SOURCE_DIR 如果使用子项目和目录,则为当前源目录。
PROJECT_SOURCE_DIR 当前 cmake 项目的源目录。
CMAKE_BINARY_DIR 根二进制/构建目录。这是您运行 cmake 命令的目录。
CMAKE_CURRENT_BINARY_DIR 您当前所在的构建目录。
PROJECT_BINARY_DIR 当前项目的构建目录。
2.源文件变量
创建包含源文件的变量,可以更清楚了解这些文件,并轻松的将它们添加到多个命令中,例如add_executable()函数。
set(SOURCES #添加源文件
src/Hello.cpp
src/main.cpp
)
add_executable(${PROJECT_NAME} ${SOURCES})
在SOURCES变量中设置特定文件名的另一种方法是使用GLOB命令,通过模式匹配查找文件。
file(GLOB SOURCES "src/*.c")
3.包含头文件目录
当您有不同的头文件夹时,您可以使用 target_include_directories()函数让您的编译器知道它们。编译此目标时,这会将这些目录添加到带有 -I 标志的编译器中,例如-I/directory/path
target_include_directories(target
PRIVATE
${PROJECT_SOURCE_DIR}/include
)
翻译自:
cmake-examples/01-basic/B-hello-headers at master · ttroy50/cmake-examples · GitHub