【发布时间】:2014-04-23 18:56:42
【问题描述】:
所有我想做的事情...
some_file.out : ..... ver_$(basename $@).ver:
.....
$@ 未按预期扩展,仅在规则标题中扩展。在规则主体内,ver_$(basename $@).ver 的所有用法都可以根据需要展开。我将如何修改它以使其按需要工作?
【问题讨论】:
所有我想做的事情...
some_file.out : ..... ver_$(basename $@).ver:
.....
$@ 未按预期扩展,仅在规则标题中扩展。在规则主体内,ver_$(basename $@).ver 的所有用法都可以根据需要展开。我将如何修改它以使其按需要工作?
【问题讨论】:
您的示例省略了太多重要部分,无法提供完整的解决方案。但是,一种选择是使用static pattern rules,如下所示:
some_file.out : %.out : ver_%.ver
...
如果这还不够,您可以使用二次扩展,但这是一个更大的锤子。
【讨论】: