patches/ltrace/0.5.3/140-mips.patch
author Titus von Boxberg <titus@v9g.de>
Mon Aug 22 09:26:02 2011 +0200 (2011-08-22)
changeset 2630 f86af11138ea
permissions -rw-r--r--
debug/ltrace: Fix HOST_OS and ar

HOST_OS really is the target OS. Allow setting it for configure
via an environment variable.
libltrace.a should have an index:
Allow ar to be set as an environment variable, and generate
an index in this lib.

Reported-by: "Guylhem Aznar" <crossgcc@guylhem.net>
Signed-off-by: "Titus von Boxberg" <titus@v9g.de>
     1 This patch is courtesy of OpenEmbedded, by Khem Raj <raj.khem@gmail.com>
     2 
     3 http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=b85b779688f0abc389e3c25d06b54de8b86385c1
     4 
     5 Index: ltrace-0.5.3/sysdeps/linux-gnu/mipsel/plt.c
     6 ===================================================================
     7 --- ltrace-0.5.3.orig/sysdeps/linux-gnu/mipsel/plt.c	2009-10-23 23:25:59.292780574 -0700
     8 +++ ltrace-0.5.3/sysdeps/linux-gnu/mipsel/plt.c	2009-10-23 23:26:22.671522220 -0700
     9 @@ -1,4 +1,4 @@
    10 -#include <debug.h>
    11 +#include "debug.h"
    12  #include <gelf.h>
    13  #include <sys/ptrace.h>
    14  #include "common.h"
    15 Index: ltrace-0.5.3/sysdeps/linux-gnu/mipsel/regs.c
    16 ===================================================================
    17 --- ltrace-0.5.3.orig/sysdeps/linux-gnu/mipsel/regs.c	2009-10-23 23:25:59.312777529 -0700
    18 +++ ltrace-0.5.3/sysdeps/linux-gnu/mipsel/regs.c	2009-10-23 23:26:08.190311896 -0700
    19 @@ -4,7 +4,6 @@
    20  #include <sys/types.h>
    21  #include <sys/ptrace.h>
    22  #include <asm/ptrace.h>
    23 -#include <linux/user.h>
    24  
    25  #include "common.h"
    26  #include "mipsel.h"
    27 Index: ltrace-0.5.3/handle_event.c
    28 ===================================================================
    29 --- ltrace-0.5.3.orig/handle_event.c	2009-10-23 23:29:48.780274445 -0700
    30 +++ ltrace-0.5.3/handle_event.c	2009-10-23 23:37:32.260284055 -0700
    31 @@ -573,7 +573,8 @@ handle_breakpoint(Event *event) {
    32  			void *old_addr;
    33  			struct library_symbol *sym= event->proc->callstack[i].c_un.libfunc;
    34  			assert(sym);
    35 -			old_addr = dict_find_entry(event->proc->breakpoints, sym2addr(event->proc, sym))->addr;
    36 +			struct Breakpoint *tbp = dict_find_entry(event->proc->breakpoints, sym2addr(event->proc, sym));
    37 +			old_addr = tbp->addr;
    38  			addr=sym2addr(event->proc,sym);
    39  			assert(old_addr !=0 && addr !=0);
    40  			if(addr != old_addr){