GNU Automake - dist_bin_SCRIPTS 是如何工作的,我可以改变它吗?
Posted
技术标签:
【中文标题】GNU Automake - dist_bin_SCRIPTS 是如何工作的,我可以改变它吗?【英文标题】:GNU Automake - How does dist_bin_SCRIPTS work and can I change it? 【发布时间】:2016-10-19 10:00:44 【问题描述】:在 Makefile.am 文件中,我遇到了变量赋值 dist_bin_SCRIPTS = foo
在 Makefile.am 标题下的 website 中,它表示将脚本安装在 /usr/local/bin
目录中。
它还说有一些方法可以定义您自己的值(要安装到的目录)...在我的情况下,我想更改它以在/etc/bash_completion.d
中安装脚本 foo,有人知道该怎么做吗?
我已尝试查看 automake 手册,但遗憾的是找不到所需的信息。
感谢所有帮助:)
【问题讨论】:
【参考方案1】:bin_SCRIPTS 安装到 /usr/local/bin 是因为 bindir
已经预定义(具有多层默认值)。所以,
foodir = $sysconfdir/bash_completion.d
foo_DATA = mycompletion.sh
是无需从配置中进行参数化的快速方法(但在生成时仍可覆盖。)
【讨论】:
你能解释一下为什么foo_DATA
前面不需要dist_
吗?
dist_ 仅在少数情况下明确需要,特别是如果文件是由某些工具生成的,但您仍想将副本放在 tarball 中。如果您不生成文件,而是将其保存在源存储库中,那么 bin_SCRIPTS
将与 foo_DATA
一样工作。以上是关于GNU Automake - dist_bin_SCRIPTS 是如何工作的,我可以改变它吗?的主要内容,如果未能解决你的问题,请参考以下文章
GNU Automake - dist_bin_SCRIPTS 是如何工作的,我可以改变它吗?