cmake tests fail with new rpm
On Fri, 2017-03-10 at 11:51 -0700, Orion Poplawski wrote:
A cmake build test is failing with the jump in rpm from 184.108.40.206-3.fc26 > 220.127.116.11-7.fc27
The upshot appears to be that an rpm generated by cmake's cpack utility has additional files in it, e.g.:
/usr/lib/.build-id /usr/lib/.build-id/5d /usr/lib/.build-id/5d/a319a6e633c6da1cd98aafe3744adf664d529a
are these to be expected, or are these supposed to be elsewhere?
Good you have a sanity check for this. But those are (now) expected to be there. This is because of the new default setting of the _build_id_links macro (compat):
# Defines how and if build_id links are generated for ELF files. # The following settings are supported: # # - none # No build_id links are generated. # # - alldebug # build_id links are generated only when the __debug_package global is # defined. This will generate build_id links in the -debuginfo package # for both the main file as /usr/lib/debug/.build-id/xx/yyy and for # the .debug file as /usr/lib/debug/.build-id/xx/yyy.debug. # This is the old style build_id links as generated by the original # find-debuginfo.sh script. # # - separate # build_id links are generate for all binary packages. If this is a # main package (the __debug_package global isn't set) then the # build_id link is generated as /usr/lib/.build-id/xx/yyy. If this is # a -debuginfo package (the __debug_package global is set) then the # build_id link is generated as /usr/lib/debug/.build-id/xx/yyy. # # - compat # Same as for "separate" but if the __debug_package global is set then # the -debuginfo package will have a compatibility link for the main # ELF /usr/lib/debug/.build-id/xx/yyy -> /usr/lib/.build-id/xx/yyy %_build_id_links compat
For more background see also: https://fedoraproject.org/wiki/Changes/ParallelInstallableDebuginfo
Specifically this breaks CPackComponentsForAll-RPM-IgnoreGroup and RunCMake.CPack_RPM. See http://kojipkgs.fedoraproject.org/work/tasks/5505/18305505/build.log for full build log.