patches/dmalloc/5.5.2/160-strdup_macro.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Tue Oct 16 20:57:44 2012 +0200 (2012-10-16)
changeset 3079 37831a33e07e
parent 569 147a29d2e81f
permissions -rw-r--r--
kernel/linux: fix using custom location

Currently, extract and patch are skipped as thus:
- using a custom directory of pre-installed headers
- a correctly named directory already exists

Otherwise, extract and patch are done.

The current second condition is wrong, because it allows the following
sequence to happen:
- a non-custom kernel is used
- a previous build only partially extracted the non-custom sources
- that p[revious build broke during extraction (eg. incomplete tarball...)
- a subsequent build will find a properly named directory, and will
thus skip extract and patch, which is wrong

Fix that by following the conditions in this table:

Type | Extract | Patch
----------------------+---------+-------
Pre-installed headers | N | N
custom directory | N | N
custom tarball | Y | N
mainstream tarball | Y | Y

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: David Holsgrove <david.holsgrove@xilinx.com>
     1 --- dmalloc-5.5.2.orig/configure	2008-06-17 13:10:09.000000000 +0200
     2 +++ dmalloc-5.5.2/configure	2008-06-17 13:11:25.000000000 +0200
     3 @@ -4691,8 +4691,35 @@
     4  echo "$as_me:$LINENO: checking strdup macro" >&5
     5  echo $ECHO_N "checking strdup macro... $ECHO_C" >&6
     6  if test "$cross_compiling" = yes; then
     7 -  ac_cv_strdup_macro=no
     8 +  cat >conftest.$ac_ext <<_ACEOF
     9 +/* confdefs.h */
    10 +_ACEOF
    11 +cat confdefs.h >>conftest.$ac_ext
    12 +cat >>conftest.$ac_ext <<_ACEOF
    13 +/* end confdefs.h.  */
    14 +
    15 +#if HAVE_STDLIB_H
    16 +#  include <string.h>
    17 +#endif
    18 +
    19 +#ifndef strdup
    20 +       choke me
    21 +#endif
    22  
    23 +main() { exit(0); }
    24 +
    25 +_ACEOF
    26 +rm -f conftest.o conftest.obj
    27 +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
    28 +  (eval $ac_compile) 2>&5
    29 +  ac_status=$?
    30 +  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    31 +  (exit $ac_status); }; then
    32 +  ac_cv_strdup_macro=yes
    33 +else
    34 +  ac_cv_strdup_macro=no
    35 +fi
    36 +  
    37  else
    38    cat >conftest.$ac_ext <<_ACEOF
    39  /* confdefs.h.  */