使用gmake构建大型系统

时间:2014-12-02 18:51:25

标签: makefile gnu-make

我正在尝试修复/重做遗留系统的makefile,并且我一直在反对某些事情。这是一个庞大的软件系统,由许多可执行文件,共享对象和库组成,使用C,Fortran和其他一些编译器(如Motif的UIL编译器)。我试图避免递归make,我宁愿“一个makefile来构建它们”,而不是现有的“每个可执行文件/ .so / .a”的一个makefile。 (我们将每个可执行文件,共享对象,库,称为“任务”,因此允许我在前进时使用该术语。)

系统分散在大量不同的源子目录中,在6个主目录之一中包含通常,但并非总是如此。

处理过多来源的最佳方式是什么?目标目录?我希望为每个任务提供一个Task.mk文件来提供特定于任务的详细信息,但是特定于目标的变量并没有给我足够的控制权。例如,他们不允许我更改源和&目标目录很容易,至少从我尝试过的目标。

不能即。,不允许)的一些事情包括:

  • 更改项目的结构。有太多的东西需要在任何地方改变才能解决这个问题。

  • 使用其他make。官方配置(我们的客户已经保证,因此我们不需要处理未知配置)使用gmake 3.81,期限。

0 个答案:

没有答案