patches/binutils/2.20.1/270-better_file_error.patch
author "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
Wed May 25 20:23:48 2011 +0200 (2011-05-25)
branch1.11
changeset 2552 cc285cc98e65
parent 1700 eccc37dd1a25
permissions -rw-r--r--
debug/gdb: fix runtime sysroot

This patch sets the runtime sysroot to fix the following GDB warning:
"Unable to find dynamic linker breakpoint function.
GDB will be unable to debug shared library initializers
and track explicitly loaded dynamic code."

The sysroot can later be changed within gdb with the `set sysroot`
command if necessary.

Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
(transplanted from 7690196856ce4a4700d1887cc3adf80acc627c52)
jocke@1700
     1
#!/bin/sh -e
jocke@1700
     2
## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com>
jocke@1700
     3
##
jocke@1700
     4
## All lines beginning with `## DP:' are a description of the patch.
jocke@1700
     5
## DP: Specify which filename is causing an error if the filename is a
jocke@1700
     6
## DP: directory. (#45832)
jocke@1700
     7
jocke@1700
     8
if [ $# -ne 1 ]; then
jocke@1700
     9
    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
jocke@1700
    10
    exit 1
jocke@1700
    11
fi
jocke@1700
    12
jocke@1700
    13
[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
jocke@1700
    14
patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
jocke@1700
    15
jocke@1700
    16
case "$1" in
jocke@1700
    17
       -patch) patch $patch_opts -p1 < $0;;
jocke@1700
    18
       -unpatch) patch $patch_opts -p1 -R < $0;;
jocke@1700
    19
        *)
jocke@1700
    20
                echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
jocke@1700
    21
                exit 1;;
jocke@1700
    22
esac
jocke@1700
    23
jocke@1700
    24
exit 0
jocke@1700
    25
jocke@1700
    26
@DPATCH@
jocke@1700
    27
diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c
yann@2088
    28
yann@2088
    29
diff -durN binutils-2.20.1.orig/bfd/opncls.c binutils-2.20.1/bfd/opncls.c
yann@2088
    30
--- binutils-2.20.1.orig/bfd/opncls.c	2010-01-14 11:48:22.000000000 +0100
yann@2088
    31
+++ binutils-2.20.1/bfd/opncls.c	2010-08-17 19:32:23.000000000 +0200
yann@2088
    32
@@ -183,6 +183,13 @@
jocke@1700
    33
 {
jocke@1700
    34
   bfd *nbfd;
jocke@1700
    35
   const bfd_target *target_vec;
jocke@1700
    36
+  struct stat s;
jocke@1700
    37
+
jocke@1700
    38
+  if (stat (filename, &s) == 0)
jocke@1700
    39
+    if (S_ISDIR(s.st_mode)) {
jocke@1700
    40
+      bfd_set_error (bfd_error_file_not_recognized);
jocke@1700
    41
+      return NULL;
jocke@1700
    42
+    }
jocke@1700
    43
 
jocke@1700
    44
   nbfd = _bfd_new_bfd ();
jocke@1700
    45
   if (nbfd == NULL)