Autoconf

GNU Autoconf
Description de l'image Official gnu.svg.
Description de l'image Autoconf 2.68 wine.png.
Informations
Développé par Projet GNU
Première version Voir et modifier les données sur Wikidata
Dernière version 2.72 ()[1]Voir et modifier les données sur Wikidata
Dépôt git.savannah.gnu.org/cgit/autoconf.gitVoir et modifier les données sur Wikidata
Écrit en M4
Système d'exploitation Type UnixVoir et modifier les données sur Wikidata
Environnement Multiplate-forme
Type Moteur de production
Licence Licence publique générale GNU version 3 ou ultérieureVoir et modifier les données sur Wikidata
Documentation www.gnu.org/software/autoconf/manual/index.htmlVoir et modifier les données sur Wikidata
Site web www.gnu.org/software/autoconf/autoconf.htmlVoir et modifier les données sur Wikidata

modifier - modifier le code - voir Wikidata (aide) Consultez la documentation du modèle

Organigramme.

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

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

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

  1. Zachary Weinberg (d), « autoconf-2.72 released [stable] », (consulté le )
  2. (en) « GNU Autoconf Archive », sur directory.fsf.org, FSF, .

Annexes

Bibliographie

  • [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

Liens externes

  • (en) GNU coding standards
  • (en) Guide Autotools.
  • (en) GNU Autoconf Archive


v · m
Histoire
Licences
Logiciels
Personnalités
  • Ludovic Courtès (auteur de GNU Guix)
  • Werner Koch
  • Christian Grothoff (auteur de GNUnet)
  • Simon Josefsson
  • Matt Lee
  • Stefan Monnier
  • Alexandre Oliva
  • Thomas Schwinge
  • Richard Stallman
  • John Gilmore
  • Mark H. Weaver
  • Andy Wingo
  • icône décorative Portail des logiciels libres