Was sind .in-Dateien?


28

Manchmal sehe ich in den Quellen von Projekten "* .in" -Dateien. Zum Beispiel eine Reihe von "Makefile.in" s. Wofür sind sie und / oder was bedeutet der Teil ".in"? Ich nehme an, das hat etwas mit autoconfoder makeoder so etwas zu tun , aber ich bin mir nicht sicher.

Ich habe versucht, nach ".in-Dateierweiterung", "autoconf .in-Dateierweiterung", "autoconf .in", "autoconf dot in" und anderen Varianten zu suchen, ohne Erfolg.


Wenn Sie wissen möchten, wie Autotools funktionieren, empfehle ich diese Artikelserie: freesoftwaremagazine.com/articles/… .
Boris Burkov

Ich habe dies in meiner Google-Suche gefunden. Ein bisschen gruselig. fileinfo.com/extension/in
Bozeyman9000

Antworten:


18

Es ist nur eine Konvention, die besagt, dass die angegebene Datei für ist input. Nach meiner Erfahrung handelt es sich bei diesen Dateien in der Regel um eine Art allgemeine Vorlage, aus der eine bestimmte Ausgabedatei oder ein bestimmtes Skript resultiert.


3
Können Sie aus Interesse einige Beispiele nennen, in denen ".in" außerhalb des autoconfBereichs auf diese Weise verwendet wird ?
Spinkus

32

Ich glaube, der automake- Prozess mit einer Makefile.in ist ungefähr so:

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

Niemand schreibt tatsächlich ein Makefile.in. Die einzige vom Programmierer definierte Datei hier ist die Datei "Makefile.am".


3
Nun, gelegentlich habe ich eine geschrieben Makefile.in, weil automake nicht das tun würde, was ich will.
Simon Richter

6

Sie sind Eingabedateien für den m4Makro-Präprozessor. Diese Dateien enthalten unter anderem mit @ gekennzeichnete Makros, die um m4 erweitert werden.


1
Nee. Makefile.inwird nie von irgendetwas in m4Verbindung gebracht.
Simon Richter
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.