子模块
场景
一个完整的工程中存在多个子目录,分别保存有库文件、运行文件和测试文件。分别创建三个子模块:
- 在库目录中创建动态库
- 在运行文件中创建可执行程序,链接动态库
- 在测试文件中创建gtest测试程序,链接动态库
submodules
├── CMakeLists.txt
├── exec
│ ├── CMakeLists.txt
│ └── main.cc
├── libs
│ ├── CMakeLists.txt
│ ├── common
│ │ ├── CMakeLists.txt
│ │ ├── common.cc
│ │ ├── common.h
│ │ └── mm.h
│ ├── ma
│ │ ├── CMakeLists.txt
│ │ ├── helloma.cc
│ │ └── helloma.h
│ └── mb
│ ├── CMakeLists.txt
│ ├── himb.cc
│ └── himb.h
└── tests
└── CMakeLists.txt