patches/strace/4.5.19/100-autoreconf.patch
author "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
Wed Jun 08 15:47:43 2011 +0200 (2011-06-08)
changeset 2508 9e2761e59a75
permissions -rw-r--r--
debug/cross-gdb: check host dependencies

Cross-gdb depends on expat and python. If either is missing, cross-gdb will
build successfully, but lacking some features.

Especially, if expat is missing, cross-gdb will be unable to parse the target
description, which may lead to runtime malfunctions and the following GDB
warning:
"Can not parse XML target description; XML support was disabled at compile time"

Hence, expat should be considered mandatory.

On the other hand, the features missing without python are not critical, so
python should not be considered mandatory.

This patch does the following:
- At configure time, warn the user if either expat or python is missing.
- In menuconfig, disable the static build options regarding cross-gdb if no
static version of expat is available, and disable cross-gdb if expat is
missing.

Signed-off-by: "Benoît THÉBAUDEAU" <benoit.thebaudeau@advansee.com>
[yann.morin.1998@anciens.enib.fr: add comment for impossible static cross-gdb]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 diff -durN strace-4.5.19.orig/configure strace-4.5.19/configure
     2 --- strace-4.5.19.orig/configure	2009-10-21 19:41:11.000000000 +0200
     3 +++ strace-4.5.19/configure	2009-10-28 18:47:18.000000000 +0100
     4 @@ -5773,6 +5773,73 @@
     5  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
     6  /* end confdefs.h.  */
     7  
     8 +echo "$as_me:$LINENO: checking for statfs64 in sys/(statfs|vfs).h" >&5
     9 +echo $ECHO_N "checking for statfs64 in sys/(statfs|vfs).h... $ECHO_C" >&6
    10 +if test "${ac_cv_type_statfs64+set}" = set; then
    11 +  echo $ECHO_N "(cached) $ECHO_C" >&6
    12 +else
    13 +  cat >conftest.$ac_ext <<_ACEOF
    14 +/* confdefs.h.  */
    15 +_ACEOF
    16 +cat confdefs.h >>conftest.$ac_ext
    17 +cat >>conftest.$ac_ext <<_ACEOF
    18 +/* end confdefs.h.  */
    19 +#ifdef LINUX
    20 +#include <linux/types.h>
    21 +#include <sys/statfs.h>
    22 +#else
    23 +#include <sys/vfs.h>
    24 +#endif
    25 +int
    26 +main ()
    27 +{
    28 +struct statfs64 st;
    29 +  ;
    30 +  return 0;
    31 +}
    32 +_ACEOF
    33 +rm -f conftest.$ac_objext
    34 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
    35 +  (eval $ac_compile) 2>conftest.er1
    36 +  ac_status=$?
    37 +  grep -v '^ *+' conftest.er1 >conftest.err
    38 +  rm -f conftest.er1
    39 +  cat conftest.err >&5
    40 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    41 +  (exit $ac_status); } &&
    42 +	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
    43 +  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
    44 +  (eval $ac_try) 2>&5
    45 +  ac_status=$?
    46 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    47 +  (exit $ac_status); }; } &&
    48 +	 { ac_try='test -s conftest.$ac_objext'
    49 +  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
    50 +  (eval $ac_try) 2>&5
    51 +  ac_status=$?
    52 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    53 +  (exit $ac_status); }; }; then
    54 +  ac_cv_type_statfs64=yes
    55 +else
    56 +  echo "$as_me: failed program was:" >&5
    57 +sed 's/^/| /' conftest.$ac_ext >&5
    58 +
    59 +ac_cv_type_statfs64=no
    60 +fi
    61 +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
    62 +fi
    63 +
    64 +echo "$as_me:$LINENO: result: $ac_cv_type_statfs64" >&5
    65 +echo "${ECHO_T}$ac_cv_type_statfs64" >&6
    66 +if test "$ac_cv_type_statfs64" = yes
    67 +then
    68 +
    69 +cat >>confdefs.h <<\_ACEOF
    70 +#define HAVE_STATFS64 1
    71 +_ACEOF
    72 +
    73 +fi
    74 +
    75  
    76  int
    77  main ()