cmake命令用法整理list命令
来源:互联网 发布:办公软件培训学校 编辑:程序博客网 时间:2024/05/17 08:51
用途:提供一些列表操作
list(LENGTH <list><output variable>)
list(GET <list> <elementindex> [<element index> ...]
<output variable>)
list(APPEND <list><element> [<element> ...])
list(FIND <list> <value><output variable>)
list(INSERT <list><element_index> <element> [<element> ...])
list(REMOVE_ITEM <list> <value>[<value> ...])
list(REMOVE_AT <list><index> [<index> ...])
list(REMOVE_DUPLICATES <list>)
list(REVERSE <list>)
list(SORT <list>)
LENGTH返回列表的长度
GET返回列表中指定下标的元素
APPEND添加新元素到列表中
INSERT 将新元素插入到列表中指定的位置
REMOVE_ITEM从列表中删除某个元素
REMOVE_AT从列表中删除指定下标的元素
REMOVE_DUPLICATES从列表中删除重复的元素
REVERSE 将列表的内容实地反转,改变的是列表本身,而不是其副本
SORT 将列表按字母顺序实地排序,改变的是列表本身,而不是其副本
列表的子命令APPEND, INSERT, REMOVE_AT, REMOVE_ITEM,REMOVE_DUPLICATES, REVERSE以及SORT在当前的CMake变量域创建一些新值。与SET命令类似,即使列表本身是在父域中定义的,LIST命令也只会在当前域创建新的变量值,为了将这些操作的结果向上传递,需要通过SET PARENT_SCOPE, SET CACHE INTERNAL或其他值域扩展的方法。
注意:cmake中的列表是以分号隔开的一组字符串。可以使用set命令创建一个列表。例如:set(var a b c d e)创建了一个这样的列表:a;b;c;d;e。 set(var “a b c d e”)创建了一个字符串或只有一个元素的列表。
当指定索引值时,<element index>为大于或等于0的值。它从列表的开始处索引,0代表列表的第一个元素。如果<element index>为小于或等于-1的值,它从列表的结尾处索引,-1代表列表的最后一个元素。
There are two possible solutions:
Use file (GLOB ...
instead of aux_source_directory
with a globbing expression that does not match that one file but includes all the others, e.g.:
file(GLOB _srcFiles "src/f[1-3].cpp")
This will match match files f1.cpp
, f2.cpp
, f3.cpp
, but not f4.cpp
.
Or use aux_source_directory
and then remove the file to be excluded explicitly with a list(REMOVE_ITEM
command, e.g.:
aux_source_directory(src _srcFiles)list(REMOVE_ITEM _srcFiles "src/f4.cpp")
备注: 在 list remove 的时候,字符串一定要保持一致,使用 MESSAGE(STATUS xxx) 打印出来,是个不错的选择。
- cmake命令用法整理list命令
- CMake命令之list
- CMake命令之list
- cmake命令之list
- cmake命令 安装、用法简介
- cmake命令 安装、用法简介
- cmake命令 安装、用法简介
- cmake 命令 安装,用法简介
- cmake命令 安装、用法简介
- cmake命令 安装、用法简介
- cmake命令 安装、用法简介
- cmake命令 安装、用法简介
- cmake命令 安装、用法简介
- CMake 命令
- CMake命令
- Cmake命令
- cmake命令的安装以及用法
- CMake学习记录--list(列表操作命令)
- Android开发之Intent.Action
- Spring中整合Xfire发布webservice服务
- mysqli 批量执行多条语句
- Linux操作系统基础 Intel32位系统架构总览
- 初识安卓基本控件_tablelayout
- cmake命令用法整理list命令
- cookie存入中文报错出现问题
- python 日期处理(日期间间隔时间)
- Web前端初步——札记1
- JDBC快速入门
- iOS中 字典转Json
- Object-C 归档、解档
- iOS与Javascript交互实战
- JS判断客户端是否是iOS或者Android