[英]Special case pattern rules in Makefile
我有一个具有给定扩展名的文件的通用规则,但我想为具有前缀的文件添加特殊情况。 我试过这个:
special-%.dat: special-%.raw
echo "Running rule 1"
%.dat:
echo "Running rule 2"
但是当我运行make special-1.dat
,它会忽略第一个规则并运行第二个规则。 切换规则的顺序没有区别。 我怎样才能解决这个问题?
文件special-1.raw
是否存在? 如果该文件不存在(并且您没有可以创建它的规则),make将永远不会选择此规则,因为先决条件不可用。 这本身并不是一个错误:只有当make可以找到没有可以构建此目标的规则时,它才会失败。
运行make -d
将以精确的方式向您展示make如何以递归方式考虑每个目标及其先决条件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.