如何使makefile引用另一个makefile

时间:2016-10-11 18:45:09

标签: c makefile

我在C中有一个项目,它有许多不同的模块,以及一个用于所有内容的makefile。我想要做的是每个模块都有自己的makefile,当该模块包含在任何项目中时,项目makefile只能引用单个模块的makefile。这样,只要我有一个项目,我想要使用某个模块,我就不必对我的项目makefile进行一堆编辑。

您可以提供任何有关此方面的帮助。

1 个答案:

答案 0 :(得分:3)

如果您使用的是GNU Make实用程序,那么我的回答可能对您有所帮助。最近,我正在为自己的项目阅读GNU Make Manual

include指令告诉make暂停读取当前的makefile并在继续之前读取一个或多个其他makefile。该指令是makefile中的一行,如下所示:

include filenames

如果你想让make简单地忽略一个不存在或无法重新生成的makefile,没有错误信息,请使用-include指令而不是include,如下所示:

-include filenames

但是,还有另一种方式是变量MAKEFILES。如果定义了环境变量MAKEFILES,则make会将其值视为要在其他makefile之前读取的其他makefile的名称列表(由空格分隔)。

您可以参考GNU Make Manual了解更多信息。