.
[gnulib.git] / m4 / malloc.m4
index ec59397..25ab6e3 100644 (file)
@@ -1,17 +1,17 @@
-#serial 1
+#serial 4
 
 dnl From Jim Meyering.
 dnl Determine whether malloc accepts 0 as its argument.
 dnl If it doesn't, arrange to use the replacement function.
 dnl
-dnl If you use this macro in a package, you should
-dnl add the following two lines to acconfig.h:
-dnl  /* Define to rpl_malloc if the replacement function should be used.  */
-dnl  #undef malloc
-dnl
 
 AC_DEFUN(jm_FUNC_MALLOC,
 [
+ dnl xmalloc.c requires that this symbol be defined so it doesn't
+ dnl mistakenly use a broken malloc -- as it might if this test were omitted.
+ AC_DEFINE_UNQUOTED(HAVE_DONE_WORKING_MALLOC_CHECK, 1,
+                    [Define if the malloc check has been performed. ])
+
  AC_CACHE_CHECK([for working malloc], jm_cv_func_working_malloc,
   [AC_TRY_RUN([
     char *malloc ();
@@ -27,7 +27,8 @@ AC_DEFUN(jm_FUNC_MALLOC,
         jm_cv_func_working_malloc=no)
   ])
   if test $jm_cv_func_working_malloc = no; then
-    LIBOBJS="$LIBOBJS malloc.o"
-    AC_DEFINE_UNQUOTED(malloc, rpl_malloc)
+    AC_LIBOBJ(malloc)
+    AC_DEFINE_UNQUOTED(malloc, rpl_malloc,
+      [Define to rpl_malloc if the replacement function should be used.])
   fi
 ])