2009-02-04 6 views
0

Je vais créer une "bibliothèque de bibliothèques" et j'aimerais que chaque projet individuel soit géré en utilisant autotoolset. De plus, j'aimerais pouvoir construire l'ensemble des bibliothèques en même temps.Quel est le meilleur moyen de regrouper des projets autotools individuels dans un autre "projet"?

bibliothèques individuelles:

  • libyarconveniencezzz
  • libyarfoo
  • libyarbar
  • libyarbaz

Je pense que je pourrais avoir besoin d'avoir juste un Makefile de haut niveau écrit à la main puis avoir chaque bibliothèque/libra individuelle ry soit son propre paquet autotoolset.

J'ai fait quelque chose de similaire (il y a quatre ou cinq ans) mais j'ai perdu mon code de référence. A propos de la seule chose dont je me souviens vraiment, je prenais plusieurs mois à tâtonner dans des autotools avant d'avoir tout configuré comme je le voulais.

Répondre

1

J'utilise le code suivant pour construire plusieurs paquets autotools gérés (bien que tous les binaires créer « normaux » plutôt que d'une « bibliothèque des bibliothèques »):

configure.ac:

AC_INIT(bigpackage, 1.0, [email protected]) 
AM_INIT_AUTOMAKE 
AC_CONFIG_FILES(Makefile) 
AC_CONFIG_SUBDIRS([package1 package2 package3]) 
AC_OUTPUT 

Makefile.am:

SUBDIRS = package1 package2 package3 

Ensuite, tout cela peut être mis en place comme d'habitude:

touch NEWS README AUTHORS ChangeLog 
autoreconf -i 
./configure 
make 

Je ne l'appellerais pas nécessairement la «meilleure façon», mais cela fonctionne et passe bien tous les drapeaux aux sous-paquets.

Questions connexes