- if test x = y; then
- dnl This code is deliberately never run via ./configure.
- dnl FIXME: this is a gross hack to make autoheader put entries
- dnl for each of these symbols in the config.h.in.
- dnl Otherwise, I'd have to update acconfig.h every time I change
- dnl this list of functions.
- AC_CHECK_FUNCS(DECL_FREE DECL_MALLOC DECL_MEMCHR DECL_REALLOC \
- DECL_STPCPY DECL_STRSTR)
- fi
- jm_CHECK_DECLARATIONS(free malloc memchr realloc stpcpy strstr)
+ AC_REQUIRE([_jm_DECL_HEADERS])
+ AC_REQUIRE([AC_HEADER_TIME])
+ headers='
+#include <stdio.h>
+#if HAVE_STRING_H
+# if !STDC_HEADERS && HAVE_MEMORY_H
+# include <memory.h>
+# endif
+# include <string.h>
+#else
+# if HAVE_STRINGS_H
+# include <strings.h>
+# endif
+#endif
+#if HAVE_STDLIB_H
+# include <stdlib.h>
+#endif
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+
+#include <sys/types.h>
+#if TIME_WITH_SYS_TIME
+# include <sys/time.h>
+# include <time.h>
+#else
+# if HAVE_SYS_TIME_H
+# include <sys/time.h>
+# else
+# include <time.h>
+# endif
+#endif
+
+#if !HAVE_UTMPX_H
+# include <utmp.h>
+#endif
+'
+
+ AC_CHECK_DECLS([
+ free,
+ getenv,
+ geteuid,
+ getlogin,
+ getutent,
+ lseek,
+ malloc,
+ memchr,
+ nanosleep,
+ realloc,
+ stpcpy,
+ strndup,
+ strstr,
+ strtoul,
+ strtoull,
+ ttyname], , , $headers)
+])
+
+dnl FIXME: when autoconf has support for it.
+dnl This is a little helper so we can require these header checks.
+AC_DEFUN(_jm_DECL_HEADERS,
+[
+ AC_REQUIRE([AC_HEADER_STDC])
+ AC_CHECK_HEADERS(memory.h string.h strings.h stdlib.h unistd.h sys/time.h \
+ utmpx.h)