CMake全称Cross-Platform Makefile Generatorexpress
选项:ui
1. -Dspa
格式:-D name=value命令行
做用:给变量name赋值value,以在CMakeLists.txt中引用orm
命令:ip
1. cmake_minimum_required字符串
功能:设置cmake的最低版本限制,若实际cmake版本低于此版本,执行结束且打印错误string
示例:cmake_minimum_required(VERSION 2.6)io
2. projectform
功能:设置整个项目的名称
示例:project(jovacct)
3. option
格式:option(name "descriptive string" value)
功能:
检查变量是否在命令行中定义过,若是定义过则将name从新设置为定义值,若是没有定义过则将name设为value
命令行定义变量即 cmake -D name=value
文件CMakeLists.txt中是否认义过变量,对option没有影响
示例:
4. message
格式:message([STATUS|WARNING|AUTHOR_WARNING|FATAL_ERROR|SEND_ERROR] "message to display" args)
功能:打印输出,根据级别的不一样决定是否终止执行
示例:message("Build type: " ${CMAKE_BUILD_TYPE})
5. if
格式:if(expression) ... else(expresion) ... endif(expression)
说明:
◇ 若expression为常量
当值为1, ON, YES, TRUE, Y, 非0数字时,结果为true;
当值为0, OFF, NO, FALSE, N, IGNORE, NOTFOUND, 空字符串, 或之后缀'-NOTFOUND'结尾时,结果为false
若是参数不是上述常量值之一,则视为变量
◇ 若expression为变量,则只要变量值不是false常量中的一个,结果都为true,不然结果为false
示例:
if(var) 判断变量是否为true
if(NOT expression) 取反,表达式不为true则结果为true,不然结果为false
if(EXISTS file) 文件存在则为true,不存在则为false
if(DEFINED var) 变量过定义则为true,没有定义为false,不管变量值是true是false都没关系
if(var STREQUAL "Debug") if(var1 STREQUAL var2) 判断字符串值是否相等