patches/ltrace/0.5.3/120-debian-ltrace_0.5.3-2.patch
author Anthony Foiani <anthony.foiani@gmail.com>
Thu May 19 23:09:43 2011 +0200 (2011-05-19)
branch1.11
changeset 2465 5f98b7a90fbc
permissions -rw-r--r--
complibs/ppl: fix 0.11-0.11.2 to compile with --disable-shared

PPL 0.11 (through 0.11.2) had a small bug where it still tried to build
and test its Java interface even when shared libraries are disabled.
Since that's exactly what ct-ng does, it explodes.

This is the patch from the PPL authors (see final link below).

More information can be found in these messages/threads:

Anthony's initial report and analysis with Yann:
http://www.cygwin.com/ml/crossgcc/2011-05/msg00046.html

Ron Flory hit the same problem:
http://www.cygwin.com/ml/crossgcc/2011-05/msg00054.html

Anthony's report to the ppl-devel list:
http://www.cs.unipr.it/pipermail/ppl-devel/2011-May/017450.html

Roberto's reply with a link to the fix in the PPL git repo:
http://www.cs.unipr.it/pipermail/ppl-devel/2011-May/017455.html

Signed-Off-By: Anthony Foiani <anthony.foiani@gmail.com>
(transplanted from 139b85d70b623e51f7585e7c64ecb8c6a6cf4567)
     1 Debian patch courtesy of the Debian ltrace maintainer Juan Cespedes <cespedes@debian.org>
     2 
     3 --- ltrace-0.5.3.orig/sysdeps/linux-gnu/breakpoint.c
     4 +++ ltrace-0.5.3/sysdeps/linux-gnu/breakpoint.c
     5 @@ -6,8 +6,6 @@
     6  #include "common.h"
     7  #include "arch.h"
     8  
     9 -static unsigned char break_insn[] = BREAKPOINT_VALUE;
    10 -
    11  #ifdef ARCH_HAVE_ENABLE_BREAKPOINT
    12  extern void arch_enable_breakpoint(pid_t, Breakpoint *);
    13  void
    14 @@ -20,6 +18,9 @@
    15  	arch_enable_breakpoint(pid, sbp);
    16  }
    17  #else
    18 +
    19 +static unsigned char break_insn[] = BREAKPOINT_VALUE;
    20 +
    21  void
    22  enable_breakpoint(pid_t pid, Breakpoint *sbp) {
    23  	unsigned int i, j;
    24 --- ltrace-0.5.3.orig/sysdeps/linux-gnu/arm/breakpoint.c
    25 +++ ltrace-0.5.3/sysdeps/linux-gnu/arm/breakpoint.c
    26 @@ -24,10 +24,7 @@
    27  
    28  #include <sys/ptrace.h>
    29  #include "config.h"
    30 -#include "arch.h"
    31 -#include "options.h"
    32 -#include "output.h"
    33 -#include "debug.h"
    34 +#include "common.h"
    35  
    36  void
    37  arch_enable_breakpoint(pid_t pid, Breakpoint *sbp) {
    38 @@ -59,8 +56,6 @@
    39  void
    40  arch_disable_breakpoint(pid_t pid, const Breakpoint *sbp) {
    41  	unsigned int i, j;
    42 -	const unsigned char break_insn[] = BREAKPOINT_VALUE;
    43 -	const unsigned char thumb_break_insn[] = THUMB_BREAKPOINT_VALUE;
    44  
    45  	debug(1, "arch_disable_breakpoint(%d,%p)", pid, sbp->addr);
    46  
    47 --- ltrace-0.5.3.orig/sysdeps/linux-gnu/ia64/plt.c
    48 +++ ltrace-0.5.3/sysdeps/linux-gnu/ia64/plt.c
    49 @@ -1,4 +1,5 @@
    50  #include <gelf.h>
    51 +#include <sys/ptrace.h>
    52  #include "common.h"
    53  
    54  /* A bundle is 128 bits */
    55 --- ltrace-0.5.3.orig/sysdeps/linux-gnu/ia64/breakpoint.c
    56 +++ ltrace-0.5.3/sysdeps/linux-gnu/ia64/breakpoint.c
    57 @@ -6,10 +6,7 @@
    58  
    59  #include <sys/ptrace.h>
    60  #include <string.h>
    61 -#include "arch.h"
    62 -#include "options.h"
    63 -#include "output.h"
    64 -#include "debug.h"
    65 +#include "common.h"
    66  
    67  static long long
    68  extract_bit_field(char *bundle, int from, int len) {
    69 --- ltrace-0.5.3.orig/sysdeps/linux-gnu/ia64/regs.c
    70 +++ ltrace-0.5.3/sysdeps/linux-gnu/ia64/regs.c
    71 @@ -7,7 +7,6 @@
    72  #include <asm/rse.h>
    73  
    74  #include <stddef.h>
    75 -#include "debug.h"
    76  #include "common.h"
    77  
    78  void *