gpt4 book ai didi

directory - Makefile 规则取决于目录内容的变化

转载 作者:行者123 更新时间:2023-12-04 10:00:07 25 4
gpt4 key购买 nike

使用 Make 是一种依赖目录内容的好方法。

本质上,我有一些应用程序代码所依赖的生成代码。生成的代码只需要在目录内容更改时更改,如果其中的文件更改其内容,则不一定需要更改。因此,如果删除或添加或重命名文件,我需要运行规则。

我的第一个想法是生成目录的文本文件列表,并将其与最后一个列表进行比较。更改意味着重新运行构建。我想我必须将 generate 和 diff 部分传递给 bash 脚本。

我希望以某种方式在他们无限的智慧中可能有一个更简单的解决方案。

最佳答案

感谢 gjulianm 让我走上正轨。他的解决方案适用于单个目录。

为了让它递归工作,我做了以下工作。

ASSET_DIRS = $(shell find ../../assets/ -type d)
ASSET_FILES = $(shell find ../../assets/ -type f -name '*')

codegen: ../../assets/ $(ASSET_DIRS) $(ASSET_FILES)
generate-my-code

现在看来,对目录或文件的任何更改(添加、删除、重命名、修改)都会导致此规则运行。此处的文件名可能存在一些问题(空格可能会导致问题)。

关于directory - Makefile 规则取决于目录内容的变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25005637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com