On 12/23/2019 11:59 AM, Tom Stellard wrote: > On 12/21/2019 02:30 PM, Tomasz Kłoczko wrote: >> >> >> On Sat, 21 Dec 2019 at 00:37, Neal Gompa <ngompa13@xxxxxxxxx <mailto:ngompa13@xxxxxxxxx>> wrote: >> [..] >> >> I believe it's also used by the %cmake and %meson macros. >> >> >> Yep. >> Look on the output of the “rpm -E %cmake” and you will find that to switch to other C and C++ compilers all what you need to do is redefine %__cc and %__cxx macros, > > I'm not seeing this, at least with the current rawhide build, but I > patched cmake to enable this in the latest mass rebuild that I'm doing. > I'll post numbers on how effective using __cc and __cxx are once it's > complete. > I completed a rebuild of all rawhide with the following modifications: 1. Added this to %set_build_flags CC="${CC:-%{__cc}}" ; export CC ; \ CXX="${CXX:-%{__cxx}}"; export CXX ; \ 2. Added %set_build_flags to %cmake macro 3. Remove -fstack-clash-protection and add -Qunused-arguments flags to %optflags 4. Set these macros: config_opts['macros']['%__cc'] = "clang" config_opts['macros']['%__cxx'] = "clang++" config_opts['macros']['%__cpp'] = "clang-cpp" config_opts['macros']['%build_cflags'] = optflags config_opts['macros']['%build_cxxflags'] = optflags Here are the results: Packages Built: 4228 Built with clang: 2695 Built with gcc: 1533 Based on grep'ing logs, around 320 of the packages built with gcc invoke gcc using cc or c++. It's hard to know the exact number though, because I'm not sure if all packages echo their build steps and also my grep expressions may not have caught everything. I suspect that if I can find some way to set the CC and CXX environment variables for all builds, not just ones using autoconf, cmake or meson, that might help cut down on the number of packages that still use gcc. I'm just not quite sure how to implement this yet, but I'm looking into it. -Tom > -Tom > >> The same is with %configure and %meson, >> >> In other words you can switch NOW from non-root account to other compiler without execution update-alternatives from root. >> >> In other words this proposal is pointless. >> >> kloczek >> -- >> -- >> Tomasz Kłoczko | Tel: 0774 1209067 | LinkedIn: *http://lnkd.in/FXPWxH* > _______________________________________________ > 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 > _______________________________________________ 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