1 |
On 09/11/2010 01:52 PM, walt wrote: |
2 |
|
3 |
> I don't know how portage chooses between static and dynamic libs while building |
4 |
> a package. |
5 |
|
6 |
Aha! Grepping through /usr/portage/eclass/* for 'static' taught me something: |
7 |
|
8 |
xorg-2.eclass: myopts+=" $(use_enable static-libs static)" |
9 |
|
10 |
So there is a "static" useflag in addition to "static-libs", which I'd never |
11 |
noticed before. |
12 |
|
13 |
I haven't actually tried the experiment yet, but I'm speculating that the |
14 |
difference between 'static' and 'static-libs' is something like this: |
15 |
|
16 |
Many packages install libraries so that other packages can use them. The |
17 |
'static-libs' useflag tells a package to build and install the static version |
18 |
of its own libraries *in addition to* the dynamic ones. |
19 |
|
20 |
The 'static' useflag tells portage to build a package and link it against the |
21 |
static versions of libraries that were installed by *other* packages. |
22 |
|
23 |
Quiz for sober people: (That excludes moi ;) |
24 |
|
25 |
What happens if portage builds a 'static' package that links against a library |
26 |
that was installed without the 'static-libs' useflag being set? |