【问题标题】:How to print the list of files in a folder from build logs in make file?如何从make文件中的构建日志打印文件夹中的文件列表?
【发布时间】:2021-07-10 12:43:27
【问题描述】:

我们在 windows 中使用 make 实用程序来构建我们的项目。 make 的版本是“GNU Make 3.81”。我需要了解我们的项目是如何构建的,因此添加了如下所示的额外日志行,这些行按预期工作--

$(warning Entering componentsWin32.mak )

另外我需要找到当前目录和该目录中的文件列表,对于第一个,这是可行的--

$(warning Entering componentsWin32.make $(CURDIR))

为了打印目录中的文件列表,我尝试了这个,但它不起作用 --

$(warning Entering componentsWin32.make $(DIR))

是否可以使用 $(SHELL...some command) 或任何其他方式?对此的任何指示都会有所帮助。

【问题讨论】:

    标签: windows makefile build gnu-make


    【解决方案1】:

    函数$(wildcard [path string]) 将计算出由path string 指定的文件列表:路径字符串可以写为glob,例如

    $(wildcard $(CURDIR)/src/*.c)
    

    将评估为所有 C 文件的列表,假设在当前目录下有一个子目录 src,其中包含 *.c 文件。 您甚至可以传递任意数量的此类路径表达式:

    $(wildcard $(CURDIR)/src/*.c $(MY_INCLUDE_DIR)/*.h)
    

    显然,路径名中不允许有空格。

    【讨论】:

      猜你喜欢
      • 2017-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-22
      相关资源
      最近更新 更多