什么是.in文件?


28

有时在项目源中,我会看到“ * .in”文件。例如,一堆“ Makefile.in”。它们是什么意思和/或“ .in”部分是什么意思?我认为这与autoconfmake类似,但我不确定。

我尝试搜索“ .in文件扩展名”,“ autoconf .in文件扩展名”,“ autoconf .in”,“ autoconf点入”和其他变体,但是没有运气。


如果您想了解自动工具的工作原理,建议您阅读以下系列文章:freesoftwaremagazine.com/articles/…
鲍里斯·伯科夫

我在Google搜索中找到了这个。有点吓人。fileinfo.com/extension/in
Bozeyman9000 '18

Answers:


18

这只是一个约定,表示给定文件用于input;以我的经验,这些文件通常是一种通用模板,可从中生成特定的输出文件或脚本。


3
出于兴趣,您能否举出一些在autoconf领域之外以这种方式使用“ .in”的示例?
spinkus 2014年

32

我相信automake的涉及过程Makefile.in是这样的:

  Makefile.am
       |
      \'/
+--------------+
|   automake   |
+--------------+
       |
      \'/
   Makefile.in
       |
      \'/
+--------------+    +--------------+
| ./configure  |<-- |   autoconf   |<-- configure.in
+--------------+    +--------------+
       |
      \'/
    Makefile

实际上没有人写Makefile.in。这里唯一的程序员定义的文件是Makefile.am。


3
好吧,有时候我写了Makefile.in,因为automake不会做我想要的事情。
Simon Richter

6

它们是m4宏预处理器的输入文件。其中,这些文件包含以@标记的宏,并以m4展开。


1
不。Makefile.in永远不会被任何m4相关事物所感动。
Simon Richter
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.