Autoconf子目录与子包相互依赖?

时间:2011-09-26 09:02:50

标签: packaging autotools autoconf automake software-packaging

我手上有一个大项目(主人),它被分成几个组件(liba,b,c,d),以方便构建和维护。构建整个包时,必须按顺序构建所有子组件,其中一些包依赖于彼此。

更明确地说,liba是b,c和d的先决条件,并且配置脚本会检查liba的存在。在构建b分发时,必须进行此检查以提供用户友好的错误消息。但是,在构建主包及其所有子包时,liba将构建为子目标。因此,当在主套件上运行configure时,尚未安装liba,并且b中的liba检查失败。

我可以通过将--with-liba = internal或类似的标志传递给b的configure脚本来纠正这个问题;但是,我没有找到关于autoconf这种标志传递的任何文档。目前,我在master中有一个很长的自定义Makefile,与autoconf / automake和子目录一样,但是重新排序依赖项,而不是(configure liba)=> (配置b)=> (build liba)=> (构建b),顺序是(configure liba)=> (build liba)=> (安装liba)=> (配置b)=> (建立b)。

知道如何用标准的autoconf / automake子目录重构这个吗?

1 个答案:

答案 0 :(得分:2)

This mail可能会有所帮助。