是否有不同的方法可以使用 automake 包含 makefile?
Posted
技术标签:
【中文标题】是否有不同的方法可以使用 automake 包含 makefile?【英文标题】:Are there different ways to include makefiles using automake? 【发布时间】:2013-01-16 11:54:24 【问题描述】:我一直在使用 GNU Autotools,我观察到可以使用不同的方法包含另一个 makefile,我不知道也没有发现 Automake 的结果或方式可能存在的差异管理包含(如果有)。
我见过的不同方式是使用include $(path_to_file)
和-include $(path_to file)
,在包含文件时连字符有什么不同吗?
【问题讨论】:
【参考方案1】:添加连字符使包含可选。
如果包含的文件(例如Make.include
)不存在,而您正在使用include Make.include
,则构建将失败。
但是,如果您使用-include Make.include
,则构建将成功(但当然不会包含该文件)。
我使用它来允许用户修改构建而无需接触真正的 Makefile(如果您想调整构建以匹配您的系统,并且您正在使用 VCS 跟踪对父 Makefile 的更改,这很酷:这个跟踪的 Makefile 不会变得“脏”的方式)。
但这并不特定于 autotools,因为它通常适用于 make
。
使用 autotool 时,请注意 automake
不会通过包含的文件跟踪任何漂亮的东西。
【讨论】:
知道这也适用于 make,我在 GNU make 手册中进行了搜索,并记录了 here,我在 automake 手册中没有找到任何关于它或对此的任何引用,所以从现在开始在问之前我会看看他们两个。正如 GNU make 手册所说,你也可以写sinclude Make.include
。谢谢你的回答。以上是关于是否有不同的方法可以使用 automake 包含 makefile?的主要内容,如果未能解决你的问题,请参考以下文章