« Autoconf » : différence entre les versions
m →Introduction : dans wikidata |
m v2.04b - Correction syntaxique (Espace insécable) |
||
(6 versions intermédiaires par 6 utilisateurs non affichées) | |||
Ligne 4 : | Ligne 4 : | ||
| logo = Official gnu.svg |
| logo = Official gnu.svg |
||
| image = |
| image = |
||
| |
| légende = |
||
| développeur = [[Projet GNU]] |
| développeur = [[Projet GNU]] |
||
| date de première version = |
| date de première version = |
||
| langage de programmation = |
| langage de programmation = [[M4]] |
||
| environnement = [[Multiplate-forme]] |
| environnement = [[Multiplate-forme]] |
||
| |
| langues = |
||
| type = [[Moteur de production]] |
| type = [[Moteur de production]] |
||
| licence = [[GNU GPL]]{{laquelle}} |
|||
}} |
}} |
||
[[Image:Autoconf-automake-process-fr.svg| |
[[Image:Autoconf-automake-process-fr.svg|droite|vignette|400px|Organigramme.]] |
||
'''GNU Autoconf''' est un [[logiciel]] servant à produire des scripts [[Interpréteur de commandes|shell]] qui configurent automatiquement le [[code source]] d'un [[logiciel]] pour l'adapter à divers [[systèmes d'exploitation]] de type [[Unix]]. |
'''GNU Autoconf''' est un [[logiciel]] servant à produire des scripts [[Interpréteur de commandes|shell]] qui configurent automatiquement le [[code source]] d'un [[logiciel]] pour l'adapter à divers [[systèmes d'exploitation]] de type [[Unix]]. Les scripts produits par Autoconf sont indépendants de cet outil quand ils s'exécutent, de sorte que les usagers de ces scripts n'ont pas besoin d'avoir Autoconf. |
||
Avec [[Automake|GNU Automake]] et [[GNU Libtool]], Autoconf forme le système de compilation de [[GNU]]. |
Avec [[Automake|GNU Automake]] et [[GNU Libtool]], Autoconf forme le système de compilation de [[GNU]]. |
||
Autoconf utilise le [[préprocesseur]] [[GNU M4]] pour transformer un fichier « |
Autoconf utilise le [[préprocesseur]] [[GNU M4]] pour transformer un fichier « configure.ac » (ou « configure.in » anciennement) en un script shell portable nommé « configure ». Le script « configure » exécute de façon non interactive et génère des en-têtes adaptés et des [[makefile]]s dérivés de modèles préétablis. On peut considérer qu'Autoconf [[Compilateur|compile]] un programme [[GNU M4|m4]] vers un script shell. |
||
== Approche == |
== Approche == |
||
Autoconf est semblable au système [[Metaconfig]] utilisé par [[Perl (langage)|Perl]]. |
Autoconf est semblable au système [[Metaconfig]] utilisé par [[Perl (langage)|Perl]]. Le système {{lien|imake|lang=en}} utilisé par le ''[[X Window System]]'' lui est apparenté, mais est basé sur une philosophie différente. |
||
L'approche employée par Autoconf pour viser la [[Portabilité (informatique)|portabilité]] est de tester des [[fonctionnalité]]s plutôt que de déterminer la [[Version d'un logiciel|version]] des logiciels présents sur un système. |
L'approche employée par Autoconf pour viser la [[Portabilité (informatique)|portabilité]] est de tester des [[fonctionnalité]]s plutôt que de déterminer la [[Version d'un logiciel|version]] des logiciels présents sur un système. Par exemple, le compilateur [[C (langage)|C]] sous [[SunOS]] 4 ne reconnaissait pas la norme de l'[[Organisation internationale de normalisation|ISO]] pour ce langage. Toutefois, il est possible que l'administrateur du système ait installé un compilateur le reconnaissant. Une approche purement basée sur les versions de logiciels n'aurait pas fait usage de ce compilateur ISO, mais une approche basée sur les fonctionnalités serait capable de découvrir que le compilateur spécifié respecte la norme ISO. Les justifications de cette approche sont les suivantes : |
||
* le script de configuration peut obtenir des résultats raisonnables sur des systèmes récents ou inconnus ; |
* le script de configuration peut obtenir des résultats raisonnables sur des systèmes récents ou inconnus ; |
||
* les administrateurs peuvent adapter leur système et voir le script de configuration profiter de ces adaptations ; |
* les administrateurs peuvent adapter leur système et voir le script de configuration profiter de ces adaptations ; |
||
* il n'est pas nécessaire de garder la trace de nombreux détails concernant les versions, les correctifs, etc, pour déterminer si une fonctionnalité particulière est disponible ou non. |
* il n'est pas nécessaire de garder la trace de nombreux détails concernant les versions, les correctifs, etc., pour déterminer si une fonctionnalité particulière est disponible ou non. |
||
== GNU Autoconf Archive == |
== GNU Autoconf Archive == |
||
'''''Autoconf Archive''''' est une collection de plus de 400 ''macros'' pour ''Autoconf'' distribuée sous la forme d’un projet annexe indépendant<ref>{{Lien web |langue=en |url=http://directory.fsf.org/wiki/autoconf-archive |titre=GNU Autoconf Archive |jour=24 |mois=février |année=2015 |site=[[Répertoire du logiciel libre|directory.fsf.org]] |éditeur=[[Free Software Foundation|FSF]]}}.</ref>. |
'''''Autoconf Archive''''' est une collection de plus de 400 ''macros'' pour ''Autoconf'' distribuée sous la forme d’un projet annexe indépendant<ref>{{Lien web |langue=en |url=http://directory.fsf.org/wiki/autoconf-archive |titre=GNU Autoconf Archive |jour=24 |mois=février |année=2015 |site=[[Répertoire du logiciel libre|directory.fsf.org]] |éditeur=[[Free Software Foundation|FSF]]}}.</ref>. |
||
⚫ | |||
* {{en}} « A Practitioner's Guide to GNU Autoconf, Automake, and Libtool » (par John Calcote - ISBN 978-1-59327-206-7). |
|||
== Notes et références == |
== Notes et références == |
||
{{références}} |
{{références}} |
||
== |
== Annexes == |
||
⚫ | |||
* {{Ouvrage|langue=en|auteur1=John Calcote|titre=A Practitioner's Guide to GNU Autoconf, Automake, and Libtool|éditeur=No Starch Press|lieu=San Francisco|année=2010|pages totales=332|isbn=978-1-59327-206-7|oclc=351322310|lccn=2009040784|présentation en ligne=https://books.google.com/books?id=HBbKghM2fGYC&printsec=frontcover|libellé=Calcote 2010}}. |
|||
=== Articles connexes === |
=== Articles connexes === |
||
* [[Autotools]] |
* [[Autotools]] |
||
Ligne 50 : | Ligne 49 : | ||
{{Palette GNU}} |
{{Palette GNU}} |
||
{{Portail |
{{Portail|logiciels libres}} |
||
[[Catégorie:Logiciel du projet GNU]] |
[[Catégorie:Logiciel du projet GNU]] |
Dernière version du 28 mars 2022 à 20:13
GNU Autoconf est un logiciel servant à produire des scripts shell qui configurent automatiquement le code source d'un logiciel pour l'adapter à divers systèmes d'exploitation de type Unix. Les scripts produits par Autoconf sont indépendants de cet outil quand ils s'exécutent, de sorte que les usagers de ces scripts n'ont pas besoin d'avoir Autoconf.
Avec GNU Automake et GNU Libtool, Autoconf forme le système de compilation de GNU.
Autoconf utilise le préprocesseur GNU M4 pour transformer un fichier « configure.ac » (ou « configure.in » anciennement) en un script shell portable nommé « configure ». Le script « configure » exécute de façon non interactive et génère des en-têtes adaptés et des makefiles dérivés de modèles préétablis. On peut considérer qu'Autoconf compile un programme m4 vers un script shell.
Approche
[modifier | modifier le code]Autoconf est semblable au système Metaconfig utilisé par Perl. Le système imake (en) utilisé par le X Window System lui est apparenté, mais est basé sur une philosophie différente.
L'approche employée par Autoconf pour viser la portabilité est de tester des fonctionnalités plutôt que de déterminer la version des logiciels présents sur un système. Par exemple, le compilateur C sous SunOS 4 ne reconnaissait pas la norme de l'ISO pour ce langage. Toutefois, il est possible que l'administrateur du système ait installé un compilateur le reconnaissant. Une approche purement basée sur les versions de logiciels n'aurait pas fait usage de ce compilateur ISO, mais une approche basée sur les fonctionnalités serait capable de découvrir que le compilateur spécifié respecte la norme ISO. Les justifications de cette approche sont les suivantes :
- le script de configuration peut obtenir des résultats raisonnables sur des systèmes récents ou inconnus ;
- les administrateurs peuvent adapter leur système et voir le script de configuration profiter de ces adaptations ;
- il n'est pas nécessaire de garder la trace de nombreux détails concernant les versions, les correctifs, etc., pour déterminer si une fonctionnalité particulière est disponible ou non.
GNU Autoconf Archive
[modifier | modifier le code]Autoconf Archive est une collection de plus de 400 macros pour Autoconf distribuée sous la forme d’un projet annexe indépendant[2].
Notes et références
[modifier | modifier le code]- Zachary Weinberg (d), « autoconf-2.72 released [stable] », (consulté le )
- (en) « GNU Autoconf Archive », sur directory.fsf.org, FSF, .
Annexes
[modifier | modifier le code]Bibliographie
[modifier | modifier le code]- [Calcote 2010] (en) John Calcote, A Practitioner's Guide to GNU Autoconf, Automake, and Libtool, San Francisco, No Starch Press, , 332 p. (ISBN 978-1-59327-206-7, OCLC 351322310, LCCN 2009040784, présentation en ligne).
Articles connexes
[modifier | modifier le code]Liens externes
[modifier | modifier le code]- (en) GNU coding standards
- (en) Guide Autotools.
- (en) GNU Autoconf Archive