* lib/gdb.exp (build_id_debug_filename_get): Improve check for
authorMark Kettenis <kettenis@gnu.org>
Sun, 9 Sep 2007 22:25:31 +0000 (22:25 +0000)
committerMark Kettenis <kettenis@gnu.org>
Sun, 9 Sep 2007 22:25:31 +0000 (22:25 +0000)
build-id.

gdb/testsuite/ChangeLog
gdb/testsuite/lib/gdb.exp

index a6536ac..f999c0c 100644 (file)
@@ -1,5 +1,8 @@
 2007-09-10  Mark Kettenis  <kettenis@gnu.org>
 
+       * lib/gdb.exp (build_id_debug_filename_get): Improve check for
+       build-id.
+
        * lib/gdb.exp (gdb_compile): OpenBSD doesn't need -dl, and doesn't
        know about $ORIGIN.  Calculate output dir from $dest instead of
        using ${objdir}/{$subdir}.
index 5629762..48b62f4 100644 (file)
@@ -2491,7 +2491,14 @@ proc separate_debug_filename { exec } {
 # Return "" if no build-id found.
 proc build_id_debug_filename_get { exec } {
     set tmp "${exec}-tmp"
-    exec objcopy -j .note.gnu.build-id -O binary $exec $tmp
+    set objcopy_program [transform objcopy]
+
+    set result [catch "exec $objcopy_program -j .note.gnu.build-id -O binary $exec $tmp" output]
+    verbose "result is $result"
+    verbose "output is $output"
+    if {$result == 1} {
+       return ""
+    }
     set fi [open $tmp]
     # Skip the NOTE header.
     read $fi 16