1 |
Ulrich Mueller schrieb: |
2 |
>>>>>> On Sun, 25 Aug 2013, Thomas Sachau wrote: |
3 |
> |
4 |
>> workaround: add a variable, which changes the return of the function |
5 |
>> checking for the current ABI (always true with variable, without |
6 |
>> only true, when $ABI == $DEFAULT_ABI) |
7 |
> |
8 |
> Would this variable be set by the user, in profiles, or in ebuilds? |
9 |
|
10 |
This variable can be set by users and profiles, when they want binaries |
11 |
for a different ABI (e.g. 64bit toolchain with 32bit userland). |
12 |
|
13 |
> |
14 |
>> first version (multilib1.patch) directly changes the output of the |
15 |
>> currently used multilib_is_native_abi() function: |
16 |
> |
17 |
> I think this would be very misleading. If a function is called |
18 |
> multilib_is_native_abi then it should test for exactly that, not for |
19 |
> something else. |
20 |
> |
21 |
>> second version (multilib2.patch) creates a new function, which |
22 |
>> should then be used by ebuild authors to check, if they should build |
23 |
>> ABI-specific content or not (using build_binaries() function instead |
24 |
>> of multilib_is_native_abi() function) |
25 |
> |
26 |
> +build_binaries() { |
27 |
> |
28 |
> Name space pollution? Prefix with "multilib" please. |
29 |
|
30 |
i dont really care about the naming, so if you prefer some multilib in |
31 |
there, how about this: |
32 |
|
33 |
multilib_build_binaries()? |
34 |
|
35 |
> |
36 |
> + if [[ ${COMPLETE_MULTILIB} == yes ]] ; then |
37 |
> + return 0 |
38 |
> + else |
39 |
> + multilib_is_native_abi |
40 |
> + fi |
41 |
> |
42 |
> This can be expressed much shorter (and clearer): |
43 |
> |
44 |
> [[ ${COMPLETE_MULTILIB} == yes ]] || multilib_is_native_abi |
45 |
> |
46 |
> But allow me a stupid question, why do you want to build binaries for |
47 |
> other ABIs anyway? It's called multilib, not multibin. |
48 |
|
49 |
I already wrote about a setup needing the above. If a user only enables |
50 |
ab_x86_32 for ebuilds with binary-restrictions, they wont get any binary |
51 |
at all. |
52 |
Pretty bad, when you try a reboot with e.g. no udev binaries. ;-) |
53 |
|
54 |
In addition, users previously had the choice with multilib-portage to |
55 |
build binaries for some or all target ABIs. Restricting the building of |
56 |
binaries to the default ABI removes this ability from users. |
57 |
|
58 |
|
59 |
-- |
60 |
|
61 |
Thomas Sachau |
62 |
Gentoo Linux Developer |