1 |
On Sun, 03 Mar 2013 17:27:50 +0100 |
2 |
Thomas Sachau <tommy@g.o> wrote: |
3 |
|
4 |
> Alexis Ballier schrieb: |
5 |
> > On Sun, 03 Mar 2013 16:47:43 +0100 |
6 |
> > Thomas Sachau <tommy@g.o> wrote: |
7 |
> > |
8 |
> >> Alexis Ballier schrieb: |
9 |
> >>> On Sun, 03 Mar 2013 14:02:58 +0100 |
10 |
> >>> Thomas Sachau <tommy@g.o> wrote: |
11 |
> >>>> |
12 |
> >>>> Once the eclass has per-ABI header |
13 |
> >>> |
14 |
> >>> I think this is needed. |
15 |
> >>> |
16 |
> >>>> and binaries support, |
17 |
> >>> |
18 |
> >>> but here, could you enlighten me on its use cases ? I can't |
19 |
> >>> imagine why having multi binaries support would be useful. |
20 |
> >>> |
21 |
> >>> Alexis. |
22 |
> >>> |
23 |
> >> |
24 |
> >> |
25 |
> >> At least some binaries do have abi-specific output, which is used |
26 |
> >> by other applications. As a good example of this, have a look at |
27 |
> >> qmake and qmake based build systems. |
28 |
> > |
29 |
> > hmm, qmake doesnt seem to be the perfect example: how do you handle |
30 |
> > this? |
31 |
> > |
32 |
> > - install qmake-${abi} |
33 |
> |
34 |
> ok |
35 |
> |
36 |
> > - ln -s qmake-${DEFAULT_ABI} qmake |
37 |
> |
38 |
> Just the same as with headers: |
39 |
> |
40 |
> You dont symlink the headers for the default ABI, but instead a |
41 |
> wrapper is placed, which does then call/include the real target, so |
42 |
> in this case, qmake is then a symlink to the abiwrapper, which does |
43 |
> execute the real abi-specific binary, depending on the current ABI. |
44 |
> We can of course place this abiwrapper in every place, where it is |
45 |
> needed instead of the symlink, but having one central and package |
46 |
> provided wrapper instead is easier to maintain and update. |
47 |
> |
48 |
> > - modify eqmake4 to call the right qmake when doing multilib? |
49 |
> |
50 |
> not needed at all (with multilib-portage), since when any package |
51 |
> calls qmake to get any abi-specific details, the abiwrapper executes |
52 |
> the binary, that matches the ABI and you get the right details for |
53 |
> your ABI. |
54 |
> |
55 |
|
56 |
Indeed, nice idea. The wrapper can just call argv[0]-${ABI} or argv[0] |
57 |
if ABI is unset or argv[0]-${ABI} does not exist. |
58 |
Do you install this abiwrapper with multilib-portage? What would you |
59 |
think about splitting it and adding such a package to the tree? |
60 |
|
61 |
Alexis. |