* Jeff Law:
On 1/2/21 3:13 AM, Florian Weimer wrote:
> * Ben Cotton:
>
>> To ensure that we can identify packages that need the opt-in now and
>> in the future, the plan is to pass to brp-strip-lto a flag indicating
>> whether or not the package has opted into -ffat-lto-objects. If
>> brp-strip-lto finds .o/.a files, but the package has not opted into
>> -ffat-lto-objects, then brp-strip-lto would signal an error.
> And presumably fail the build?
Yes. The point here is to ensure that if the build installs .o/.a
files
that it must have opted into -ffat-lto-objects so that we don't end up
with useless .o/.a files in our binary RPM packages.
Makes sense.
> A lot of the existing RPM post-processing steps detect, report,
and
> ignore errors because the generated RPM package might still be partially
> useful.
True, but ignoring the error in this case runs the very real risk that a
package could install a .o/.a file with no code/symbols. That in turn
can cause downstream FTBFS errors in other packages and all kinds of
headaches on developer systems. Failing the build here seems much safer.
Contrast to ignoring a dwz error. The resulting binary RPMs are still
very much usable, the debuginfo packages are just larger than is
strictly necessary.
The downside is that toolchain bugs tend to go unnoticed and aren't
fixed as a result.
Thanks,
Florian
--
Red Hat GmbH,
https://de.redhat.com/ , Registered seat: Grasbrunn,
Commercial register: Amtsgericht Muenchen, HRB 153243,
Managing Directors: Charles Cachera, Brian Klemm, Laurie Krebs, Michael O'Neill