Что такое файлы .in?

28

Иногда в источниках проектов я вижу файлы "* .in". Например, куча "Makefile.in". Для чего они и / или что означает часть «.in»? Я предполагаю , что это имеет какое - то отношение autoconfили makeили что - то вроде тех, но я не уверен.

Я попытался найти ".in расширение файла", "autoconf .in расширение файла", "autoconf .in", "autoconf dot in" и другие варианты, но безуспешно.

strugee
источник
Если вы хотите узнать, как работают автоинструменты, я предлагаю эту серию статей: freesoftwaremagazine.com/articles/… .
Борис Бурков
Я нашел это в моем поиске Google. Вроде страшно. fileinfo.com/extension/in
Bozeyman9000

Ответы:

18

это просто соглашение, которое означает, что данный файл предназначен для input; по моему опыту, эти файлы имеют тенденцию быть своего рода общим шаблоном, из которого получается конкретный выходной файл или сценарий.

Джош МакГи
источник
3
Из интереса, не могли бы вы привести примеры, когда «.in» используется таким образом за пределами autoconfобласти?
spinkus
32

Я считаю, что процесс automake, включающий Makefile.in, выглядит примерно так:

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

На самом деле никто не пишет Makefile.in. Единственный файл, определенный программистом, это Makefile.am.

Тревор Хикки
источник
3
Ну, иногда я написал Makefile.in, потому что automake не будет делать то, что я хочу.
Саймон Рихтер
6

Это входные файлы для m4макропроцессора. Среди прочего, эти файлы содержат макросы, помеченные @, которые расширяются на m4.

ninjalj
источник
1
Нет. Makefile.inникогда не касается ничего m4связанного.
Саймон Рихтер