生成的 Makefile.in 是用什么语言编写的?

What language is the generated Makefile.in written in?

以下是我所知道的(如有错误请指正):
configure.ac --- 宏
Makefile.am --- 变量定义
配置 --- shell 脚本
Makefile --- makefile 自己的语法

尽管扫描了关于 automake 的 gnu 文档,但我无法用简单的文字找出 automake 生成的 Makefile.in 是用什么语言编写的。请帮忙。

Automake 生成的 Makefile.in 文件是 Makefile 的模板,当 configure 为 运行 时最终将在构建时生成。* 因此,它们主要是用 make 的语言编写的——它们与从它们生成的 Makefile 非常相似——但它们允许,并且在实践中,它们总是包含 configure 替换为它选择的值。

如果您想将 Makefile.in 文件的编写语言与 make 的语言区分开来,它是一种特定于 Autotools 的未命名自定义模板语言。从这个角度来看,它绝不仅限于 Makefiles,只是因为它们的作用,Makefile.in 文件恰好与 Makefiles.


*技术上,configure 编写另一个 shell 脚本,config.status,执行实际的模板处理。