首页 > 代码库 > cmake

cmake

http://www.cmake.org/cmake/help/v2.8.8/cmake.html

add_executable的作用是指示CMake生成一个可执行文件

add_library的作用是指示CMake生成一个库,根据参数SHARED还是STATIC来决定生成动态库还是静态库

include_directories(BEFORE include)

target_link_libraries指示传递给ld的外部库,相当于传给gcc的-lxx

link_directories(${MyProject_BINARY_DIR}/src/libxxx
${MyProject_BINARY_DIR}/src/libyyy)

将指示CMake在LDFLAGS附加-Lsrc/libxxx -Lsrc/libyyy

set_target_properties则是用于修改构建目标的一些属性,如上的语句则是让目标prs的输出libprs.a改名为libpr.a

set是CMake中常用的命令,用于设置变量,也能修改内部变量

install用于生成make install使用的语句

add_subdirectory(include)    include CMakeLists.txt

set(CMAKE_C_FLAGS ”-std=c99 -O2 -pipe -Wall -Wextra”)
set(CMAKE_C_FLAGS_DEBUG ”${CMAKE_C_FLAGS} -g -ggdb -pg”)
set(CMAKE_C_FLAGS_RELEASE ”${CMAKE_C_FLAGS} -s -DNDEBUG”)