宏定义
${PROJECT_SOURCE_DIR}
example: include_directories(${PROJECT_SOURCE_DIR}/home/ele/libuv/include)
代表当前项目根目录。
选项
AUX_SOURCE_DIRECTORY(path, des)
example:AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/uv SOURCES)
AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/examples/all_example SOURCES)
扫描path下的文件,添加到des变量中。
CMAKE_CXX_FLAGS/CMAKE_C_FLAGS
example:SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
设置c/c++的编译选项
SET(CMAKE_BUILD_TYPE {“Debug” | “Release”})
example: SET(CMAKE_BUILD_TYPE "Debug")
设置构建类型,配合下面一个选项使用。
SET(CMAKE_CXX_FLAGS_DEBUG “…”)
example: SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g2 -ggdb")
设置debug时的flag。