了解make通配符功能

时间:2016-09-20 00:10:45

标签: gnu-make

很多人建议使用wildcard检查文件是否存在。所以我尝试了以下命令,该命令在我的makefile中起作用:

TMPDIR= .tmp
ifneq (,$(wildcard $(TMPDIR)/flag))
    find_flag_file = yes
endif

但是,如果我尝试在$(1)函数中使用临时变量wildcard,则当文件存在时它不会返回true:

TMPDIR= .tmp
ifneq (,$(wildcard $(TMPDIR)/$(1)_flag))
    find_flag_file = yes
endif

相反,我必须在*之前使用$(1)来使上述代码正常工作:

TMPDIR= .tmp
ifneq (,$(wildcard $(TMPDIR)/*$(1)_flag))
    find_flag_file = yes
endif

有人可以向我解释为什么我需要在*匹配中找到wildcard

0 个答案:

没有答案
相关问题