-dnl ------------------
-dnl CHECK HEADER FILES
-dnl ------------------
-
-dnl On glibc we need to define at least the '_XOPEN_SOURCE' level of features,
-dnl or wchar.h doesn't declare a prototype for wcwidth(). But if we only define
-dnl that level then db.h won't compile. So we define _GNU_SOURCE which turns
-dnl on everything. Perhaps other OSes need some feature switch set to get wcwidth()
-dnl declared; if so they should have an entry added to this case statement.
-dnl NB that we must define this on the compiler command line, not in config.h,
-dnl because it must be set before any system header is included and there's no
-dnl portable way to make sure that files generated by lex include config.h
-dnl before system header files.
-
-case "$target_os" in
- linux*)
- # Like DEFS, but doesn't get stomped on by configure when using config.h:
- OURDEFS="$OURDEFS -D_GNU_SOURCE"
- ;;
-esac
-AC_SUBST(OURDEFS)
-
-AC_HEADER_STDC
-AC_HEADER_TIME
-AC_HEADER_TIOCGWINSZ
-AC_CHECK_HEADERS(errno.h fcntl.h crypt.h termcap.h \
- langinfo.h wchar.h wctype.h iconv.h netdb.h \
- sys/param.h sys/time.h sys/stream.h)
-
-dnl
-dnl Checks for _IO_write_ptr. A Linuxism used by nmh on linux. We
-dnl really use a whole set of them, but this check should be
-dnl sufficient.
-dnl
-AC_CHECK_HEADER(libio.h, [
- AC_EGREP_HEADER(_IO_write_ptr, libio.h, [
- AC_DEFINE(LINUX_STDIO,1,[Use the Linux _IO_*_ptr defines from <libio.h>.]) ]) ])
-
-AC_CHECK_HEADER([sys/ptem.h], AC_DEFINE(WINSIZE_IN_PTEM,1,
- [Define to 1 if `struct winsize' requires <sys/ptem.h>.]),,
-[[#if HAVE_SYS_STREAM_H
-# include <sys/stream.h>
-#endif
-]])
-
-dnl ---------------
-dnl CHECK FUNCTIONS
-dnl ---------------
-AC_CHECK_FUNCS(writev lstat tzset getutent nl_langinfo)
-
-dnl Look for the initgroups() declaration. On AIX 4.[13], Solaris 4.1.3, and
-dnl ULTRIX 4.2A the function is defined in libc but there's no declaration in
-dnl any system header.
-dnl
-dnl On Solaris 2.[456], the declaration is in <grp.h>. On HP-UX 9-11 and
-dnl (reportedly) FreeBSD 3.[23], it's in <unistd.h>. Any other locations we
-dnl need to check?
-AH_TEMPLATE(INITGROUPS_HEADER, [Define to the header containing the declaration of `initgroups'.])
-AC_EGREP_HEADER(initgroups, grp.h, AC_DEFINE(INITGROUPS_HEADER, <grp.h>),
- AC_EGREP_HEADER(initgroups, unistd.h,
- AC_DEFINE(INITGROUPS_HEADER, <unistd.h>)))
-
-dnl On AIX 4.1, snprintf() is defined in libc.a but there's no prototype in
-dnl <stdio.h> or elsewhere. Apparently it's not officially supported (though it
-dnl seems to work perfectly and IBM apparently uses it in internal code).
-dnl Anyhow, if we omit our own snprintf() and vsnprintf() prototypes when we
-dnl HAVE_SNPRINTF, we get a billion warnings at compile time. Use the C
-dnl preprocessor to preprocess stdio.h and make sure that there's actually a
-dnl prototype.
-AC_EGREP_HEADER(snprintf, stdio.h, AC_DEFINE(HAVE_SNPRINTF_PROTOTYPE,1,
- [Define to 1 if <stdio.h> has a prototype for snprintf().]))
-
-dnl Check for multibyte character set support
-if test "x$ac_cv_header_wchar_h" = "xyes" -a "x$ac_cv_header_wctype_h" = "xyes" \
- -a "x$ac_cv_func_wcwidth" = "xyes" -a "x$ac_cv_func_mbtowc" = "xyes"; then
- AC_DEFINE(MULTIBYTE_SUPPORT, 1,
- [Define to enable support for multibyte character sets.])
-fi