project
为整个工程设置名称、版本和启用语言
project(<PROJECT-NAME> [LANGUAGES] [<language-name>...])
project(<PROJECT-NAME> [VERSION <major>[.<minor>[.<patch>[.<tweak>]]]] [LANGUAGES <language-name>...])例:project(MyProject)
工程名称被保存在变量PROJECT_NAME中
参考链接:
message
向用户显示一条消息
message([<mode>] "message to display" ...)
<mode>决定了消息类型,有如下可选的关键字:
STATUS、WARNING、AUTHOR_WARNING、SEND_ERROR、FATAL_ERROR、DEPRECATION
例:message("Project Name: ${PROJECT_NAME}")
显示工程名称
参考链接:
set
以给定值设置一个正常、缓存或环境变量
set(<variable> <value>... [PARENT_SCOPE])
例:set(SRC_LIST main.cpp)
名为SRC_LIST的变量值为main.cpp
参考链接:
add_executable
使用指定的源文件,添加一个可执行文件到工程
add_executable(<name> [WIN32] [MACOSX_BUNDLE]
[EXCLUDE_FROM_ALL] source1 [source2 ...])例:add_executable(executable main.cpp source.cpp)
可执行文件名为executable,源文件为main.cpp、source.cpp
参考链接:
add_subdirectory
将一个子目录添加到构建
add_subdirectory(source_dir [binary_dir] [EXCLUDE_FROM_ALL])
例:add_subdirectory(src bin)
src是添加的子目录,bin是二进制目录
参考链接:
if
根据条件执行一组命令
if(expression)
# then section. COMMAND1(ARGS ...) COMMAND2(ARGS ...) ...elseif(expression2) # elseif section. COMMAND1(ARGS ...) COMMAND2(ARGS ...) ...else(expression) # else section. COMMAND1(ARGS ...) COMMAND2(ARGS ...) ...endif(expression)参考链接: