+dnl directories of the fileutils, sh-utils, and textutils packages.
+
+AC_DEFUN([jm_PREREQ],
+[
+ jm_PREREQ_ADDEXT
+ jm_PREREQ_CANON_HOST
+ jm_PREREQ_DIRNAME
+ jm_PREREQ_ERROR
+ jm_PREREQ_EXCLUDE
+ jm_PREREQ_GETPAGESIZE
+ jm_PREREQ_HASH
+ jm_PREREQ_HUMAN
+ jm_PREREQ_MBSWIDTH
+ jm_PREREQ_MEMCHR
+ jm_PREREQ_PHYSMEM
+ jm_PREREQ_QUOTEARG
+ jm_PREREQ_READUTMP
+ jm_PREREQ_REGEX
+ jm_PREREQ_TEMPNAME # called by mkstemp
+ jm_PREREQ_XGETCWD
+ jm_PREREQ_XREADLINK
+])
+
+AC_DEFUN([jm_PREREQ_ADDEXT],
+[
+ dnl For addext.c.
+ AC_SYS_LONG_FILE_NAMES
+ AC_CHECK_FUNCS(pathconf)
+ AC_CHECK_HEADERS(limits.h string.h unistd.h)
+])
+
+AC_DEFUN([jm_PREREQ_CANON_HOST],
+[
+ dnl Add any libraries as early as possible.
+ dnl In particular, inet_ntoa needs -lnsl at least on Solaris5.5.1,
+ dnl so we have to add -lnsl to LIBS before checking for that function.
+ AC_SEARCH_LIBS(gethostbyname, [inet nsl])
+
+ dnl These come from -lnsl on Solaris5.5.1.
+ AC_CHECK_FUNCS(gethostbyname gethostbyaddr inet_ntoa)
+
+ AC_CHECK_FUNCS(gethostbyname gethostbyaddr inet_ntoa)
+ AC_CHECK_HEADERS(unistd.h string.h netdb.h sys/socket.h \
+ netinet/in.h arpa/inet.h)
+])
+
+AC_DEFUN([jm_PREREQ_DIRNAME],
+[
+ AC_HEADER_STDC
+ AC_CHECK_HEADERS(string.h)
+])
+
+AC_DEFUN([jm_PREREQ_EXCLUDE],
+[
+ jm_FUNC_FNMATCH
+ AC_CHECK_HEADERS(stdbool.h)
+])
+
+AC_DEFUN([jm_PREREQ_GETPAGESIZE],
+[
+ AC_CHECK_FUNCS(getpagesize)
+ AC_CHECK_HEADERS(OS.h unistd.h)
+])
+
+# If you use human.c, you need the following files:
+# inttypes.m4 ulonglong.m4
+AC_DEFUN([jm_PREREQ_HUMAN],
+[
+ AC_CHECK_HEADERS(limits.h stdlib.h string.h)
+ AC_CHECK_DECLS([getenv])
+ AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])
+])
+
+AC_DEFUN([jm_PREREQ_MEMCHR],
+[
+ AC_CHECK_HEADERS(limits.h stdlib.h bp-sym.h)
+])
+
+AC_DEFUN([jm_PREREQ_PHYSMEM],
+[
+ AC_CHECK_HEADERS(sys/pstat.h unistd.h)
+ AC_CHECK_FUNCS(pstat_getstatic pstat_getdynamic)
+])