Hva er IN-filformatet?
En .in-fil er en malfil i rent tekstformat som behandles av byggesystemet GNU Autotools. De vanligste eksemplene er Makefile.in (mal for et prosjekts Makefile) og config.h.in (mal for en C/C++-konfigurasjonsheader). Når en utvikler kjører ./configure - skriptet generert av GNU Autoconf - leser skriptet disse .in-malene, erstatter @VARIABLE@-plassholdere med verdier oppdaget fra byggemiljøet (kompilatorstier, biblioteksflagg, systemfunksjoner), og skriver de endelige utdatafilene.
GNU Autoconf ble opprettet av David MacKenzie i 1991 og vedlikeholdes av GNU Project. Autoconf 2.72 (desember 2023) er den gjeldende versjonen. Den øverste makro-inndatafilen ble historisk kalt configure.in; den ble omdøpt til configure.ac i Autoconf 2.50 for å redusere tvetydighet, selv om mange eldre prosjekter fortsatt bruker det opprinnelige navnet.
Vanlige .in-maltyper:
Makefile.in- blir tilMakefileetter at./configureer kjørtconfig.h.in- blir tilconfig.hmed#define//* #undef */-erstatningerfoo.pc.in- blir til en pkg-config.pc-fil
Siden .in-filer er ren tekst, kan alle tekstredigeringsprogrammer åpne og lese dem. Relaterte filtyper inkluderer .ac (Autoconf-makrofiler), .am (Automake-inndata) og .m4 (M4-makrofiler). Merk at filtypen .in ikke er eksklusiv for Autotools - CMakes configure_file()-kommando bruker også .in-maler - men programvareutviklere som jobber med Autotools-byggesystemer representerer det dominerende bruksområdet.
Sikkerhet og trygghet
RISIKO: LOWEn .in-malfil er ren tekst og kan ikke kjøre kode av seg selv. Den er trygg å åpne i et tekstredigeringsprogram. Configure-skriptet som behandler .in-filer er et shell-skript (som kjører kode) - den vanlige forsiktigheten for å kjøre ./configure fra en upålitelig kilde gjelder. Selve .in-filen er passiv.
Formatdetaljer
i et nøtteskall- McAfee VirusScan intern/midlertidig fil - Noen McAfee-antivirusversjoner bruker .in som en intern filtype for midlertidige eller karantenerelaterte data; ikke et dokumentert offentlig format og sjelden påtruffet av brukere.
- Generisk mal/inndatafil - Mange applikasjoner bruker .in som en generisk konvensjon for enhver mal eller inndatafil som behandles for å produsere en utdatafil (f.eks. CMakes configure_file bruker .in-maler).
- Perl Module Build Input - Enkelte Perl/CPAN-byggesystemer bruker .in-filer som inndatamaler for genererte filer under modulinstallasjon.
Programmer som åpner IN-filer
Tekniske detaljer
dyp spesifikasjon| Filkoding | Ren ASCII/UTF-8 tekst |
| Primærrolle | Malfil som brukes av ./configure (generert av GNU Autoconf) for å produsere endelige utdatafiler for bygging |
| Plassholdersyntaks | @VARIABLE@-markører erstattet av configure med oppdagede systemverdier (kompilatorsti, biblioteksflagg, funksjonsflagg) |
| Vanlige maltyper | Makefile.in → Makefile; config.h.in → config.h; foo.pc.in → foo.pc (pkg-config metadata) |
| Struktur for config.h.in | Inneholder #undef FEATURE-direktiver; configure erstatter dem med #define FEATURE 1 eller /* #undef FEATURE */ |
| configure.in vs configure.ac | configure.in er det eldre navnet på den øverste Autoconf-makroinndataen; omdøpt til configure.ac i Autoconf 2.50 |
| M4-makrospråk | configure.in / configure.ac-filer bruker M4-makroer og AC_*-kall (AC_INIT, AC_PROG_CC, AC_CHECK_LIB, osv.) |
| Automake-rørledning | Makefile.am (Automake-inndata) → Makefile.in (produsert av automake) → Makefile (produsert av ./configure) |
| Binær signatur | Ingen - ren tekst, ingen magiske byte |
| Typisk filstørrelse | 1 KB-500 KB (configure.in er vanligvis 5-100 KB; Makefile.in varierer mye etter prosjektets kompleksitet) |
| Gjeldende Autoconf-versjon | GNU Autoconf 2.72, utgitt desember 2023 |
| Plattform | Hovedsakelig Linux/macOS/Unix; tilgjengelig på Windows via MSYS2, Cygwin eller WSL |
| Relaterte filtyper | .ac (Autoconf-makrofiler), .am (Automake-inndatamaler), .m4 (rå M4-makrodefinisjoner) |
| Utgitt | 1991 (GNU Autoconf 1.0 by David MacKenzie) |
| Siste versjon | Autoconf 2.72 (December 2023) |
| Åpen standard | Ja · royalty-fri |
| Spesifikasjon | www.gnu.org |
IN-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om IN-filer.