patches/strace/4.5.17/100-autoreconf.patch
author "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
Fri Jan 27 13:31:16 2012 +0100 (2012-01-27)
changeset 2854 a70abdbfa342
parent 746 b150d6f590fc
permissions -rw-r--r--
complibs/cloog: fix linking with libm

In Ubuntu 11.04 and 11.10, the default options for ld have changed.
--no-copy-dt-needed-entries and --as-needed are now enabled by default, which
causes errors like:

[EXTRA] Checking CLooG/ppl
[DEBUG] ==> Executing: 'make' '-j3' '-s' 'check'
[ALL ] Making check in .
[ALL ] config.status: creating include/cloog/cloog-config.h
[ALL ] config.status: include/cloog/cloog-config.h is unchanged
[ALL ] libtool: link: i686-build_pc-linux-gnu-gcc -Wall -fomit-frame-pointer
-pipe -o cloog cloog.o -L/<snip>/build/static/lib ./.libs/libcloog.a -lm
/<snip>/build/static/lib/libppl_c.a /<snip>/build/static/lib/libpwl.a
/<snip>/build/static/lib/libppl.a /<snip>/build/static/lib/libgmpxx.a
/<snip>/build/static/lib/libgmp.a -lstdc++
[ALL ] /usr/bin/ld: /<snip>/build/static/lib/libppl.a(MIP_Problem.o):
undefined reference to symbol 'sqrt@@GLIBC_2.0'
[ALL ] /usr/bin/ld: note: 'sqrt@@GLIBC_2.0' is defined in DSO
/usr/lib/gcc/i686-linux-gnu/4.6.1/../../../i386-linux-gnu/libm.so so try adding
it to the linker command line
[ALL ] /usr/lib/gcc/i686-linux-gnu/4.6.1/../../../i386-linux-gnu/libm.so:
could not read symbols: Invalid operation
[ALL ] collect2: ld returned 1 exit status
[ERROR] make[2]: *** [cloog] Error 1
[ERROR] make[1]: *** [check-recursive] Error 1

See:
https://wiki.ubuntu.com/NattyNarwhal/ToolchainTransition

This patch fixes these errors by placing '-lm' at the right place on the command
line as libppl requires libm when linking cloog.

Signed-off-by: "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
yann@974
     1
Original patch from gentoo: ../../dev/crosstool-NG/ct-ng.trunk/patches/strace/4.5.17/100-autoreconf.patch
yann@974
     2
-= BEGIN original header =-
yann@428
     3
diff -dur strace-4.5.16.orig/configure strace-4.5.16/configure
yann@974
     4
-= END original header =-
yann@974
     5
diff -durN strace-4.5.17.orig/configure strace-4.5.17/configure
yann@974
     6
--- strace-4.5.17.orig/configure	2008-07-22 02:43:21.000000000 +0200
yann@974
     7
+++ strace-4.5.17/configure	2008-10-24 21:30:13.000000000 +0200
yann@974
     8
@@ -5808,6 +5808,73 @@
yann@974
     9
 
yann@428
    10
 fi
yann@974
    11
 
yann@428
    12
+echo "$as_me:$LINENO: checking for statfs64 in sys/(statfs|vfs).h" >&5
yann@428
    13
+echo $ECHO_N "checking for statfs64 in sys/(statfs|vfs).h... $ECHO_C" >&6
yann@428
    14
+if test "${ac_cv_type_statfs64+set}" = set; then
yann@428
    15
+  echo $ECHO_N "(cached) $ECHO_C" >&6
yann@428
    16
+else
yann@428
    17
+  cat >conftest.$ac_ext <<_ACEOF
yann@428
    18
+/* confdefs.h.  */
yann@428
    19
+_ACEOF
yann@428
    20
+cat confdefs.h >>conftest.$ac_ext
yann@428
    21
+cat >>conftest.$ac_ext <<_ACEOF
yann@428
    22
+/* end confdefs.h.  */
yann@428
    23
+#ifdef LINUX
yann@428
    24
+#include <linux/types.h>
yann@428
    25
+#include <sys/statfs.h>
yann@428
    26
+#else
yann@428
    27
+#include <sys/vfs.h>
yann@428
    28
+#endif
yann@428
    29
+int
yann@428
    30
+main ()
yann@428
    31
+{
yann@428
    32
+struct statfs64 st;
yann@428
    33
+  ;
yann@428
    34
+  return 0;
yann@428
    35
+}
yann@428
    36
+_ACEOF
yann@428
    37
+rm -f conftest.$ac_objext
yann@428
    38
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
yann@428
    39
+  (eval $ac_compile) 2>conftest.er1
yann@428
    40
+  ac_status=$?
yann@428
    41
+  grep -v '^ *+' conftest.er1 >conftest.err
yann@428
    42
+  rm -f conftest.er1
yann@428
    43
+  cat conftest.err >&5
yann@428
    44
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
yann@428
    45
+  (exit $ac_status); } &&
yann@428
    46
+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
yann@428
    47
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
yann@428
    48
+  (eval $ac_try) 2>&5
yann@428
    49
+  ac_status=$?
yann@428
    50
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
yann@428
    51
+  (exit $ac_status); }; } &&
yann@428
    52
+	 { ac_try='test -s conftest.$ac_objext'
yann@428
    53
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
yann@428
    54
+  (eval $ac_try) 2>&5
yann@428
    55
+  ac_status=$?
yann@428
    56
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
yann@428
    57
+  (exit $ac_status); }; }; then
yann@428
    58
+  ac_cv_type_statfs64=yes
yann@428
    59
+else
yann@428
    60
+  echo "$as_me: failed program was:" >&5
yann@428
    61
+sed 's/^/| /' conftest.$ac_ext >&5
yann@428
    62
+
yann@428
    63
+ac_cv_type_statfs64=no
yann@428
    64
+fi
yann@428
    65
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
yann@428
    66
+fi
yann@428
    67
+
yann@428
    68
+echo "$as_me:$LINENO: result: $ac_cv_type_statfs64" >&5
yann@428
    69
+echo "${ECHO_T}$ac_cv_type_statfs64" >&6
yann@428
    70
+if test "$ac_cv_type_statfs64" = yes
yann@428
    71
+then
yann@428
    72
+
yann@428
    73
+cat >>confdefs.h <<\_ACEOF
yann@428
    74
+#define HAVE_STATFS64 1
yann@428
    75
+_ACEOF
yann@428
    76
+
yann@428
    77
+fi
yann@428
    78
+
yann@974
    79
 
yann@428
    80
 { echo "$as_me:$LINENO: checking return type of signal handlers" >&5
yann@428
    81
 echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6; }