Re: Installation de lib<package> en lieu et place de <package>...
Salut,
On dim, oct 16, 2005, Raphaël 'SurcouF' Bordet wrote:
> > DH_OPTIONS=-plibperfparse-*, ça me paraît très bizarre et je pense que
> > le problème vient de là.
> Ne voyant pas où ajouter ces variables pour les paquets libperfparse-*,
> j'ai commenté les variables actuelles mais sans plus de résultats.
En fait dh_make prépare un rules avec "DH_OPTIONS=-i" lors de l'appel
de la target binary-indep, et "DH_OPTIONS=-a" pour binary-arch, c'est
ce qui fait qu'ensuite chaque appel à dh_* agit sur tous les paquets
Arch: all et Arch: any (respectivement). Les DH_OPTIONS que tu passais
forceaient le fonctionnement sur un paquet particulier.
Si j'ai bien compris l'objectif, tu veux faire trois compilations
avec ./configure, make, make install, et t'en servir pour générer une
lib et un paquet client pour 1/ postgres 2/ mysql 3/ rien.
(Je ne sais pas pourquoi il n'y a pas de libperfparse-none, mais je
suppose que c'est -common à la place.)
Ce que tu peux faire dans ce cas c'est appeler les dh_* une fois pour
chaque paquet et ce pour chaque build et ce une fois pour arch-indep et
une fois pour arch.
Le schéma dh_make standard c'est d'appeler les dh_* une seule fois
pour la partie arch-indep du build et une seule fois pour la partie
arch du dep, par exemple ainsi pour arch-indep :
build-indep:
(objectif : compiler la partie arch-indep)
binary-indep: build-indep
(objectif : construire les paquets arch-indep)
-$(MAKE) -f debian/rules DH_OPTIONS=-i binary-common
(=> appelle binary-common, et chaque appel à dh_* s'appliquera sur
tous les paquets arch-indeps)
binary-common:
(objectif : appeler les dh_*)
dh_testdir
...
Je ne sais pas si ce schéma standard peut encore être appliqué dans
le cas où on installe les paquets trois fois dans 3 répertoires
différents ou si certains outils dh_* ne vont plus fonctionner. Cela
pourrait fonctionner en passant -P pour chaque build (postgres, mysql,
none), mais sans -i ou -a, par exemple :
binary-indep: build-indep
for flavor in postgresql mysql none; do \
for p in perfparse libperfparse; do \
-$(MAKE) -f debian/rules DH_OPTIONS="-p${p}-${flavor} -Pdebian/install-perfparse-${flavor}-tmp" binary-common \
done \
done
=> cela appellerait les dh_* de binary-common avec -p<nom-de-paquet> et
-P<répertoire-d'installation>
> > D'autre part, il faudra ajouter des shlibs à ces libs et les utiliser.
> Que veux-tu dire ? À partir du moment où dh_makeshlibs fait partie du
> processus, je pensais que dh s'en chargerait automatiquement.
En fait je n'ai pas vu l'appel à dh_makeshlibdeps en browsant le
diff.gz en http, j'ai du le louper.
> > (Attention : il y a une espace insécable dans le control après
> > "perl-base |".)
> À quelle ligne, plus précisément ?
Aux lignes 22, 34, et 46.
A+,
--
Loïc Minier <lool@dooz.org>
Reply to: