PpHd (./17) :
De quoi tu parles ?
Je parle:
* des fichiers comme 
missing, 
ltmain.sh etc. qui se retrouvent recopiés caractère pour caractère dans 
chaque programme,
* de l'horreur qu'est 
aclocal, qui a un fonctionnement absolument débile. 

 Ça insère des morceaux de shell script dans 
configure, avec 2 processus possibles, créant chacun 2 (!) copies de ces morceaux par programme:
A. définitions "partagées":
1. 
aclocal recopie la définition présente sur le système sur lequel on le lance dans 
aclocal.m4 (une copie inutile),
2. 
autoconf recopie cette même définition dans 
configure (une deuxième);
B. 
acinclude.m4 (utilisé par KDE 3 par exemple):
1. le mainteneur recopie 
acinclude.m4 dans ses sources à la main 

 (copie non seulement totalement inutile, mais en plus, ça marche bien si on n'en a qu'un seul, mais si chaque projet fait ça, il faut en plus concaténer tous ces fichiers 
acinclude.m4 
),
2. 
autoconf recopie cette définition dans 
configure (deuxième copie).
Avec 
CMake, c'est l'utilisateur (ou le packageur) qui lance 
cmake (et ça marche bien parce qu'ils ne font pas sans cesse des changements incompatibles comme les autotools 

), donc le mainteneur ne doit pas recopier les snippets 
cmake déjà installés par les autres logiciels ou 
cmake lui-même (et une distribution peut facilement patcher ces fichiers parce qu'il n'y a qu'une copie). Et avant que tu te plaignes que ce n'est pas flexible, on peut aussi inclure ses propres snippets 
cmake (le fonctionnement prévu à la base pour 
acinclude.m4, mais ça a été souvent utilisé en pratique pour recopier des définitions dans chaque projet 

), et ces snippets ne sont pas recopiés ailleurs dans le tarball (à la 
autoconf) non plus.