O que são arquivos .in?

28

Às vezes, nas fontes de projetos, vejo arquivos "* .in". Por exemplo, um monte de "Makefile.in" s. Para que servem e / ou o que a parte ".in" significa? Presumo que isso tem algo a ver com autoconfou makeou algo como aqueles, mas eu não tenho certeza.

Tentei pesquisar por "extensão de arquivo .in", "extensão de arquivo autoconf .in", "autoconf .in", "autoconf dot in" e outras variantes, sem sorte.

strugee
fonte
Se você quiser saber como as ferramentas automáticas funcionam, sugiro esta série de artigos: freesoftwaremagazine.com/articles/… .
Boris Burkov
Encontrei isso na minha pesquisa no google. Meio assustador. fileinfo.com/extension/in
Bozeyman9000

Respostas:

18

é apenas uma convenção que significa que o arquivo fornecido é para input; na minha experiência, esses arquivos tendem a ser um tipo de modelo genérico do qual resulta um arquivo de saída ou script específico.

Josh McGee
fonte
3
Por interesse, você poderia citar alguns exemplos em que ".in" é usado dessa maneira fora do autoconfdomínio?
Spinkus
32

Eu acredito que o processo automake envolvendo um Makefile.in é algo como isto:

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

Ninguém realmente escreve um Makefile.in. O único arquivo definido pelo programador aqui é o Makefile.am.

Trevor Hickey
fonte
3
Bem, na ocasião escrevi um Makefile.in, porque a automake não faria o que eu queria.
Simon Richter
6

Eles são arquivos de entrada para o m4pré-processador de macro. Entre outras coisas, esses arquivos contêm macros marcadas por @, que são expandidas pelo m4.

ninjalj
fonte
11
Não. Makefile.innunca é tocado por nada m4relacionado.
22813 Simon Richter