Hi, On Fri, 2021-04-23 at 20:01 +0200, Jakub Jelinek wrote: > On Fri, Apr 23, 2021 at 11:18:59AM -0400, Ben Cotton wrote: > > The Red Hat tools team believes that LLVM/Clang and GCC should be > > considered equals from > > a Fedora policy standpoint. Selection of one toolchain over the other should be > > driven by the packager's preferences not by Fedora specific policy. > > The only policy restriction should be that the compiler must exist in > > Fedora. > > I'll be probably repeating myself, but the two compilers are known to > be > ABI incompatible in very important ways, none of the > https://bugs.llvm.org/buglist.cgi?quicksearch=42439%2C19909%2C44228%2C12207 > bugs have been touched since last time this was discussed and I'm not > aware > of any ABI compatibility testing between the two compilers. > So if some library packages switch compilers and programs using those > libraries don't or vice versa, this proposal has quite high risks of > introducing hard to debug debugs. So should the policy at least say that this is only allowed for packages that don't provide libraries or other code that might be linked against? > I agree that for open source software and generally for users it is useful > if there are multiple competing implementations, in this case for the > toolchain, and the competition has been IMHO quite fruitful for both GCC and > LLVM over the past years. It is also very useful if open source packages > are made portable or kept portable, so that one can use multiple compilers > to compile them, one can benefit from different diagnostics, instrumentation > etc. But I'm not sure this proposal is a step in the right direction > though, e.g. in the Firefox case that is being used as an example for this > proposal that leads in a completely different direction, a package that has > been formerly portable and supported multiple compilers will turn into a > single compiler only application and will lose its portability. > Google, Apple, BSDs don't really care about toolchain choice and they push > a single toolchain only. I cannot say I like this proposed policy very much. For the packages I work on, elfutils, valgrind, debugedit, etc. we have enough trouble keeping up with gcc versions, new flags, optimizations, etc. I don't think we will have time to debug issues because packages are now also build with another compiler. Leaving the system as a whole in a worse state because of it. I understand there are upstreams which are more aligned with other toolchains, distros or a distribution model where a specific compiler version is mandated. But even if a packages switches compilers it will be the version as packaged in Fedora, and so some porting, testing, etc. (because the version in Fedora will be different anyway) will be necessary. It seem better and more consistent for packages to use the default system compiler (gcc) unless it really cannot be build with it. Cheers, Mark _______________________________________________ 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 Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure