有时在项目源中我会看到“*.in”文件。例如,一堆“Makefile.in”。它们的用途是什么和/或“.in”部分的含义是什么?我认为这与autoconf
或类似的事情有关make
,但我不确定。
我尝试搜索“.in 文件扩展名”、“autoconf .in 文件扩展名”、“autoconf .in”、“autoconf 点 in”和其他变体,但没有成功。
答案1
我相信汽车制造商过程涉及一个生成文件.in是这样的:
Makefile.am
|
\'/
+--------------+
| automake |
+--------------+
|
\'/
Makefile.in
|
\'/
+--------------+ +--------------+
| ./configure |<-- | autoconf |<-- configure.in
+--------------+ +--------------+
|
\'/
Makefile
没有人真正编写 Makefile.in。这里唯一由程序员定义的文件是 Makefile.am。
答案2
这只是一个约定,表示给定的文件适用于input
;根据我的经验,这些文件往往是一种通用模板,从中产生特定的输出文件或脚本。
答案3
它们是宏预处理器的输入文件m4
。除此之外,这些文件包含由 @ 标记的宏,这些宏由 m4 扩展。