Autotools
Un article de Haypo.
(Différences entre les versions)
												
			
			| Version du 4 juillet 2007 à 21:31 (modifier) Haypo (Discuter | Contributions) ← Différence précédente  | 
				Version actuelle (12 décembre 2007 à 13:59) (modifier) (défaire) Haypo (Discuter | Contributions) (→Makefile.am)  | 
			||
| (4 révisions intermédiaires masquées) | |||
| Ligne 5 : | Ligne 5 : | ||
| Les '''autotools''' sont des outils de [http://fr.wikipedia.org/wiki/Torture torture] des développeurs de [[Logiciels libres|logiciel libre]]. | Les '''autotools''' sont des outils de [http://fr.wikipedia.org/wiki/Torture torture] des développeurs de [[Logiciels libres|logiciel libre]]. | ||
| - | Fichier à écrire  | + | == Fichier à écrire == | 
| + | |||
| * '''autogen.sh''' : appelle aclocal, automake, (libtoolize), autoconf | * '''autogen.sh''' : appelle aclocal, automake, (libtoolize), autoconf | ||
| * '''configure.ac''' ou '''configure.in''': deviendra configure | * '''configure.ac''' ou '''configure.in''': deviendra configure | ||
| Ligne 15 : | Ligne 16 : | ||
| ** config.guess, config.sub, libltdl, libtool.m4, ltmain.sh | ** config.guess, config.sub, libltdl, libtool.m4, ltmain.sh | ||
| - | Outils « haut niveau »  | + | == Outils « haut niveau » == | 
| * autoheader | * autoheader | ||
| * autom4te | * autom4te | ||
| Ligne 21 : | Ligne 22 : | ||
| * autoupdate | * autoupdate | ||
| - | Fichier génénés  | + | == Fichier génénés == | 
| * aclocal.m4: généré par le programme aclocal à partir de configure.in | * aclocal.m4: généré par le programme aclocal à partir de configure.in | ||
| * configure: Makefile.in => Makefile, config.h (optionnel), xxx.in => xxx | * configure: Makefile.in => Makefile, config.h (optionnel), xxx.in => xxx | ||
| Ligne 27 : | Ligne 28 : | ||
| * missing (copie de /usr/share/automakeX.Y/missing) | * missing (copie de /usr/share/automakeX.Y/missing) | ||
| * depcomp (copie de /usr/share/automakeX.Y/depcomp) | * depcomp (copie de /usr/share/automakeX.Y/depcomp) | ||
| + | |||
| + | == configure.ac == | ||
| + | |||
| + | Commandes : | ||
| + | * AC_xxx : commandes pour autoconf | ||
| + | * AM_xxx : commandes pour automake | ||
| + | * AC_OUTPUT : Demander à générer tous les fichiers, ceux listés dans AC_CONFIG_FILES par exemple | ||
| + | |||
| + | == Makefile.am == | ||
| + | |||
| + | * @XXX@ : remplacé par la valeur de la variable XXX | ||
| + | ** dans configure.ac, il faudra écrire AC_SUBST([XXX]) | ||
| + | * EXTRA_DIST : liste des fichiers inclus en plus dans l'archive (make dist-gzip / make dist-bzip2) | ||
| + | EXTRA_DIST = squid_nufw_helper.conf | ||
| + | * Règle « install-data-am: » : commandes pour copier des données supplémentaires. Exemple : | ||
| + | install-data-am: | ||
| + | install -d $(SQUIDDIR) | ||
| + | test -e $(SQUIDDIR)/squid_nufw_helper.conf || install -o root -g $(SQUID_GROUP) -m 640 squid_nufw_helper.conf $(SQUIDDIR) | ||
Version actuelle
Catégorie:Programmation Catégorie:Logiciel libre
 Retour aux articles de programmation
Les autotools sont des outils de torture des développeurs de logiciel libre.
Sommaire | 
[modifier] Fichier à écrire
- autogen.sh : appelle aclocal, automake, (libtoolize), autoconf
 - configure.ac ou configure.in: deviendra configure
 
- aclocal: configure.in => aclocal.m4 : concaténation de scripts provenant de /usr/share/aclocal/*.m4 ou /usr/share/aclocalX.Y/*.m4
 - autoconf: configure.in => configure
 - automake: Makefile.am => Makefile.in
 -  libtoolize: add libtool support for your package
- config.guess, config.sub, libltdl, libtool.m4, ltmain.sh
 
 
[modifier] Outils « haut niveau »
- autoheader
 - autom4te
 - autoscan
 - autoupdate
 
[modifier] Fichier génénés
- aclocal.m4: généré par le programme aclocal à partir de configure.in
 - configure: Makefile.in => Makefile, config.h (optionnel), xxx.in => xxx
 - install-sh (copie de /usr/share/automakeX.Y/install-sh)
 - missing (copie de /usr/share/automakeX.Y/missing)
 - depcomp (copie de /usr/share/automakeX.Y/depcomp)
 
[modifier] configure.ac
Commandes :
- AC_xxx : commandes pour autoconf
 - AM_xxx : commandes pour automake
 - AC_OUTPUT : Demander à générer tous les fichiers, ceux listés dans AC_CONFIG_FILES par exemple
 
[modifier] Makefile.am
-  @XXX@ : remplacé par la valeur de la variable XXX
- dans configure.ac, il faudra écrire AC_SUBST([XXX])
 
 - EXTRA_DIST : liste des fichiers inclus en plus dans l'archive (make dist-gzip / make dist-bzip2)
 
EXTRA_DIST = squid_nufw_helper.conf
- Règle « install-data-am: » : commandes pour copier des données supplémentaires. Exemple :
 
install-data-am:
     install -d $(SQUIDDIR)
     test -e $(SQUIDDIR)/squid_nufw_helper.conf || install -o root -g $(SQUID_GROUP) -m 640 squid_nufw_helper.conf $(SQUIDDIR)
						
			
		
