Bug 1916921

Summary: LTO Build Improvements
Product: [Fedora] Fedora Reporter: Ben Cotton <bcotton>
Component: Changes TrackingAssignee: Jeff Law <law>
Status: CLOSED DEFERRED QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 36CC: bcotton, kwalker, mattdm, mjg, steubens, vondruch, zbyszek
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-11-06 11:00:50 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1982279    

Description Ben Cotton 2021-01-15 20:17:25 UTC
This is a tracking bug for Change: LTO Build Improvements
For more details, see: https://fedoraproject.org/wiki/Changes/LTOBuildImprovements

Currently all packages that are not opted out of LTO include -ffat-lto-objects in their build flags.  This proposal would remove -ffat-lto-objects from the default LTO flags and only use it for packages that actually need it.

Comment 1 Matthew Miller 2021-04-30 20:24:58 UTC
This has landed. https://src.fedoraproject.org/rpms/fedora-release/pull-request/181

Comment 2 Vít Ondruch 2021-08-12 16:06:56 UTC
(In reply to Matthew Miller from comment #1)
> This has landed.
> https://src.fedoraproject.org/rpms/fedora-release/pull-request/181

It does not seem to be related. Are you sure you referenced the PR in the right ticket?

Comment 3 steubens 2021-08-25 06:01:53 UTC
not sure this belongs here, but renderdoc with lto broke earlier in a way that isn't noticeable without running it

https://bugzilla.redhat.com/show_bug.cgi?id=1955122

unsure if -ffat-lto-objects makes it work

Comment 4 Kyle Walker 2021-10-12 19:36:49 UTC
@mattdm

That update was for rhbz1944428 right? I don't think this change has landed.

Comment 5 Michael J Gruber 2021-10-20 10:22:38 UTC
I'm confused about the status of this change:

https://fedoraproject.org/wiki/Changes/LTOBuildImprovements says it's accepted for F35, links to a FesCo ticket which accepted it for F34, and that ticket links to an unrelated devel-ml-post.

Also, the change mentions "The feature owner (Jeff Law) will need to settle on a suitable RPM macro to indicate an opt-in" and I see no such macro there. (I can change build flags myself, of course.)

The bug here references an unrelated dist-git PR.

This adds quite some confusion to a topic which can be confusing as is already for us poor little packagers who are not build chain experts.

Maybe, as a starter, document (in that change) the location of the default flags or how to check them.

Comment 6 Michael J Gruber 2021-10-20 10:32:51 UTC
OK, so by https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/I3FP5V56NKCU24XDJDCMIOFQ2B6YQLMY/ the change owner left RH and the change is not implemented.

I take it that means: We build with fat LTO everywhere and there is no special opt-in or opt-out other than adding build flags directly.

Do we have "%{_lto_cflags}" or is that a SuSE-only thing?

Comment 7 Ben Cotton 2022-02-08 21:07:43 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 36 development cycle.
Changing version to 36.