Gentoo Archives: gentoo-user-fr

From: Thomas de Grenier de Latour <degrenier@×××××××××××.fr>
To: gentoo-user-fr@l.g.o
Subject: Re: [gentoo-user-fr] Creer son propre paquet
Date: Fri, 24 Mar 2006 11:34:56
Message-Id: 20060324123521.4ac6d66a@eusebe
In Reply to: Re: [gentoo-user-fr] Creer son propre paquet by Xavier Maillard
1 On Fri, 24 Mar 2006 11:18:00 +0100,
2 Xavier Maillard <zedek@××××××.org> wrote:
3
4 > DEPEND="dev-lisp/common-lisp-controller
5 > virtual/commonlisp
6 > dev-lisp/cl-clx
7 > doc? ( media-gfx/transfig
8 > media-libs/netpbm
9 > virtual/tetex )
10 > emacs? ( virtual/emacs )
11 > slime? ( virtual/emacs )"
12 >
13 > S=${WORKDIR}/${ECVS_MODULE}
14 >
15 > src_install() {
16 > common-lisp-install *.cl *.lisp *.asd
17 > common-lisp-system-symlink
18 > dodoc COPYING README
19 > }
20
21 Un truc bizarre, c'est que tes USE flags ne servent qu'à ajouter des
22 dépendances, mais n'influencent apparement pas le comportement de
23 l'ebuild (où alors c'est planqué dans une eclass ?). Par exemple,
24 "doc" semble installer ce qu'il faut pour compiler du LaTeX, mais ça
25 n'est pas utilisé ensuite. On s'attendrait plutôt à un truc du genre :
26
27 src_compile() {
28 if use doc ; then
29 <compilation de la doc>
30 fi
31 }
32
33 src_install() {
34 ...
35 if use doc ; then
36 <installation de cette doc compilée>
37 fi
38 }
39
40 Pareil pour "emacs" et "slime" : soit leur présence change ce que le
41 paquet installera, soit ils n'ont pas vraiment de raison d'être dans
42 les dépendances. Bon, c'est pas une règle absolue non plus, mais quand
43 même, de manière générale, il n'y a à peu près que les meta-ebuilds
44 (style gnome-base/gnome) qui ont des USE flags servant seulement à
45 ajouter des dépendances de confort.
46
47 Une autre chose, c'est que tu ne distingues pas les DEPEND des RDEPEND,
48 c'est à dire les dépendances de compilation (enfin, pour autant qu'on
49 puisse parler de compilation dans ce cas... disons d'installation
50 plutôt) et celles de fonctionnement. Avec ton ebuild, RDEPEND n'étant
51 pas défini, il vaudra $DEPEND, donc il y a probablement tout ce que tu
52 voulais dedans. Mais par contre, je doute que tout soit nécéssaire dans
53 les deux. Bon, encore une fois, je connais pour ainsi dire pas Common
54 Lisp et ses ebuilds, donc je vais pas trop m'avancer, mais revenons sur
55 l'exemple de la compilation d'une doc LaTeX : typiquement, ça introduit
56 des DEPEND du style tetex, mais par contre, si c'est juste pour
57 installer au final un fichier PDF, bah dans les RDEPEND ça ajoute juste
58 "virtual/pdfviewer" (et encore, il est souvent omis). On se retrouve
59 donc plutôt dans un schema de ce style (avec des deps bidons hein, mais
60 tu vois l'idée quoi) :
61
62 COMMON_DEPEND="common-lisp et compagnie"
63 DEPEND="${COMMON_DEPEND}
64 doc? ( tetex )"
65 RDEPEND="${COMMON_DEPEND}
66 doc? ( virtual/pdfviewer )"
67
68 Enfin bon, de tout ça, rien n'empêchera ton paquet de fonctionner hein,
69 c'est plus des questions de fignolages.
70
71 Ah oui, et puis si, aussi, je vois que tu installes des fichiers .asd
72 -> il ne te faudrait pas une dépendance sur dev-lisp/cl-asdf pour les
73 utiliser, ou un truc du genre ? Bon, encore une fois, je peux me
74 gourrer.
75
76 --
77 TGL.
78 --
79 gentoo-user-fr@g.o mailing list

Replies

Subject Author
Re: [gentoo-user-fr] Creer son propre paquet Xavier Maillard <zedek@××××××.org>