patches/strace/4.5.18/100-autoreconf.patch
author Johannes Stezenbach <js@sig21.net>
Tue Oct 30 00:22:25 2012 +0000 (2012-10-30)
changeset 3097 5c67476c7342
permissions -rw-r--r--
scripts/functions: fix endless loop in debug-shell with IO redirection

CT_DEBUG_INTERACTIVE is disabled when stdin, stdout or
stderr are redirected, but the check is only done at
the start of the build and doesn't catch when individual
build commands use redirection. When stdin is redirected
it will cause the debug shell to exit immediately, causing
and endless loop. Thus, save the stdin/our/err file handles
and restore them before invoking the debug shell.

Signed-off-by: Johannes Stezenbach <js@sig21.net>
Message-Id: <20121030102225.GA8303@sig21.net>
Patchwork-Id: 195409
     1 diff -dur strace-4.5.16.orig/configure strace-4.5.16/configure
     2 --- strace-4.5.16.orig/configure	2007-01-11 23:23:33.000000000 +0100
     3 +++ strace-4.5.16/configure	2007-07-14 19:18:43.000000000 +0200
     4 @@ -5808,6 +5777,73 @@
     5 
     6  fi
     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  { echo "$as_me:$LINENO: checking return type of signal handlers" >&5
    77  echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6; }