1 |
On Tue, Jan 21, 2014 at 11:26 AM, Reinis Danne <rei4dan@×××××.com> wrote: |
2 |
|
3 |
> |
4 |
> How the eselect module creation could work? Something like this? |
5 |
> |
6 |
> ~# eselect module create blas |
7 |
> ~# eselect blas add atlas importance src dest [src dest [..]] |
8 |
> ... |
9 |
> ~# eselect blas remove atlas |
10 |
> ~# eselect delete blas |
11 |
> |
12 |
|
13 |
|
14 |
That is the idea. Last one should be "eselect module delete blas". |
15 |
|
16 |
|
17 |
> > * given the number of bugs, we should keep the linking to the reference |
18 |
> > names libraries, so we could eselect providers without re-compiling all |
19 |
> > reverse dependencies. We could do this in the open sourced providers by |
20 |
> > changing the soname of the libraries we compile, and in the binary ones |
21 |
> > (mkl,amcl...) with a link script generated library. |
22 |
> |
23 |
> Yes, this is ok and AFAICT it is like that now in the overlay. |
24 |
> |
25 |
> |
26 |
It is not. Let's take blas for example. Install openblas and |
27 |
blas-reference, then eselect blas reference. Then install lapack-reference, |
28 |
then remove blas-reference. You will have to re-install lapack-reference, |
29 |
because of a missing reference to librefblas.so. If openblas had the |
30 |
libblas.so soname and link, you would not have to. I'm actually not sure |
31 |
whether it is a side effect of our as-needed policy. |
32 |
|
33 |
We need to change all blas ebuilds to make sure they have the same soname, |
34 |
and add to alternatives_for blas the libraries to link. For blas-reference, |
35 |
eigen, atlas and openblas, this is just a matter of a link flag. For acml |
36 |
and mkl, this is trickier, thus the gen_usr_ldscript from toolchain-funcs |
37 |
eclass idea. If the ldscript stuff is not much overhead, we could apply it |
38 |
to all. |
39 |
|
40 |
Sebastien |