首页 > 解决方案 > 如何导入 yaml 文件以在 gnu make 文件中使用它?

问题描述

如何从 YAML 文件中导入列表,以便在 GNU make 文件中使用它。该列表包含一些 c 源文件,如下所示。

---
- file1.c
- file2.c
- file3.c
- file4.c
...

标签: makefileyamlgnu-make

解决方案


我不明白为什么将新源文件添加到 yaml 文件比将其添加到 makefile 更容易。

但是对您的问题的直接回答是,make 中没有对 yaml 文件的现有支持。您必须编写一组 shell 命令或脚本来解析内容,然后从您的 makefile 中运行它,例如:

SOURCES := $(shell parsemy foo.yaml)

parsemy脚本的实现留给读者作为练习)。

如果您认为 makefile 太复杂而无法编辑,您可以将源定义放在单独的 makefile 中,include然后:

$ cat sources.mk
SOURCES = \
    foo.c \
    bar.c \
    biz.c

$ cat makefile
include sources.mk

... do other stuff ...

推荐阅读