为dist做什么目标或目标?试图确保生成一些文件

时间:2016-06-22 05:24:44

标签: makefile gnu-make autotools

我正在尝试确保在执行make dist时生成一些非源文件。这些文件是一个info文件和一个索引,它是从info文件构造的。我发现文件是在执行make install时生成的,而不是在执行make dist时生成的。

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

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 dist以及make install重建logic.info和logic-index.lisp?

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

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

1 个答案:

答案 0 :(得分:2)

您可以使用EXTRA_DIST = logic-index.lisp 强制构建内容并将其包含在包中,因此在您的情况下

{{1}}

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