makefile - 如何导入 yaml 文件以在 gnu make 文件中使用它?

标签 makefile yaml gnu-make

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

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

最佳答案

我不明白为什么将新源文件添加到 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 ...

关于makefile - 如何导入 yaml 文件以在 gnu make 文件中使用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62906641/

相关文章:

java - Java 的 Shell 脚本不工作

.net - 我可以顺序读取 YamlDotNet 映射吗?

linux - GNU 使自动依赖生成

c - 完全相同的命令行在 Make 中产生错误,但如果从 shell 运行则成功

makefile - makefile 中多行列表中的注释

makefile 可以用来读取输入文件吗?

c - gcc编译器中是否有用于1字节对齐结构的宏

amazon-web-services - 在云形成中存储参数化值并引用它

python - YAML 不调用构造函数

cuda - 使用 CUDA 模块构建 GPL C 程序