viual studio cmake项目和文件分类(USE_FOLDERS )

演示环境

效果

  • 使用 Qt 做了一个demo, 演示多国语言版本, 可见 language 分组下存放的是关于 语言家文件相关项目

步骤

  • 设置USE_FOLDERS = ON
SET_PROPERTY(GLOBAL PROPERTY USE_FOLDERS ON)
  • 设置 TARGET 的 FOLDER 属性即可。
SET_PROPERTY(TARGET ${TS_TARGET_NAME} PROPERTY FOLDER "LANGUAGE")

项目分组范例

CMAKE 代码

SET_PROPERTY(TARGET ${create_all_qm_files} PROPERTY FOLDER "LANGUAGE")
SET_PROPERTY(TARGET ${QM_TARGET_NAME} PROPERTY FOLDER "LANGUAGE")
SET_PROPERTY(TARGET ${update_all_ts_files} PROPERTY FOLDER "LANGUAGE")
SET_PROPERTY(TARGET ${TS_TARGET_NAME} PROPERTY FOLDER "LANGUAGE")

效果

一个凌乱的解决方案

  • 没有分类前, 生成的解决方案是这样的,
  • 可见, 分组后, 清爽多了

文件目录结构

.
│  CMakeLists.txt
│  readme.md
├─cmake
│      common.cmake
|
├─DemoWidget
│  │  CMakeLists.txt
│  │  
│  ├─qrc
│  │  │  DemoWidget.qrc
│  │  │  
│  │  └─i18N
│  │          zh_CN.qm
│  │          zh_CN.ts
│  │          
│  └─src
│          DemoWidget.cpp
│          DemoWidget.h
│          DemoWidget.ui
│          main.cpp
│          
├─ext
└─ProjectCommon
    │  project_common.cmake
    │  
    └─Widget
        │  widget.cmake
        │  
        └─src
                AItemDelegate.cpp
                AItemDelegate.h
                ATableModel.cpp
                ATableModel.h
                ATableView.cpp
                ATableView.h
                
posted @ 2022-06-23 23:34  mohist  阅读(833)  评论(3)    收藏  举报