1 |
-----BEGIN PGP SIGNED MESSAGE----- |
2 |
Hash: SHA1 |
3 |
|
4 |
Stelian Ionescu wrote: |
5 |
> On Sat, Oct 13, 2007 at 12:05:42PM +0200, Marijn Schouten (hkBst) wrote: |
6 |
> [snip] |
7 |
>>> I'll try to explain how CL packages work: |
8 |
>>> |
9 |
>>> 1) a CL package installs exactly one directory under |
10 |
>>> /usr/share/common-lisp/source. This is contained in the variable |
11 |
>>> $CLPACKAGE and it defaults to $PN. Exception: app-emacs/slime installs a |
12 |
>>> package named "swank" |
13 |
>> The code shows this is not really true. I couldn't find where a non-default |
14 |
>> use was possible. You probably need to set: |
15 |
>> |
16 |
>> [[ CLPACKAGE == "" ]] && CLPACKAGE=${PN} |
17 |
> |
18 |
> there's no need for this construct because setting CLPACKAGE in the |
19 |
> ebuild is only meant as an override of the default value |
20 |
|
21 |
I was thinking of having the variable set before inheriting the eclass, but if |
22 |
you inherit first and set later it works as you intended. Please comment that. |
23 |
|
24 |
>> or slime won't be able to install swank. |
25 |
>> |
26 |
>>> 2) a CL package contains one or more ASDF files(.asd). The variable |
27 |
>>> $CLSYSTEMS contains the names of those systems and defaults to $PN |
28 |
>>> because in the simplest case there is only one .asd |
29 |
>>> The .asd files usually are contained in the toplevel of the source |
30 |
>>> directory and get symlinked into /usr/share/common-lisp/systems |
31 |
>> The code shows this is not really true. Therefore you cannot set $CLPACKAGE |
32 |
>> and expect it to be used by common-lisp_src_install in its call to |
33 |
>> common-lisp-system-symlink. Other eclasses use a construct like this: |
34 |
>> |
35 |
>> [[ CLSYSTEMS == "" ]] && CLSYSTEMS=${PN} |
36 |
> |
37 |
> same as before |
38 |
|
39 |
True. Why does common-lisp-system-symlink check for zero arguments? Is that |
40 |
functionality needed by any ebuild? |
41 |
|
42 |
>>> The eclass has three explicit "public" functions: |
43 |
>>> |
44 |
>>> 1) common-lisp-install(): must receive at least one argument. It installs |
45 |
>>> files or directories(recursively) into /usr/share/common-lisp/source |
46 |
>>> |
47 |
>>> 2) common-lisp-system-symlink(): when called with no arguments, it |
48 |
>>> installs the systems contained in $CLSYSTEMS. The system names must be |
49 |
>>> relative paths. Example: CLSYSTEMS="foo1 foo2 src/bar" |
50 |
>>> When called with some arguments, it installs those systems, ignoring |
51 |
>>> $CLSYSTEMS |
52 |
>> If I understand correctly the symlinks make it appear like CLPACKAGE contains |
53 |
>> what CLSYSTEMS contains. What is the point of that or why does it need to be |
54 |
>> that way? |
55 |
> |
56 |
> most CL packages contain precisely one .asd file, named exactly as the |
57 |
> package; for example, kmrcl-1.97 contains only the kmrcl.asd system. |
58 |
> Having CLPACKAGE=$PN and CLSYSTEMS=$PN is a good default |
59 |
|
60 |
That is not an answer. Why do we need to have two variables? Why can we not |
61 |
collapse them into one? |
62 |
|
63 |
>>> 3) do-debian-credits(): taken from common-lisp-common.eclass, since I've |
64 |
>>> dropped the inheritance on it |
65 |
>> Which packages use this |
66 |
> |
67 |
> cl-aima, cl-irc, cl-sql, png, rt and split-sequence |
68 |
> |
69 |
>> and what's the point of doing it? |
70 |
> |
71 |
> as you know, many CL devs don't do releases(or not even versioning) so |
72 |
> mkennedy thought well of using the snapshots made by Debian developers |
73 |
> instead of making his own snapshots. It's meant as a way to credit |
74 |
> Debian for this |
75 |
|
76 |
I don't know about many. A few yes. Having Debian oblige them certainly is a |
77 |
mixed blessing. I don't think I like having code in our eclasss merely to give |
78 |
credit and not nearly enough ebuilds seem to depend on this. Are any of the |
79 |
installed files of practical use? |
80 |
|
81 |
Stelian Ionescu wrote: |
82 |
> On Sat, Oct 13, 2007 at 12:07:39PM +0200, Marijn Schouten (hkBst) wrote: |
83 |
>> Stelian Ionescu wrote: |
84 |
>>> if there are no objections, I'll commit the eclass next evening - Oct. 13 |
85 |
>> I forgot to mention: quote ROOT. |
86 |
> okie, I thought quoting didn't matter in assignments, but only in |
87 |
> commands |
88 |
|
89 |
You are correct. |
90 |
|
91 |
Marijn |
92 |
|
93 |
- -- |
94 |
Marijn Schouten (hkBst), Gentoo Lisp project |
95 |
<http://www.gentoo.org/proj/en/lisp/>, #gentoo-lisp on FreeNode |
96 |
-----BEGIN PGP SIGNATURE----- |
97 |
Version: GnuPG v2.0.7 (GNU/Linux) |
98 |
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org |
99 |
|
100 |
iD8DBQFHEzsgp/VmCx0OL2wRAokeAJ9l3iGrMXT1PJzC1Gm7QYkTA2FhpgCggGtR |
101 |
/DM3Uflv/HxxtY7rWEUzOhM= |
102 |
=RL7O |
103 |
-----END PGP SIGNATURE----- |
104 |
-- |
105 |
gentoo-lisp@g.o mailing list |