【问题标题】:Makefile file dependencyMakefile 文件依赖
【发布时间】:2017-10-03 08:08:42
【问题描述】:

我在 makefile 多文件依赖方面遇到了一些问题。了解makefile的目标和依赖规则。

目标:依赖项

但是如果我有多个依赖项如何编写makefile,并且其中一个被更新都会触发目标,同时并非所有依赖文件都存在,这是可选的。

示例:

target.txt: file1.txt file2.txt file3.txt file4.txt
    @echo "Compiling target.txt file"
    target_gen.sh -output target.txt

在上述情况下,file1.txt file2.txt file3.txt file4.txt 是可选文件,它们可以全部存在或其中一个存在。列出的任一依赖文件获得更新都会触发重新编译 target.txt 文件。 target_gen.sh 是一个脚本,它将搜索 file1 - file4 并将其编译为单个目标文件。

感谢您的建议, -Kian Boon-

【问题讨论】:

    标签: makefile


    【解决方案1】:

    你可以使用一个函数来抓取它们

    OPTIONAL_FILE_DEPS=$(wildcard file*.txt)
    
    target.txt : $(OPTIONAL_FILE_DEPS)
        ./generate-target $^ > target.txt
    

    当任何文件*.txt 比 target.txt 新时,这将重建,但如果您删除一个,则不会注意到。

    【讨论】:

      猜你喜欢
      • 2011-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-14
      • 1970-01-01
      • 2011-08-05
      • 1970-01-01
      相关资源
      最近更新 更多