1

我应该如何从 Makefile.am 运行预构建的 Makefile?

我是 automake/autoconf 构建系统的新手。我正在为其实现 autotools 的包有几个库和每个库的测试可执行文件。一些库是自动生成的 ASN1C 代码,带有预构建的 makefile。我不确定在 Makefile.am 内部说“使用预构建的 makefile 构建 ASN1C 库”的最佳方式。

由于大量的 makefile 文档,尝试用这样的东西搜索 google 有点困难。

谢谢,陈兹

4

2 回答 2

1

这对于完整构建来说相对容易,但对于增量构建来说要困难得多。

库是否支持树外构建也很重要。

要记住的重要一点是 automake 文件可以包含 make 规则,因此您可以创建一组规则来构建库,然后在构建所需的位置添加/复制该构建的输出。

为库构建分配一个目录。编写 make 规则来包装库构建过程。将库构建的输出绑定为构建的依赖项。

我们唯一没有做的是使用默认的 automake 规则进行分发/安装 - 我不确定你如何将库添加到这些列表中,但我认为有一种方法,因为你必须能够随机分发发行版中的翻译等文件。

增量构建要困难得多,因为您必须在 make 规则中捕获适当的依赖关系以覆盖库 makefile 中的依赖关系。

于 2009-10-19T16:08:37.930 回答
1

Automake 手册有一个关于此的部分

于 2009-10-20T12:04:17.033 回答