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 -- [email protected]
> To unsubscribe send an email to [email protected]
> 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/[email protected]
>
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
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/[email protected]