如何使用相同的参数调用顶级make?

时间:2013-07-17 10:08:01

标签: makefile

我希望始终使用相同的命令行调用顶级makefile。我试过了:

.PHONY: %
%:
    $(MAKE) -C ${CURDIR}/.. ${CURDIR}/$*

但它不起作用:(

1 个答案:

答案 0 :(得分:1)

我不确定你要做什么。你是说在这个目录中调用make你想在不同的目录中使用相同的参数运行make吗?

你不能完全这样做,但这会让你接近:

.DEFAULT:
        $(MAKE) -C ${CURDIR}/.. $@

我不知道为什么你在$*前面加$(CURDIR)作为目标名称的前缀......?

这与原始调用之间的最大区别在于它将为每个目标运行单独的make进程;也就是说,如果您运行make foo bar,它将调用“顶级makefile”两次:一次使用foo目标,然后再次使用bar目标。我无法想到这一点。