1 |
On 07/05/2016 12:00 AM, Michał Górny wrote: |
2 |
> On Mon, 4 Jul 2016 19:16:55 -0500 |
3 |
> Austin English <wizardedit@g.o> wrote: |
4 |
> |
5 |
>> On 07/01/2016 03:02 PM, Michał Górny wrote: |
6 |
>>> On Mon, 27 Jun 2016 17:04:41 -0500 |
7 |
>>> Austin English <wizardedit@g.o> wrote: |
8 |
>>> |
9 |
>>>> From ec0be3d1a808ea0c5bdd081a4bb935f86bf78d44 Mon Sep 17 00:00:00 2001 |
10 |
>>>> From: Austin English <wizardedit@g.o> |
11 |
>>>> Date: Mon, 27 Jun 2016 16:58:07 -0500 |
12 |
>>>> Subject: [PATCH 2/2] eclass/toolchain-funcs: add clang version functions |
13 |
>>> |
14 |
>>> Why do you even ask for review if you can't wait till the weekend |
15 |
>>> before committing? |
16 |
>> |
17 |
>> There's no set time limit that I could find anywhere. I checked with my |
18 |
>> mentor first, who said a few days was enough (as there were no comments |
19 |
>> by anyone). |
20 |
>> |
21 |
>>> I've already told you twice that I'm opposed to adding version querying |
22 |
>>> functions for clang, especially for the use case you proposed. You |
23 |
>>> should check for features, and not keep a huge list of supported gcc, |
24 |
>>> clang, pathcc, icc... versions. With every random compiler pretending |
25 |
>>> to be a random version of every other compiler. |
26 |
>> |
27 |
>> I did not use in the original intended case, however I think that these |
28 |
>> helpers are still useful. Why do we allow gcc version checks then? |
29 |
> |
30 |
> Because the ebuilds are full of that nonsense, and developers using |
31 |
> them don't help you remove it. |
32 |
|
33 |
Ack. |
34 |
|
35 |
> If we committed every single thing someone thought someone else might |
36 |
> find useful one day, the eclass would be huge hogs full of useless code |
37 |
> that is only used because someone noticed the function and suddenly |
38 |
> came to conclusion it's a good idea to use it because someone added it. |
39 |
> |
40 |
> Now let's add 4 additional functions for every single compiler that |
41 |
> someone may decide to support one day. I'm even strongly opposed to |
42 |
> adding functions that are used only theoretically. |
43 |
> |
44 |
>> There's no deprecated comment for these functions. By that logic, you |
45 |
>> should not have added tc-is-{gcc,clang}, 2 weeks ago in |
46 |
>> 6984a5b149a215dd96a9759d3d1f251354faf38f. You should be testing for |
47 |
>> compiler features directly, not keep a list of what compilers are |
48 |
>> supported in the code... |
49 |
> |
50 |
> Yes, I can revert this if you insist. And don't mind that all those |
51 |
> horribly broken ebuilds checking gcc versions will suddenly fail with |
52 |
> clang. |
53 |
|
54 |
So fix them properly, by detecting compiler features, not compiler name ;) |
55 |
|
56 |
>> The point of eclasses is to share code and make ebuild maintenance |
57 |
>> easier. I don't see how allowing version checks for GCC only, when clang |
58 |
>> is supported by a lot of ebuilds, makes that easier. Again, if you're so |
59 |
>> opposed to compiler specific checks, then please remove them from |
60 |
>> ebuilds using them and from toolchains-funcs.eclass (or at least mark |
61 |
>> them as deprecated). |
62 |
> |
63 |
> How does ebuild maintenance become easier when you have to test a dozen |
64 |
> of versions of different compilers to figure out which one is |
65 |
> supported? |
66 |
|
67 |
My goal is clang support parity with gcc. If you are opposed to these |
68 |
sort of checks, then why don't we deprecate and remove those functions? |
69 |
I want to know why gcc deserves special treatment, either all compilers |
70 |
should have easy way to check major/minor/full versions, or none should. |
71 |
Obviously I'm not saying gcc should be removed now, but it could |
72 |
certainly be marked deprecated so the usage doesn't spread (hopefully) |
73 |
further. |
74 |
|
75 |
-- |
76 |
-Austin |
77 |
GPG: 00B3 2957 B94B F3E1 |