CMake教程13:美化构建后的项目工程结构

简介: CMake教程13:美化构建后的项目工程结构

通过一些基础的配置,CMake是可以生成一份对应平台的IDE项目工程的。

不过这个工程结构可能非常的杂乱,所有的东西都是堆在一起的。

将多个Target放到一个工程目录下

set_target_properties用来设置target的属性,语法如下:

set_target_properties(
    target1 target2 ...
    PROPERTIES 
        prop1 value1
        prop2 value2 ...
)
复制代码

使用FOLDER属性可以将生成的多个target放在一个目录下

set_property(GLOBAL PROPERTY USE_FOLDERS ON)
set_target_properties(
    cocos2d luacocos2d cocos2dInternal
    PROPERTIES
        FOLDER "cocos"
)
复制代码

网络异常,图片无法展示
|

既然有这是,就有获取,对应的命令为:get_propertyget_target_properties

一些常用的TargetProperty

标题 作用
FOLDER 将多个target放到一个工程目录下,可以使用/分割设置多级目录
MACOSX_BUNDLE_GUI_IDENTIFIER bundle的名字 mac
MACOSX_BUNDLE_BUNDLE_VERSION 版本号
MACOSX_BUNDLE 在Mac、IOS上构建一个可以运行的应用程序 可选值TRUE
WIN32_EXECUTABLE 在Windows上构建一个可以运行的应用程序
MACOSX_BUNDLE_SHORT_VERSION_STRING
OUTPUT_NAME 目标文件的名字
RUNTIME_OUTPUT_DIRECTORY
ARCHIVE_OUTPUT_DIRECTORY
LIBRARY_OUTPUT_DIRECTORY
VS_USER_PROPS

对项目工程文件组进行重命名

将包含src的源码工程目录命名为src

# 语法:source_group(<name> [FILES <src>...] [REGULAR_EXPRESSION <regex>])
source_group("src" FILES ${src})
复制代码

工程目录结构按照文件夹目录结构组织

# 语法:source_group(TREE <root> [PREFIX <prefix>] [FILES <src>...])
# TREE是在3.8支持的
source_group(TREE ./ FILES ${src}
复制代码

在上边的例子里面,项目工程中的文件结构会以源文件目录的结构进行组织。

${src}里面的所有文件必须是<root>子目录文件,否则会报错:

source_group ROOT is not a prefix of file



目录
相关文章
|
1月前
|
开发框架 Unix Linux
深度探索:Qt CMake工程编译后的自动打包策略
深度探索:Qt CMake工程编译后的自动打包策略
33 0
|
缓存 Unix 编译器
Cmake 的构建结构:理解 Cmake 的构建过程和依赖管理
Cmake 的构建结构:理解 Cmake 的构建过程和依赖管理
60 0
|
5月前
|
IDE 开发工具 C++
⚡【C++要笑着学】(40) OF框架:OpenFrameworks 框架介绍 | oF 文件结构 | 图形基础 | 使用 ProjectGenerator 创建项目
⚡【C++要笑着学】(40) OF框架:OpenFrameworks 框架介绍 | oF 文件结构 | 图形基础 | 使用 ProjectGenerator 创建项目
56 0
|
8月前
|
C++
2022-9-28-CMAKE工程中Cmakelist文档编写的一些注意点
2022-9-28-CMAKE工程中Cmakelist文档编写的一些注意点
87 0
|
10月前
|
JSON 小程序 JavaScript
小程序项目结构与组件基础
小程序项目结构与组件基础
74 0
小程序项目结构与组件基础
|
11月前
|
Java Unix 编译器
CMake入门教程:从零开始构建C/C++项目
CMake是一个跨平台的自动化构建工具,可以用于构建各种类型的项目,包括C++、C、Python、Java等。本文将从零开始,介绍如何使用CMake构建一个简单的C/C++项目
238 0
|
Unix Linux Windows
Qwt开发笔记(一):Qwt简介、下载以及基础demo工程模板
QWT开发笔记系列整理集合,这是目前使用最为广泛的Qt图表类(Qt的QWidget代码方向只有QtCharts,Qwt,QCustomPlot),使用多年,系统性的整理,本系列旨在系统解说并逐步更新其各种Demo示例。
Qwt开发笔记(一):Qwt简介、下载以及基础demo工程模板
|
Dubbo Java 应用服务中间件
创建工程结构 | 学习笔记
快速学习创建工程结构。
60 0
创建工程结构 | 学习笔记
|
程序员 Android开发 开发者
Android开发:往项目工程里面新引入工具包的步骤
在Android开发过程中,有些时候会根据实际需要,要往项目里面引入工具包,作为初级开发者或者刚开始入门的Android开发者来说会不太熟练怎么引入,所以往项目工程里面新引入工具包也是必备技能。那么本篇博文就来分享一下给项目工程里面引入工具包的步骤,只分享给有需要的人。
163 0
Android开发:往项目工程里面新引入工具包的步骤
libzip开发笔记(一):libzip库介绍、编译和工程模板
libzip开发笔记(一):libzip库介绍、编译和工程模板
libzip开发笔记(一):libzip库介绍、编译和工程模板