如何将命令应用于 GNU Make 中所有已更改的依赖项?

发布于 2024-11-28 07:33:52 字数 402 浏览 1 评论 0原文

不知道该用谷歌搜索什么,所以如果这个问题很愚蠢,请原谅我。

我有一个依赖于多个文件的 Makefile 规则。当其中任何一个发生更改时,我希望 make 调用一个程序并将已更改文件的列表作为命令行参数传递给它。理想情况下,我想要这样的东西:

myfiles: file1.txt file2.txt file3.txt
   my_command $(CHANGED_DEPENDENCIES)

例如,如果我更改 file1.txtfile2.txt,我希望 make 调用my_command file1.txt file2.txt

我该如何实现这一点?

谢谢。

Not sure what to google for this, so excuse me if the question is stupid.

I have a Makefile rule that depends on several files. When any of them changes, I want make to invoke a program and pass to it the list of the changed files as command line arguments. Ideally, I want something like this:

myfiles: file1.txt file2.txt file3.txt
   my_command $(CHANGED_DEPENDENCIES)

For example, if I changed file1.txt and file2.txt, I'd expect make to invoke my_command file1.txt file2.txt

How do I accomplish that?

Thanks.

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

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

发布评论

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

评论(1

眉目亦如画i 2024-12-05 07:33:52

使用自动变量:

$?
比目标新的所有依赖项的名称,它们之间有空格。对于存档成员的依赖项,仅使用指定的成员(请参阅使用 make 更新存档文件部分)。

请参阅 gnu make

Use an automatic variable:

$?
The names of all the dependencies that are newer than the target, with spaces between them. For dependencies which are archive members, only the member named is used (see section Using make to Update Archive Files).

See gnu make

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