(Courriels de diversion: <coquettes@trafiquee-cauterisation.com> <mobiliers@defibrer-terminez.com> <peignes@programmais-remplirons.com> <rassasiez@enregistrerait-entierete.com> <dialectique@coloniserons-soupconnee.com> <rurale@periclita-budgetisation.com> <bloques@inspiree-annexees.com> <avilis@depose-encrant.com> <secretait@ambree-reexaminant.com> <regretteriez@fusionniez-gauchi.com> )


On Tue, Dec 02, 2003 at 10:32:16PM +0100, Guilhem BONNEFILLE wrote:
[...]
> En fait, la question que je me pose est sensiblement différente (je m'aperçoit en me relisant que j'ai été un peu confus).
> Avec autoconf/automake, si j'ai bien compris, mon seul travail consiste à déclarer que tel fichier est un fichier de donnée (une simple affectation dans le Makefile.am). Du coup, c'est autoconf/automake qui produit les règles d'installation de ce fichier dans le répertoire des données. Or, :
> - datadir semble se positionner par défaut à /usr/share,
> - sous Debian ces fichiers semblent être déployés sous /usr/share/package,
> - la doc du créateur de package Debian dit que tout se fait tout seul lorsque le projet utilise autoconf/automake,
> - je ne trouve pas trace (dans mes essais perso de packaging Debian plus simples) de l'application de l'option '--datadir' lors de la phase de configuration.

Bonjour,

vous avez bien compris, quand on utilise automake, il suffit de faire le
tri entre les différents fichiers à installer (fichier header, exécutable,
bibliothèque, fichier de données, etc.), et seulement cela. L'emplacement
définitif sera choisi par l'utilisateur selon ses envies, en passant les
bonnes options au script configure. Par exemple, pour faire un paquet deb
ou rpm, il suffira certainement d'invoquer
  ./configure --prefix=/usr

> > > CFGDIR
> > > ------
> > > Aujourd'hui il vaut $prefix/$NAME.
> > > J'ai identifié que cette variable se rapproche le plus de la variable Autoconf $sysconfdir. Celle-ci à pour valeur par défaut $prefix/etc. Ici aussi il faut que je me documente un peu plus (autres projets) afin de déterminer pourquoi sur ma Debian je ne trouve rien sous /usr/local/etc, mais que /etc contient beaucoup de fichiers.
> > 
> > Pour la distrib debian, la norme est /etc/package.conf pour un fichier
> > de configuration unique, et /etc/package/... pour un ensemble de
> > fichiers de configuration. Exemples : /etc/apache/httpd.conf et
> > /etc/apache/srm.conf pour le paquet apache, /etc/lilo.conf pour lilo.

Oui. On peut soit utiliser la variable sysconfdir, soit laisser le
fichier de configuration dans datadir et mettre un lien vers /etc. En
fait, il faut faire l'inverse : mettre les fichiers dans /etc pour
satisfaire le FHS, et mettre un lien dans $datadir pour que le
programme original fonctionne sans modifications et que les utilisateurs
du programme habitués à trouver les fichiers de conf dans $datadir ne
soient pas perdus.

[...]
> J'ai bien l'intention de fouiller le FHS pour comprendre comment on choisit entre "/usr/lib" et "/usr/share", mais si vous aviez déjà une réponse... ;-))

On met dans share les fichiers qui sont indépendants de l'architecture,
et dans lib ceux en dépendent. Par exemple, le bytecode java est dans
share, les bibliothèques dans lib.

Denis