autotools - 使用 automake 指定要构建的 Makefile

标签 autotools automake

为了工作,我被迫学习一些有关自动工具的东西,但我真的不知道自己在做什么。我们的项目通常使用 rpm 进行分发,并且我们希望从 rpm 版本中删除测试代码。为了解决这个问题,我在configure.ac中编辑了AC_OUTPUT,使其仅包含检查Makefile(如果已配置)(在它执行此操作之前)。

自从进行此更改后,automake 已停止从测试目录中的 Makefile.am 生成 Makefile.in。我想我需要某种方法来告诉 automake 生成这些 Makefile.in 文件,但我不知道该怎么做。我似乎找不到如何单独指定这一点。可以告诉我如何做到这一点或为我指明正确的方向吗?

最佳答案

事实证明,为我解决这个问题的方法是使用 AC_CONFIG_FILES 而不是修补 SUBDIRS。在configure.ac 中,解决该问题的方法不是将测试目录添加到AC_OUTPUT 列表中,而是使用AC_CONFIG_FILES 包含它们。这解决了我的问题:

  1. 除非进行配置,否则不会构建 Makefile。
  2. Makefile.in 文件已构建。

关于autotools - 使用 automake 指定要构建的 Makefile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7799840/

相关文章:

automake - 如何使用 Automake 为 "noinst"类库设置 LDFLAGS?

选择 autoconf 和 automake 版本

linux - gdb 无法针对arm-linux 进行交叉编译

c++ - 使用 autotools 为共享库正确安装 config.h

c - automake --add-missing : error: no proper invocation of AM_INIT_AUTOMAKE was found

c++ - Automake AM_LDADD 解决方法

linux - 在不安装包的情况下预览手册页

autotools - 从脚本中查找由 autotools 定义的 $pkgdatadir

C++ 访问 Autoconf 变量 Datadir

设置 autoconf 和 automake 的 Ubuntu 问题