Re: Fedora 33 System-Wide Change proposal: CompilerPolicy Change

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2020-06-05 at 21:49 +0200, Jakub Jelinek wrote:
> On Fri, Jun 05, 2020 at 01:36:37PM -0600, Jeff Law wrote:
> > > On Thu, 2020-06-04 at 16:30 -0400, Igor Raits wrote:
> > > ...
> > > 
> > > Sadly some upstreams insist on clang just because they like it more,
> > > without any technical reason. The question that comes to my mind:
> > > Should we still try to convince upstreams to use GCC in such cases or
> > > not?
> > It happens (choosing Clang because they like it) and while we can (and have)
> > engaged upstreams on this topic and I suspect we will continue to do so in some
> > cases.
> > 
> > But in the end I think we still have to respect the upstream project's choices,
> > even if it's just because they like Clang/LLVM more than GCC.
> 
> Why?  Shouldn't the Fedora maintainers be able to decide this?  If they have been
> using GCC for years and it hasn't been an obstackle for them, why should
> they switch?
Maintainers aren't static and when the maintainer chooses to go a different
direction than upstream, then there's a cost to be paid.  While it may work for a
particular maintainer to do something different for their package, what about the
poor person who takes the package over when the original maintainer leaves or
someone who has to pick it up to deal with a CVE while the maintainer is on PTO. 

Not everyone is as toolchain savvy as you, or is able to understand the intent of
code as well, or is likely to have the longevity you've had, etc.  You're at a
level that most developers will never achieve in their career.  Think about folks
that are less experienced, or with fewer natural gifts, etc and sometimes you
come up with different answers.

Conceptually, IHMO, packages in Fedora should be as close to upstream as
possible.  Toolchain selection is a piece of that.  The major exception in my
mind is flag selection, particularly due to the need to enforce consistent
security hardening, distro-wide optimizations, or ISA selection to ensure the
bits run everywhere they're supposed to.



> If I understand the LO case, it is just that LO sometimes uses the Skia
> library which is written by Google and Google likes compiler monoculture and
> is using heavily #ifdef __clang__ in it and using the clang variants of the
> generic vectors guarded by that, and as fallback just doesn't use simd.
> I believe Honza Hubicka had quite some changes for Skia, not sure if they went
> upstream already or not.
> But the maintainers should be able to choose, build just Skia with clang and
> rest of LO with GCC, or everything with GCC and with help from us get Skia
> into shape for better portability (that would be ideal, but of course can
> mean more hopefully one time work), or build all of it with Clang/LLVM.
Again, I'd fall back to the "what does upstream do".  DOing something different
should require strong technical justification and none of the stuff I've seen
discussed around LO, Firefox or Chromium would meet that bar IMHO.

jeff
> 
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux