On Fri, 24 Mar 2006 11:18:00 +0100,
Xavier Maillard <zedek@...> wrote:
> DEPEND="dev-lisp/common-lisp-controller
> virtual/commonlisp
> dev-lisp/cl-clx
> doc? ( media-gfx/transfig
> media-libs/netpbm
> virtual/tetex )
> emacs? ( virtual/emacs )
> slime? ( virtual/emacs )"
>
> S=${WORKDIR}/${ECVS_MODULE}
>
> src_install() {
> common-lisp-install *.cl *.lisp *.asd
> common-lisp-system-symlink
> dodoc COPYING README
> }
Un truc bizarre, c'est que tes USE flags ne servent qu'à ajouter des
dépendances, mais n'influencent apparement pas le comportement de
l'ebuild (où alors c'est planqué dans une eclass ?). Par exemple,
"doc" semble installer ce qu'il faut pour compiler du LaTeX, mais ça
n'est pas utilisé ensuite. On s'attendrait plutôt à un truc du genre :
src_compile() {
if use doc ; then
<compilation de la doc>
fi
}
src_install() {
...
if use doc ; then
<installation de cette doc compilée>
fi
}
Pareil pour "emacs" et "slime" : soit leur présence change ce que le
paquet installera, soit ils n'ont pas vraiment de raison d'être dans
les dépendances. Bon, c'est pas une règle absolue non plus, mais quand
même, de manière générale, il n'y a à peu près que les meta-ebuilds
(style gnome-base/gnome) qui ont des USE flags servant seulement à
ajouter des dépendances de confort.
Une autre chose, c'est que tu ne distingues pas les DEPEND des RDEPEND,
c'est à dire les dépendances de compilation (enfin, pour autant qu'on
puisse parler de compilation dans ce cas... disons d'installation
plutôt) et celles de fonctionnement. Avec ton ebuild, RDEPEND n'étant
pas défini, il vaudra $DEPEND, donc il y a probablement tout ce que tu
voulais dedans. Mais par contre, je doute que tout soit nécéssaire dans
les deux. Bon, encore une fois, je connais pour ainsi dire pas Common
Lisp et ses ebuilds, donc je vais pas trop m'avancer, mais revenons sur
l'exemple de la compilation d'une doc LaTeX : typiquement, ça introduit
des DEPEND du style tetex, mais par contre, si c'est juste pour
installer au final un fichier PDF, bah dans les RDEPEND ça ajoute juste
"virtual/pdfviewer" (et encore, il est souvent omis). On se retrouve
donc plutôt dans un schema de ce style (avec des deps bidons hein, mais
tu vois l'idée quoi) :
COMMON_DEPEND="common-lisp et compagnie"
DEPEND="${COMMON_DEPEND}
doc? ( tetex )"
RDEPEND="${COMMON_DEPEND}
doc? ( virtual/pdfviewer )"
Enfin bon, de tout ça, rien n'empêchera ton paquet de fonctionner hein,
c'est plus des questions de fignolages.
Ah oui, et puis si, aussi, je vois que tu installes des fichiers .asd
-> il ne te faudrait pas une dépendance sur dev-lisp/cl-asdf pour les
utiliser, ou un truc du genre ? Bon, encore une fois, je peux me
gourrer.
--
TGL.
--
gentoo-user-fr@g.o mailing list
|