[PATCH] valgrind: don't enable largefile support unconditionally on uClibc

uClibc can be compiled without largefile support (and errors out if
_FILE_OFFSET_BITS is set to 64), so don't define it if that combination
is detected.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>

Index: valgrind-3.7.0/coregrind/m_initimg/initimg-linux.c
===================================================================
--- valgrind-3.7.0.orig/coregrind/m_initimg/initimg-linux.c	2011-10-26 23:24:43.000000000 +0200
+++ valgrind-3.7.0/coregrind/m_initimg/initimg-linux.c	2011-12-22 14:53:12.798185055 +0100
@@ -55,7 +55,11 @@
 
 /* --- !!! --- EXTERNAL HEADERS start --- !!! --- */
 #define _GNU_SOURCE
+#include <features.h>
+/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
 #define _FILE_OFFSET_BITS 64
+#endif
 /* This is for ELF types etc, and also the AT_ constants. */
 #include <elf.h>
 /* --- !!! --- EXTERNAL HEADERS end --- !!! --- */
Index: valgrind-3.7.0/coregrind/m_main.c
===================================================================
--- valgrind-3.7.0.orig/coregrind/m_main.c	2011-10-26 23:24:45.000000000 +0200
+++ valgrind-3.7.0/coregrind/m_main.c	2011-12-22 14:53:12.798185055 +0100
@@ -2743,7 +2743,11 @@
 
 /* --- !!! --- EXTERNAL HEADERS start --- !!! --- */
 #define _GNU_SOURCE
+#include <features.h>
+/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
 #define _FILE_OFFSET_BITS 64
+#endif
 /* This is in order to get AT_NULL and AT_PAGESIZE. */
 #include <elf.h>
 /* --- !!! --- EXTERNAL HEADERS end --- !!! --- */
Index: valgrind-3.7.0/coregrind/m_ume/elf.c
===================================================================
--- valgrind-3.7.0.orig/coregrind/m_ume/elf.c	2011-10-26 23:24:41.000000000 +0200
+++ valgrind-3.7.0/coregrind/m_ume/elf.c	2011-12-22 14:53:12.798185055 +0100
@@ -48,7 +48,11 @@
 
 /* --- !!! --- EXTERNAL HEADERS start --- !!! --- */
 #define _GNU_SOURCE
+#include <features.h>
+/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
 #define _FILE_OFFSET_BITS 64
+#endif
 /* This is for ELF types etc, and also the AT_ constants. */
 #include <elf.h>
 /* --- !!! --- EXTERNAL HEADERS end --- !!! --- */
