本文介绍: 在开发过程碰到需要在上级目录中构建,而源代码又分别写在下级目录的情况,同时又要根据不同的情况选择性地添加不同的源代码进行编译,所以考虑将需要编译的源代码放到一个 cmake 列表中。但是set()对应生成的变量都是局部变量(即不同的目录下不共用),于是使用set_property()命令。
1 研究set_property的背景
在开发过程碰到需要在上级目录中构建,而源代码又分别写在下级目录的情况,同时又要根据不同的情况选择性地添加不同的源代码进行编译,所以考虑将需要编译的源代码放到一个 cmake 列表中。但是set()对应生成的变量都是局部变量(即不同的目录下不共用),于是使用set_property()命令。
2 需要使用set_property设置全局属性的简单demo
我这里假设在 main() 函数下调用一个 show_system() 函数用于显示当前系统的名称。程序整体结构如下:
main.c源码,main.c 程序很简单,就调用子目录下定义的函数。
property.c 源码,property.c在 linux 和 win 的实现都一样。
3 set_property语法
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。