Makefile – Catch-all Target

我想知道是否有可能有一个Makefile命令一个未知的目标,并直接运行它。

例如,我有一个脚本(我无法更改),它将命令发布到我的应用程序Docker容器中,如下所示:

docker run -it my_app:latest "env FOO=bar bundle exec rails c"

这被转换为:make“env FOO = bar bundle exec rails c”

其中生成: Makefile:7: *** missing target pattern. Stop. Makefile:7: *** missing target pattern. Stop.

这是我首先捕捉一个未知目标的尝试:

 .DEFAULT_GOAL: passthrough passthrough: @echo $(MAKECMDGOALS) # always empty @echo ${ARGS} # always empty 

是否有可能捕获在docker运行parameter passing给Makefile的整个string,并直接运行它?