(In reply to Egbert Eich from comment #2) > Ok, static libraries require the -ffat-lto-objects on the compiler command > line when doing LTO builds. > > Easiest solution: expand the _lto_cflags definition: > > %if "%{?_lto_cflags}" != "" > %global _lto_cflags %{_lto_cflags} -ffat-lto-objects > %endif Yes, that's the common approach: https://en.opensuse.org/openSUSE:LTO#Static_libraries > > If we'd shipped the object directly in the RPM this problem would have > occurred immediately as the object would have been subject to stripping > during install post-processing. In this case, the objects would not have > destroyed reproducibility. > Since this would have caused all sorts of warnings, the entire test suite > was wrapped in a tar ball which we extract when installing the package. Yes, stripping of LTO byte-code happens automatically and is done with the following script: https://github.com/openSUSE/brp-check-suse/blob/master/brp-15-strip-debug