X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=configure.ac;h=466a9ddcf28511924a0decb1ea943dc9d2dda007;hp=a6a55efbb7c54d5c0610f7ad52f45579a0361ee2;hb=ac0b9fcce4167e2959ebc5b8d6efb8511acec66d;hpb=2abae0bfd0ad5bf898461e50aa4b466d641f23d9 diff --git a/configure.ac b/configure.ac index a6a55ef..466a9dd 100644 --- a/configure.ac +++ b/configure.ac @@ -4,6 +4,7 @@ dnl dnl Move this up a bit AC_PREREQ(2.61) +dnl (I was able to configure with autoconf-2.59 --meillo 2012-03-22) AC_INIT(mmh, m4_normalize(m4_include([VERSION]))) AC_CONFIG_SRCDIR(h/nmh.h) @@ -333,17 +334,12 @@ case "$target_os" in esac AC_SUBST(OURDEFS) -AC_HEADER_DIRENT AC_HEADER_STDC AC_HEADER_TIME -AC_HEADER_SYS_WAIT -AC_HEADER_STAT AC_HEADER_TIOCGWINSZ -AC_CHECK_HEADERS(string.h memory.h stdlib.h unistd.h errno.h fcntl.h \ - limits.h crypt.h termcap.h termio.h termios.h locale.h \ - langinfo.h wchar.h wctype.h iconv.h netdb.h \ - sys/param.h sys/time.h sys/utsname.h sys/stream.h \ - arpa/inet.h arpa/ftp.h) +AC_CHECK_HEADERS(fcntl.h crypt.h termcap.h \ + langinfo.h wchar.h wctype.h iconv.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 @@ -364,20 +360,7 @@ AC_CHECK_HEADER([sys/ptem.h], AC_DEFINE(WINSIZE_IN_PTEM,1, dnl --------------- dnl CHECK FUNCTIONS dnl --------------- -AC_FUNC_VFORK -AC_CHECK_LIB(mkstemp,mkstemp) -AC_CHECK_FUNCS(waitpid wait3 sigaction sigprocmask sigblock sigsetmask \ - sighold sigrelse lstat uname tzset killpg mkstemp \ - getutent nl_langinfo mbtowc wcwidth) - -dnl sigsetjmp may be a macro -AC_MSG_CHECKING(for sigsetjmp) -AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], - [[sigsetjmp((void *)0, 0);]])],[AC_DEFINE(HAVE_SIGSETJMP, 1, - [Define to 1 if you have the `sigsetjmp'.]) AC_MSG_RESULT(yes)], - [AC_MSG_RESULT(no)]) - -AC_REPLACE_FUNCS(snprintf strdup) +AC_CHECK_FUNCS(lstat tzset getutent nl_langinfo mbtowc wcwidth) 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 @@ -391,16 +374,6 @@ AC_EGREP_HEADER(initgroups, grp.h, AC_DEFINE(INITGROUPS_HEADER, ), AC_EGREP_HEADER(initgroups, unistd.h, AC_DEFINE(INITGROUPS_HEADER, ))) -dnl On AIX 4.1, snprintf() is defined in libc.a but there's no prototype in -dnl 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 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 @@ -468,69 +441,6 @@ if test "x$ac_found_iconv" = "xyes"; then [Define as const if the declaration of iconv() needs const.]) fi -dnl -------------- -dnl CHECK FOR NDBM -dnl -------------- - -AC_ARG_WITH([ndbm],AS_HELP_STRING([--with-ndbm=ARG],[use -lARG to link with ndbm]), - [nmh_ndbm=$withval],[nmh_ndbm=autodetect]) -AC_ARG_WITH([ndbmheader],AS_HELP_STRING([--with-ndbmheader=ARG],[#include to use ndbm]), - [nmh_ndbmheader=$withval],[nmh_ndbmheader=autodetect]) - -if test "$nmh_ndbm" = "autodetect"; then - if test "$nmh_ndbmheader" != "autodetect"; then - AC_MSG_ERROR([must specify both --with-ndbm and --with-ndbmheader or neither]) - else - - dnl There are at least four implementations of ndbm, and - dnl several of those can be in different places at the whim - dnl of the system integrator. A good summary of this mess - dnl can be found at http://www.unixpapa.com/incnote/dbm.html - - dnl Classic ndbm with no library required (eg NetBSD): try this - dnl first so we don't accidentally link in a pointless but harmless - dnl library in one of the later ndbm.h+libfoo tests: - NMH_CHECK_NDBM(ndbm.h,,, - dnl Berkeley DBv2 emulating ndbm: header in db.h: - NMH_CHECK_NDBM(db.h,db,, - dnl Berkeley DBv1 emulating ndbm: - NMH_CHECK_NDBM(ndbm.h,db,, - NMH_CHECK_NDBM(ndbm.h,db1,, - dnl Classic ndbm: - NMH_CHECK_NDBM(ndbm.h,ndbm,, - dnl glibc2.1 systems put db1 in a subdir: - NMH_CHECK_NDBM(db1/ndbm.h,db1,, - dnl GNU gdbm emulating ndbm, with header possibly in gdbm/ - dnl and possibly needing gbdm_compat library: - NMH_CHECK_NDBM(gdbm/ndbm.h,gdbm,, - NMH_CHECK_NDBM(gdbm/ndbm.h,gdbm_compat -lgdbm,, - NMH_CHECK_NDBM(ndbm.h,gdbm,, - NMH_CHECK_NDBM(ndbm.h,gdbm_compat -lgdbm)))))))))) - - fi -else - dnl We don't really need to check that the user-specified values work, - dnl but it is a convenience to the user to bomb out early rather than - dnl after configure and half the compile process. - NMH_CHECK_NDBM([$nmh_ndbmheader],[$nmh_ndbm]) -fi - -if test "$nmh_ndbm_found" = "no"; then - AC_MSG_ERROR([could not find a working ndbm library/header combination]) -else - dnl Now export the lib/header to our makefile/config.h: - if test x"$nmh_ndbmheader" != x; then - AC_DEFINE_UNQUOTED(NDBM_HEADER, <$nmh_ndbmheader>, - [Define to the header containing the ndbm API prototypes.]) - fi - if test x"$nmh_ndbm" != x; then - NDBM_LIBS="-l$nmh_ndbm" - else - NDBM_LIBS= - fi - AC_SUBST(NDBM_LIBS) -fi - dnl --------------------- dnl CHECK TERMCAP LIBRARY @@ -541,35 +451,6 @@ dnl tests will find it when it tries to link test programs. nmh_save_LIBS="$LIBS" LIBS="$TERMLIB $LIBS" -dnl Checks for external variable ospeed in the termcap library. -AC_CACHE_CHECK(if an include file defines ospeed, -nmh_cv_decl_ospeed_include_defines, -[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include -#if HAVE_TERMIOS_H -# include -#endif -#if HAVE_TERMCAP_H -# include -#endif]], [[ospeed = 0;]])], -nmh_cv_decl_ospeed_include_defines=yes,nmh_cv_decl_ospeed_include_defines=no)]) - -if test $nmh_cv_decl_ospeed_include_defines = no; then - AC_CACHE_CHECK(if you must define ospeed, - nmh_cv_decl_ospeed_must_define, - [AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], - [[extern short ospeed; ospeed = 0;]])], - nmh_cv_decl_ospeed_must_define=yes,nmh_cv_decl_ospeed_must_define=no)]) -fi - -AH_TEMPLATE(HAVE_OSPEED, [Define to 1 if your termcap library has the ospeed variable.]) -if test $nmh_cv_decl_ospeed_include_defines = yes; then - AC_DEFINE(HAVE_OSPEED)dnl -elif test $nmh_cv_decl_ospeed_must_define = yes; then - AC_DEFINE(HAVE_OSPEED) - AC_DEFINE(MUST_DEFINE_OSPEED, 1, - [Define to 1 if you have ospeed, but it is not defined in termcap.h.]) -fi - dnl Check if tgetent accepts NULL (and will allocate its own termcap buffer) dnl Some termcaps reportedly accept a zero buffer, but then dump core dnl in tgetstr(). @@ -643,29 +524,15 @@ LIBS="$nmh_save_LIBS" dnl -------------- dnl CHECK TYPEDEFS dnl -------------- -AC_TYPE_SIGNAL AC_TYPE_PID_T AC_TYPE_OFF_T AC_TYPE_UID_T AC_TYPE_MODE_T AC_TYPE_SIZE_T -dnl Check for sigset_t. Currently I'm looking in -dnl and . Others might need -dnl to be added. -AC_CACHE_CHECK(for sigset_t, nmh_cv_type_sigset_t, -[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include -#include ]], [[sigset_t tempsigset;]])], -nmh_cv_type_sigset_t=yes,nmh_cv_type_sigset_t=no)]) -if test $nmh_cv_type_sigset_t = no; then - AC_DEFINE(sigset_t, unsigned int, - [Define to `unsigned int' if or doesn't define.]) -fi - dnl ---------------- dnl CHECK STRUCTURES dnl ---------------- -AC_CHECK_MEMBERS(struct stat.st_blksize) AC_CHECK_MEMBERS(struct tm.tm_gmtoff,,, [#ifdef TIME_WITH_SYS_TIME @@ -681,63 +548,7 @@ AC_CHECK_MEMBERS(struct tm.tm_gmtoff,,, AC_CHECK_MEMBERS(struct utmp.ut_type,,,[#include ]) -AC_MSG_CHECKING(for union wait) -AC_CACHE_VAL(nmh_cv_union_wait, [dnl - AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include -#include ]], - [[union wait status; int pid; pid = wait (&status); -#ifdef WEXITSTATUS -/* Some POSIXoid systems have both the new-style macros and the old - union wait type, and they do not work together. If union wait - conflicts with WEXITSTATUS et al, we don't want to use it at all. */ - if (WEXITSTATUS (status) != 0) pid = -1; -#ifdef WTERMSIG - /* If we have WEXITSTATUS and WTERMSIG, just use them on ints. */ - -- blow chunks here -- -#endif -#endif -#ifdef HAVE_WAITPID - /* Make sure union wait works with waitpid. */ - pid = waitpid (-1, &status, 0); -#endif - ]])], - [nmh_cv_union_wait=yes], - [nmh_cv_union_wait=no])]) -if test "$nmh_cv_union_wait" = yes; then - AC_DEFINE(HAVE_UNION_WAIT, 1, - [Define to 1 if you have the \`union wait' type in .]) -fi -AC_MSG_RESULT($nmh_cv_union_wait) - -CHECK_TYPE_STRUCT_DIRENT_D_TYPE() - -dnl ------------- -dnl CHECK SIGNALS -dnl ------------- -dnl What style of signal do you have (POSIX, BSD, or SYSV)? -AH_TEMPLATE(RELIABLE_SIGNALS, [Define to 1 if you have reliable signals.]) -AC_MSG_CHECKING(what style of signals to use) -if test $ac_cv_func_sigaction = yes -a $ac_cv_func_sigprocmask = yes; then - signals_style=POSIX_SIGNALS - AC_DEFINE(POSIX_SIGNALS, 1, - [Define to 1 if you use POSIX style signal handling.]) - AC_DEFINE(RELIABLE_SIGNALS) -elif test $ac_cv_func_sigblock = yes -a $ac_cv_func_sigsetmask = yes; then - signals_style=BSD_SIGNALS - AC_DEFINE(BSD_SIGNALS,1, - [Define to 1 if you use BSD style signal handling (and can block signals).]) - AC_DEFINE(RELIABLE_SIGNALS) -elif test $ac_cv_func_sighold = yes -a $ac_cv_func_sigrelse = yes; then - signals_style=SYSV_SIGNALS - AC_DEFINE(SYSV_SIGNALS,1, - [Define to 1 if you use SYSV style signal handling (and can block signals).]) -else - signals_style=NO_SIGNAL_BLOCKING - AC_DEFINE(NO_SIGNAL_BLOCKING,1, - [Define to 1 if you have no signal blocking at all (bummer).]) -fi - -AC_MSG_RESULT($signals_style) +AC_STRUCT_DIRENT_D_TYPE dnl Where is located? Needed as input for signames.awk AC_CACHE_CHECK(where signal.h is located, nmh_cv_path_signal_h,