1 |
On Tue, 18 Mar 2008 10:21:49 +0100 |
2 |
"Fabio Erculiani" <lxnay@××××××××××××.org> wrote: |
3 |
> Example: |
4 |
> x11-libs/qt:* |
5 |
> |
6 |
> In that case, what Paludis will pull? x11-libs/qt:3 or x11-libs/qt:4 ? |
7 |
> Is my understanding right? |
8 |
> Also, could you make an example for the ":= slot dependency" syntax? |
9 |
|
10 |
See the section "Slot Dependencies" in chapter 9 of |
11 |
http://www.mailstation.de/pms.pdf . |
12 |
|
13 |
In non technical terms: |
14 |
|
15 |
:* means, effectively, that the slot isn't locked at compile time, and |
16 |
that if you build a package against foo:2, it will work at runtime |
17 |
with foo:1 or foo:3 instead. Examples of this are many things that don't |
18 |
do C-style linking. |
19 |
|
20 |
:= means, effectively, that the slot is locked at compile time. An |
21 |
example of this is a package that can use any version of 'db' -- the |
22 |
package can often compile against any version of db, but if you remove |
23 |
the slot of the db version against which the package was built, the |
24 |
package will break. |
25 |
|
26 |
It's used by Paludis as a hint to --uninstall and --uninstall-unused. |
27 |
For normal dependencies, Paludis takes the safe option and assumes that |
28 |
if something has a run dep upon foo, all installed slots of foo are |
29 |
used. Using :* dependencies relaxes that restriction to any slot. |
30 |
Using := dependencies changes that restriction to one specific slot. |
31 |
|
32 |
-- |
33 |
Ciaran McCreesh |