On 01/13/2020 06:20 AM, Vít Ondruch wrote: > > Dne 11. 01. 20 v 5:46 Tom Stellard napsal(a): >> On 01/08/2020 11:28 PM, Miro Hrončok wrote: >>> On 08. 01. 20 23:47, Tom Stellard wrote: >>>> 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. >>> /usr/lib/rpm/macros has: >>> >>> %___build_pre \ >>> RPM_SOURCE_DIR=\"%{u2p:%{_sourcedir}}\"\ >>> RPM_BUILD_DIR=\"%{u2p:%{_builddir}}\"\ >>> RPM_OPT_FLAGS=\"%{optflags}\"\ >>> RPM_LD_FLAGS=\"%{?build_ldflags}\"\ >>> RPM_ARCH=\"%{_arch}\"\ >>> RPM_OS=\"%{_os}\"\ >>> RPM_BUILD_NCPUS=\"%{_smp_build_ncpus}\"\ >>> export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_LD_FLAGS RPM_ARCH RPM_OS RPM_BUILD_NCPUS RPM_LD_FLAGS\ >>> RPM_DOC_DIR=\"%{_docdir}\"\ >>> export RPM_DOC_DIR\ >>> RPM_PACKAGE_NAME=\"%{NAME}\"\ >>> RPM_PACKAGE_VERSION=\"%{VERSION}\"\ >>> RPM_PACKAGE_RELEASE=\"%{RELEASE}\"\ >>> export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE\ >>> LANG=C\ >>> export LANG\ >>> unset CDPATH DISPLAY ||:\ >>> %{?buildroot:RPM_BUILD_ROOT=\"%{u2p:%{buildroot}}\"\ >>> export RPM_BUILD_ROOT}\ >>> %{?_javaclasspath:CLASSPATH=\"%{_javaclasspath}\"\ >>> export CLASSPATH}\ >>> >>> PKG_CONFIG_PATH=\"${PKG_CONFIG_PATH}:%{_libdir}/pkgconfig:%{_datadir}/pkgconfig\"\ >>> export PKG_CONFIG_PATH\ >>> CONFIG_SITE=${CONFIG_SITE:-NONE}\ >>> export CONFIG_SITE\ >>> \ >>> %{verbose:set -x}\ >>> umask 022\ >>> cd \"%{u2p:%{_builddir}}\"\ >>> >>> >>> You should b able to expand (redefine anywhere else) this macro to set the variables you need or call %set_build_flags. >>> >> I did another mass rebuild, this time setting the CC and CXX environment variables >> in __build_pre as you suggested. The numbers look a little better now: >> >> Packages Built: 4271 >> Built with clang: 3355 >> Built with gcc: 916 >> >> cc or c++ was invoked by about 50 packages. > > > I just wonder, are there builds done in any particular order? E.g. build > Ruby prior any rubygem- package, build Python prior python- packages, etc. > No, I'm just building them all with mock and not into a buildroot. I know this causes an issue with perl and python packages, because they inherit their cflags from the cflags used to build the interpreter. -Tom > > Vít > _______________________________________________ > 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