我们如何在 GNUmake 中使用正则表达式

How could we use regular expression in GNUmake

我是 GNUmake 的新手,我需要检查字符串 是否 以“FEATURE”结尾。

 ifeq (<check_if_a_string_doesnot_end_with_"FEATURE">)
   ....Do someting
 endif

您可以使用 patsubst 来检查在删除以 FEATURE 结尾的所有内容后是否不会以空字符串结束:

ifneq ($(patsubst %FEATURE,,$(var)),)

所以对于像

这样的最小 Makefile
.PHONY: checksuffix
checksuffix:
ifneq ($(patsubst %FEATURE,,$(var)),)
    @echo "$(var) does not end with FEATURE"
else
    @echo "$(var) does end with FEATURE"
endif

行为会是

$ make checksuffix var=MYFEATURE
MYFEATURE does end with FEATURE
$ make checksuffix var=FEATUREABC
FEATUREABC does not end with FEATURE