使 $* 检查字符串
Make $* check for string
我正在尝试检查 $* 是否与 hello 匹配。但是以下不起作用
build: build-hello
build-%:
ifeq ($*, hello)
echo Hello
else
echo World
endif
ifeq
中的条件在 makefile 读取时处理——当 $*
仍为空白时。有几个解决方法:首先,您可以执行 build-hello:
规则,这将覆盖 build-hello
的 build-%
规则。另一方面,如果您想最小化规则,则可以这样使用 $(if)
函数:
build-%:
@echo $(if $(filter $*,hello),Hello,World)
或者,您也可以使用 shell 逻辑来完成此操作。
我正在尝试检查 $* 是否与 hello 匹配。但是以下不起作用
build: build-hello
build-%:
ifeq ($*, hello)
echo Hello
else
echo World
endif
ifeq
中的条件在 makefile 读取时处理——当 $*
仍为空白时。有几个解决方法:首先,您可以执行 build-hello:
规则,这将覆盖 build-hello
的 build-%
规则。另一方面,如果您想最小化规则,则可以这样使用 $(if)
函数:
build-%:
@echo $(if $(filter $*,hello),Hello,World)
或者,您也可以使用 shell 逻辑来完成此操作。