为 make dist 构建了哪些目标?试图确保生成一些文件

What target or targets are built for make dist? Trying to ensure some files are generated

我试图确保在执行 make dist 时生成一些非源文件。这些文件是一个信息文件和一个从信息文件构建的索引。我发现文件是在我执行 make install 时生成的,但在我执行 make dist 时没有生成。

这里是Makefile.am。 (这是 share/logic/Makefile.am 在 Maxima 项目中,如果有人关心的话。)

all-local: info

info: logic.info logic-index.lisp

logic.info: logic.texi
    makeinfo --force logic.texi

logic-index.lisp: logic.info
    perl ../../doc/info/build_index.pl $< > $@

不知何故,我想到目标 all-local 可能会导致信息和索引被重建。这对 make install 有效——我猜 all-local 是它的目标。但是 all-local 似乎并不是 make dist 的目标。我还可以使用什么其他目标来确保为 make distmake install 重建 logic.info 和 logic-index.lisp?

我已经在网上搜索过,所以,并尝试了一些随机的东西,但到目前为止我还是空手而归。预先感谢您的帮助。

我在 Ubuntu 14.04 上使用 GNU make 3.81、GNU automake 1.14.1 和 GNU autoconf 2.69。

您可以使用 EXTRA_DIST 强制构建某些内容并将其包含在包中,因此在您的情况下

EXTRA_DIST = logic-index.lisp

这将导致文件始终包含在分发 tarball 中。