//添加一个库
add_library(name STATIC/SHARED/MODULE source)
例: add_library( native-lib SHARED native-lib.cpp)
include_directories
设置头文件目录: 相当于g++选项中的-l参数
include_directories(header-dir)是一个全局包括,向下传递。
add_executable
添加可执行文件
例: add_executable(name $(SRC_LIST))
add_compile_options
由于不同的编译器支持不同的选项,这个命令的典型用法是在编译器特定的条件子句中。
target_link_libraries
将若干库链接到目标库文件
链接顺序应当符合gcc链接顺序规则,被链接库放在依赖它的库后边,如lib1依赖于lib2,lib2依赖lib3则
target_link_libraries(name lib1 lib2 lib3)
target_include_directories
指定目标包含的头文件路径
target_compile_options
指定目标的编译选项
add_definitions("-DUSE_MACRO")
为当前路径以及子目录的源文件加入由-D引入的define flag
SET设置变量
SET(LIBRARY_OUT_PATH[output_path])
设置库文件的输出路径,LIBRARY_OUTPUT_PATH是全局变量
add_subdirectory(sub_dir [binary_dir])
set_property
在给定的作用域内设置一个命名的属性
find_library
查找系统库
多个源文件处理
aux_source_directory(. DIR_SRCS)
or
file(GLOB DIR_SRCS *.c *.cpp)
add_library(native-lib SHARED ${DIR_SRCS})
网友评论