Comment 16 for bug 669641

Revision history for this message
Peter Petrakis (peter-petrakis) wrote :

Building against precise is interesting, at first we thought (ayan and myself) that
we were modifying the same object twice which results in an error. To remedy
that, sort -u was added to the processing loop. After another precise build
with that precaution we get this failure.

  MKDIR /home/ppetraki/ubuntu-precise/debian/linux-image-3.2.0-26-generic-dbgsym/usr/lib/debug/lib/firmware/yam
  INSTALL debian/linux-image-3.2.0-26-generic-dbgsym/usr/lib/debug/lib/firmware/yam/1200.bin
  INSTALL debian/linux-image-3.2.0-26-generic-dbgsym/usr/lib/debug/lib/firmware/yam/9600.bin
  DEPMOD 3.2.0-26-generic
make[1]: Leaving directory `/home/ppetraki/ubuntu-precise'
# Add .gnu_debuglink sections to each stripped .ko
# pointing to unstripped verson
find /home/ppetraki/ubuntu-precise/debian/linux-image-3.2.0-26-generic -name '*.ko' | sed 's|/home/ppetraki/ubuntu-precise/debian/linux-image-3.2.0-26-generic||'| sort -u | while read module ; do \
  objcopy \
   --add-gnu-debuglink=/home/ppetraki/ubuntu-precise/debian/linux-image-3.2.0-26-generic-dbgsym/usr/lib/debug/$module \
   /home/ppetraki/ubuntu-precise/debian/linux-image-3.2.0-26-generic/$module; \
 done
objcopy:/home/ppetraki/ubuntu-precise/debian/linux-image-3.2.0-26-generic//lib/modules/3.2.0-26-generic/initrd/sttHRG8l: cannot fill debug link section `/home/ppetraki/ubuntu-precise/debian/linux-image-3.2.0-26-generic-dbgsym/usr/lib/debug//lib/modules/3.2.0-26-generic/initrd/vesafb.ko': No such file or directory
make: *** [install-generic] Error 1

There is no "initrd" dir in the debug symbols tree

on an installed system...
root@ubuntu:~# find /usr/lib/debug -name vesafb.ko
/usr/lib/debug/lib/modules/3.2.0-23-generic/kernel/drivers/video/vesafb.ko

back to the build.

./debian/build/build-generic/drivers/video/vesafb.ko
./debian/linux-image-3.2.0-26-generic-dbgsym/usr/lib/debug/lib/modules/3.2.0-26-generic/kernel/drivers/video/vesafb.ko
./debian/linux-image-3.2.0-26-generic/lib/modules/3.2.0-26-generic/kernel/drivers/video/vesafb.ko
./debian/linux-image-3.2.0-26-generic/lib/modules/3.2.0-26-generic/initrd/vesafb.ko

ppetraki@tangerine:~/ubuntu-precise$ cmp ./debian/linux-image-3.2.0-26-generic/lib/modules/3.2.0-26-generic/kernel/drivers/video/vesafb.ko ./debian/linux-image-3.2.0-26-generic/lib/modules/3.2.0-26-generic/initrd/vesafb.ko
ppetraki@tangerine:~/ubuntu-precise$ echo $?
0

Perhaps we should attempt this sections update earlier in the build? Or we may have to get smarter
about evaluating our destination arg for --add-gnu-debuglink=${...}.