概述
这是我在GitHub上的第一个项目,用于模块化软件提供一个简单的配置和编译框架。
使用前提
- 将你的项目划分成一个主模块和若干个其他模块;
- 确保每个模块都是自包含的,即除了公用接口,本模块的所有源代码、私有头文件、配置文件等都应当放在对应的模块目录内。.
功能:
- 使用简单的Makefile片段(仅需模块名、源文件列表和可选的编译选项等)添加模块;
- 使用尽可能少的修改(仅需名称和可选的编译选项等)将1个文件添加到1个模块;
- 支持模块嵌套;
- 支持为每个文件或模块指定编译选项;
- 支持输出目录指定。
如何使用
- 基于框架中的main/mod1/mod2创建主模块和其他模块;
- 为每个最底层的模块添加源码、编译选项和module.mk;
- 在编译框架根目录下执行make命令,目标文件和最终的可执行文件main将会生成在指定或者默认的输出目录下。
注意:
可以使用 make help 得到所有支持的make命令及其用法.