Make如何通过调用new make来运行其内部部分?

发布于 2024-08-29 17:23:31 字数 481 浏览 3 评论 0原文

最初,当我提出这个问题时,我将问题归因于通配符,这是一个问题,但显然一个更大的问题迫在眉睫。如果我理解错误的话,GNU make 没有 make 子处理,所以必须切换到 Boor make 的一些衍生版本。我可能理解错误,但我试图让这个问题更容易理解。

Makefile:makefile 尝试多次执行其自身的一部分,即我所说的子处理

all:
        make clean
        make $$(.??*)
#I want to replace below-like-things with a wildcard above
#       make .lambda
#       make .lambda_t
#
# KEY: It should run NEW make-processes! how?
clean:
        -rm .??*
.lambda:
#do something
.lambda_t:

Initially, when I made the question I attributed the problem to wildcards, a problem, but a bigger problem apparently looming. If I understand the error right, GNU make has no make-subprocessing so have to switch to some derivative of Boor's make. I may be understanding it wrong but I try to make this problem easier to understand.

Makefile: makefile trying to execute parts of itself many times, the thing I mean by subprocessing

all:
        make clean
        make $(.??*)
#I want to replace below-like-things with a wildcard above
#       make .lambda
#       make .lambda_t
#
# KEY: It should run NEW make-processes! how?
clean:
        -rm .??*
.lambda:
#do something
.lambda_t:

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

拥醉 2024-09-05 17:23:31

你的做法是错误的。
你不需要那样调用 make 。只需声明附加目标,并使用目标依赖项。
请注意,您可以使用 Make 'foreach dir' 函数来获取与模式匹配的文件:

_FILES_HIDDEN = $(foreach dir,./,$(wildcard .*))

You are doing it the wrong way.
You don't need to call make like that. Just declares additional targets, and use target dependancies.
Note that you can use the Make 'foreach dir' function to get files matching a pattern:

_FILES_HIDDEN = $(foreach dir,./,$(wildcard .*))

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文