# AyCmakeTemplate
**Repository Path**: ayin-tech/ay-cmake-template
## Basic Information
- **Project Name**: AyCmakeTemplate
- **Description**: Cmake templates guide for C++. C++ cmake工程模板指南。
- **Primary Language**: C++
- **License**: Unlicense
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2024-08-10
- **Last Updated**: 2025-01-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# C++ Cmake Template
[English](README.md)
C++项目通用化Cmake仓库模板集锦,让开发者能够像使用积木一样定制属于自己的独特项目仓库。
## 特色
- 多平台支持:Windows/Linux/MacOS...
- 多场景选择:动态库/静态库/仅头文件库/二进制库...
- 规范化设计:统一的仓库目录结构,易于理解与复用...
- 定制化扩展:各组件间相互独立、互无感知,多组件可通过叠加的方式相互配合使用...
- 模块化构建:多仓库间自动化构建、智能化链接...
## 导航
### 配方
`仓库` = `1` * `底料` + `n` * `调料` + `m` * `佐料`
- 仓库:C++项目(开发/发布)代码仓。
- 底料:根据项目应用场景选择一个合适的基础仓库模板,提供了代码仓库的基本职能。
- 调料:为仓库提供增量能力,所有组件可通过可插拔的方式进行扩展,以增强仓库功能、提升开发体验。
- 佐料:额外自研工具集,也对接融入了现有优质工具链,使仓库构建更简单高效。
### 底料
| **代号** | **场景** | **引导** |
|----------------|----------|----------|
| **HeaderOnly** | 仅头文件库
模板库/宏定义库 | [doc](doc/base/header_only.md)
[github](https://github.com/NoEvaa/AyCmakeTemplate-HeaderOnly)
[gitee](https://gitee.com/NoEvaa/ay-cmake-template-header-only) |
| **Tiny** | 静态库/动态库
独立模块 | [doc](doc/base/tiny.md)
[github](https://github.com/NoEvaa/AyCmakeTemplate-Tiny)
[gitee](https://gitee.com/NoEvaa/ay-cmake-template-tiny) |
| **Binary** | 二进制形式静态库/动态库 | [doc](doc/base/binary.md)
[github](https://github.com/NoEvaa/AyCmakeTemplate-Binary)
[gitee](https://gitee.com/NoEvaa/ay-cmake-template-binary) |
| **Ensemble** | 多模块协同开发
模块封装 | [doc](doc/base/ensemble.md)
[github](https://github.com/NoEvaa/AyCmakeTemplate-Ensemble)
[gitee](https://gitee.com/NoEvaa/ay-cmake-template-ensemble) |
### 调料
| **代号** | **场景** | **引导** |
|----------------|----------|----------|
| **MultiExec** | 多可执行 | [doc](.)
[github](https://github.com/NoEvaa/AyCmakeTemplate-MultiExec)
[gitee](https://gitee.com/NoEvaa/ay-cmake-template-multi-exec) |
| **Tests** | 测试用例 | [doc](.)
[github](https://github.com/NoEvaa/AyCmakeTemplate-Tests)
[gitee](https://gitee.com/NoEvaa/ay-cmake-template-tests) |
| **ThirdParty** | 第三方库 | [doc](.)
[github](https://github.com/NoEvaa/AyCmakeTemplate-ThirdParty)
[gitee](https://gitee.com/NoEvaa/ay-cmake-template-third-party) |
| **Components** | 常用部件 | [doc](.)
[github](.)
[gitee](.) |
| **Doc** | 文档 | [doc](.)
[github](.)
[gitee](.) |
### 佐料
| **代号** | **场景** | **引导** |
|----------------|----------|----------|
| **AyTest-Mini** | 迷你单元测试框架 | [github](https://github.com/NoEvaa/AyTest-Mini)
[gitee](https://gitee.com/ayin-tech/ay-test-mini) |
| **AyTest** | 测试框架 | [github](https://github.com/NoEvaa/AyTest)
[gitee](https://gitee.com/ayin-tech/ay-test) |
| **AyCollect** | | [doc](.)
[github](.)
[gitee](.) |
## 案例
## 作者
- [@AyinTech](https://gitee.com/ayin-tech)
- [@NoEvaa](https://github.com/NoEvaa)
## 许可证
[Unlicense](LICENSE)