fi
if [ "$srcrpm" != "${srcrpm%.dt5.rpm}" ];then
# The non-.dt5.rpm run will handle both.
- exit 0
+ continue
+ fi
+ if [ "$srcrpm" != "${srcrpm%.dt.rpm}" ];then
+ # Ignore.
+ continue
+ fi
+ if [ ! -e $srcrpm.rpms ];then
+ echo >&2 "! $srcrpm.rpms"
+ continue
+ fi
+ if [ ! -e $srcrpm.dt5.rpm.rpms ];then
+ echo >&2 "! $srcrpm.dt5.rpm.rpms"
+ continue
+ fi
+ if [ -e $srcrpm.dtneeded ];then
+ continue
+ fi
+ if [ -e $srcrpm.rpms.d ];then
+ echo >&2 "! $srcrpm.rpms.d"
+ continue
fi
- test -e $srcrpm.rpms
- test -e $srcrpm.dt5.rpm.rpms
- test ! -e $srcrpm.dtneeded
- test ! -e $srcrpm.rpms.d
t=/tmp/dtneededsizerpms.$$
rm -f $t
mkdir $srcrpm.rpms.d
if [ -z "$(find $dwzrpms $dtrpms -maxdepth 1 -type f)" ];then
popd >/dev/null
rm -rf $srcrpm.rpms.d
- exit 0
+ continue
fi
cd ..
function extract
dwzcommon=0
else
dwzcommon="$(find "$dwzcommonname" -maxdepth 0 -printf "%s")"
+ dwzcommonname="/${dwzcommonname#dwz/}"
+ dwzcommonname2="$(echo "$dwzcommonname"|sed 's/-[^-]*-[^-]*$//')"
+ if [ "$dwzcommonname2" = "$dwzcommonname" ];then
+ echo >&2 "No VR dwzcommon suffix: $dwzcommonname"
+ exit 1
+ fi
+ dwzcommonname="$dwzcommonname2"
echo >>$t "$dwzcommonname isdwzcommon $dwzcommon NA"
fi
pushd dwz >/dev/null
dt=$(find ../dt/$i -maxdepth 0 -printf "%s")
if readelf -WS $i 2>/dev/null|fgrep -q .gnu_debugaltlink;then
if [ $dwzcommon -eq 0 ];then
- echo >&2 Excessive .gnu_debugaltlink: $i
+ echo >&2 "Excessive .gnu_debugaltlink: $i"
exit 1
fi
fi
- echo >>$t "$(echo "$i"|sed 's/\.debug$//') $dwzcommonname $dwz $dt"
+ i="${i#.}"
+ i2="${i#/usr/lib/debug/}"
+ if [ "$i" = "$i2" ];then
+ echo >&2 "No /usr/lib/debug/ prefix: $i"
+ i="$i2"
+ else
+ i="/$i2"
+ fi
+ i2="$(echo "$i"|sed 's/-[^-]*-[^-]*$//')"
+ if [ "$i2" = "$i" ];then
+ echo >&2 "No VR suffix: $i"
+ fi
+ i="$i2"
+ echo "${i%.debug} $dwzcommonname $dwz $dt"|sed 's#^\./#/#' >>$t
done
popd >/dev/null
popd >/dev/null