1 |
On 08/30/2017 01:45 PM, Michał Górny wrote: |
2 |
> W dniu śro, 30.08.2017 o godzinie 13∶35 -0700, użytkownik Zac Medico |
3 |
> napisał: |
4 |
>> On 08/30/2017 01:31 PM, Michał Górny wrote: |
5 |
>>> W dniu śro, 30.08.2017 o godzinie 10∶48 -0700, użytkownik Zac Medico |
6 |
>>> napisał: |
7 |
>>>> On 08/30/2017 02:06 AM, Michał Górny wrote: |
8 |
>>>>> The value of get_libdir depends on the profile, and so it is not useful |
9 |
>>>>> for dependency calculations. Furthermore, it seems that Portage does |
10 |
>>>>> not handle defining it in global scope well due to EAPI checking magic. |
11 |
>>>>> Ban it completely where it is defined as EAPI function to let developers |
12 |
>>>>> catch their mistakes early rather than see them as 'command not found' |
13 |
>>>>> errors during dependency calculation / cache updates. |
14 |
>>>>> |
15 |
>>>>> Bug: https://bugs.gentoo.org/629010 |
16 |
>>>>> --- |
17 |
>>>>> bin/ebuild.sh | 1 + |
18 |
>>>>> 1 file changed, 1 insertion(+) |
19 |
>>>>> |
20 |
>>>>> diff --git a/bin/ebuild.sh b/bin/ebuild.sh |
21 |
>>>>> index a400ef72e..f1ac3f278 100755 |
22 |
>>>>> --- a/bin/ebuild.sh |
23 |
>>>>> +++ b/bin/ebuild.sh |
24 |
>>>>> @@ -66,6 +66,7 @@ else |
25 |
>>>>> use useq usev use_with use_enable" |
26 |
>>>>> ___eapi_has_usex && funcs+=" usex" |
27 |
>>>>> ___eapi_has_in_iuse && funcs+=" in_iuse" |
28 |
>>>>> + ___eapi_has_get_libdir && funcs+=" get_libdir" |
29 |
>>>>> # These functions die because calls to them during the "depend" phase |
30 |
>>>>> # are considered to be severe QA violations. |
31 |
>>>>> funcs+=" best_version has_version portageq" |
32 |
>>>>> |
33 |
>>>> |
34 |
>>>> It's possible that there are working ebuilds that call get_libdir in |
35 |
>>>> global scope. Have we done an analysis of the ebuilds in the gentoo |
36 |
>>>> repository? Obviously, it would be safer to call eqawarn. |
37 |
>>> |
38 |
>>> If there were any (more), we'd have caught them during cache regen, |
39 |
>>> wouldn't we? When I accidentally left it when bumping to EAPI 6, I've |
40 |
>>> got a bug report almost immediately. |
41 |
>> |
42 |
>> We'll only catch it during cache regen if we delete all of the previous |
43 |
>> cache, forcing all of the ebuilds to be sourced again. If all ebuilds in |
44 |
>> the gentoo tree are compliant, the I think that's good enough for us to |
45 |
>> die here. |
46 |
> |
47 |
> I'm pretty sure all of them are. However, if someone has resources to |
48 |
> spare, I'd appreciate running a full regen with the patch to confirm. |
49 |
|
50 |
Confirmed. Please merge the patch. |
51 |
-- |
52 |
Thanks, |
53 |
Zac |