+2010-06-09  Bruno Haible  <bruno@clisp.org>
+
+       Avoid relocwrapper link errors due to gnulib replacement functions.
+       * lib/canonicalize-lgpl.c: Use the system's malloc function.
+       * lib/malloca.c: Likewise.
+       * lib/relocatable.c: Likewise.
+       * lib/progreloc.c: Use the system's malloc, sprintf functions.
+       * lib/relocwrapper.c: Use the system's fprintf, malloc functions.
+       * lib/setenv.c: Use the system's malloc, realloc functions.
+       * lib/strerror.c: Use the system's sprintf function.
+       Reported by Ben Pfaff <blp@cs.stanford.edu>.
+
 2010-06-04  Bruno Haible  <bruno@clisp.org>
 
        Prefer documented low-level autoconf macro names.
 
 # endif
 # define __readlink readlink
 # define __set_errno(e) errno = (e)
+/* Use the system functions, not the gnulib overrides in this file.  */
+# undef malloc
 # ifndef MAXSYMLINKS
 #  ifdef SYMLOOP_MAX
 #   define MAXSYMLINKS SYMLOOP_MAX
 
 /* Specification.  */
 #include "malloca.h"
 
+/* Use the system functions, not the gnulib overrides in this file.  */
+#undef malloc
+
 /* The speed critical point in this file is freea() applied to an alloca()
    result: it must be fast, to match the speed of alloca().  The speed of
    mmalloca() and freea() in the other case are not critical, because they
 
 #undef open
 #undef close
 
+/* Use the system functions, not the gnulib overrides in this file.  */
+#undef malloc
+#undef sprintf
+
 #undef set_program_name
 
 
 
 # define FILE_SYSTEM_PREFIX_LEN(P) 0
 #endif
 
+/* Use the system functions, not the gnulib overrides in this file.  */
+#undef malloc
+
 /* Original installation prefix.  */
 static char *orig_prefix;
 static size_t orig_prefix_len;
 
 #include "relocatable.h"
 #include "c-ctype.h"
 
+/* Use the system functions, not the gnulib overrides in this file.  */
+#undef fprintf
+#undef malloc
+
 /* Return a copy of the filename, with an extra ".bin" at the end.
    More generally, it replaces "${EXEEXT}" at the end with ".bin${EXEEXT}".  */
 static char *
 
 # define clearenv __clearenv
 # define tfind __tfind
 # define tsearch __tsearch
+#else
+/* Use the system functions, not the gnulib overrides in this file.  */
+# undef malloc
+# undef realloc
 #endif
 
 /* In the GNU C library implementation we try to be more clever and
 
 
 # include "intprops.h"
 
+/* Use the system functions, not the gnulib overrides in this file.  */
+# undef sprintf
+
 # undef strerror
 # if ! HAVE_DECL_STRERROR
 #  define strerror(n) NULL