Michał Górny <mgo...@gentoo.org> writes:

> This is nowhere near a good solution IMO.
>
> First of all, it doesn't give us a way of ensuring ABI compatibility.
> Users switch the flags and have to rebuild all C++ packages to regain
> the ABI compatibility. The system ends up borked quite easily.
>
> Then, we don't have a good way of finding packages to rebuild. Users
> could try to find out which libraries used C++ but well... it's nowhere
> near good. Or they just rebuild everything...
>
> Then, many developers just won't bother. Users will be the ones to hit
> the incompatible package build failures first.
>
> Lastly, this gives us no way of switching to C++11 completely without
> modifying the compiler defaults. Even if we put '-std=c++11' into
> profiles, most of the people override CXXFLAGS and won't have it.
>
>> Any anyway, if it is only for lldb, a piece of elog conveying a
>> preferred solution would suffice.
>
> elog? I think you mean dying with CXXFLAGS that don't specify
> the necessary standard. Which is kinda backwards to REQUIRED_USE...
>
> And then, simple CXXFLAGS solution would end up breaking users'
> systems...

Michał, I am totally agree with you. This approach will leave lots of
dirty tricks to the users. Therefore this is a decision between whether
the devs or the users do this heavy lift.

If the the reason is only lldb and less than 10 other ebuilds, I feel it
not worth the develop and maintenace time. And if you have only met with
this problem twice, I suggest playing with it by the simplest solution
(via CXXFLAGS) for a while to avoid early optimization.

This is just my honest view on simple vs complex. Given the expertise
you hold in the realm of ABI, introducing a new ABI to maintain might
not be a big deal to you. Then I understand.

Cheers,
Benda

Attachment: pgpiPL6Z_CKNV.pgp
Description: PGP signature

Reply via email to