Bug 1150782

Summary: rpmlint runs LTO checks even when LTO is disabled in the spec file
Product: [openSUSE] openSUSE Tumbleweed Reporter: Rosanne DiMesio <dimesio>
Component: OtherAssignee: Dirk Mueller <dmueller>
Status: NEW --- QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: alynx.zhou, normand
Version: Current   
Target Milestone: ---   
Hardware: x86-64   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Rosanne DiMesio 2019-09-14 12:37:45 UTC
Wine does not build with LTO enabled. I have %define _lto_cflags %{nil} in my spec file, and this has worked in the past to disable it, but my Tumbleweed builds on the OBS are suddenly failing at the end with lto errors: 

wine-devel.x86_64: E: lto-no-text-in-archive (Badness: 10000) /usr/lib64/wine/libadsiid.a
[  993s] wine-devel.x86_64: E: lto-no-text-in-archive (Badness: 10000) /usr/lib64/wine/libdmoguids.a
[  993s] wine-devel.x86_64: E: lto-no-text-in-archive (Badness: 10000) /usr/lib64/wine/libdxguid.a
[  993s] wine-devel.x86_64: E: lto-no-text-in-archive (Badness: 10000) /usr/lib64/wine/libmfuuid.a
[  993s] wine-devel.x86_64: E: lto-no-text-in-archive (Badness: 10000) /usr/lib64/wine/libstrmiids.a
[  993s] wine-devel.x86_64: E: lto-no-text-in-archive (Badness: 10000) /usr/lib64/wine/libuuid.a
[  993s] wine-devel.x86_64: E: lto-no-text-in-archive (Badness: 10000) /usr/lib64/wine/libwmcodecdspuuid.a
[  993s] This archive does not contain a non-empty .text section.  The archive was not
[  993s] created with -ffat-lto-objects option.

My project is https://build.opensuse.org/package/show/home:dimesio/wine.

I reported this on the opensuse-buildservice mailing list and was asked to file a bug with the rpmlint package maintainers. (If this is not the correct place, please let me know where I should file it.)
Comment 1 Rosanne DiMesio 2019-09-14 15:00:40 UTC
FYI, I have worked around the issue temporarily by adding a wine-rpmlintrc file to my sources with setBadness('lto-no-text-in-archive', 0) in it.