From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20041228 Firefox/1.0 Fedora/1.0-8 Description of problem: /usr/src/debug/gcc-3.4.3-20050210/obj-i386-redhat-linux/i386-redhat-linux/libstdc++-v3/include contains broken links to files in /usr/src/build/520092-i386/BUILD/gcc-3.4.3-20050210/libstdc++-v3/include Version-Release number of selected component (if applicable): gcc-debuginfo-3.4.3-19 How reproducible: Always
I believe this needs to be fixed in /usr/lib/rpm/find-debuginfo.sh, because I guess gcc is not the only package that has absolute symlinks in its build dir and even if it is a relative symlink to otherwise unreferenced file, *-debuginfo package might contain just the symlink and not what it actually points to. I think there are 2 possible solutions, one is replace -pd0m with -pd0mL in find-debuginfo.sh (and optionally run hardlink on the ${RPM_BUILD_ROOT}/usr/src/debug tree to kill duplicates), or after copying the files keep cycling through the symlinks in that tree and for absolute ones to $RPM_BUILD_ROOT replace them with symlinks into /usr/src/debug/* and copy whatever they point to into the tree as well.
I've added the L option to tpm cvs, should be in rpm-4.4.5-0.10 when built. The real problem with debuginfo is the rewrite of paths in elf headers without reallocating the header, thereby preventing rpmbuild from producing -debuginfo packages when configured on build paths shorter than /usr/src/debug. The eventual fix for that will be to stop producing -debuginfo packages with rpmbuild.