Split nmh dir into mmh dir (~/.mmh) and mail storage (~/Mail).
[mmh] / aclocal.m4
index c0d4fb8..fcc5fbd 100644 (file)
@@ -1,24 +1,14 @@
 
 
-# Originally by John Hawkinson <jhawk@mit.edu>
-# Under Solaris, those
-# applications need to link with "-lsocket -lnsl".  Under IRIX, they
-# need to link with "-lnsl" but should *not* link with "-lsocket"
-# because libsocket.a breaks a number of things (for instance,
-# gethostbyname() under IRIX 5.2, and snoop sockets under most versions
-# of IRIX).
 #
 #
-# The check for libresolv is in case you are attempting to link
-# statically and happen to have a libresolv.a lying around (and no
-# libnsl.a). An example of such a case would be Solaris with
-# BIND 4.9.5 installed.
-
-AC_DEFUN(AC_CHECK_NETLIBS,
-[AC_CHECK_FUNC(gethostbyname, ,
-  AC_CHECK_LIB(nsl, gethostbyname, ,
-    AC_CHECK_LIB(resolv, gethostbyname)))
-AC_CHECK_FUNC(socket, ,
-  AC_CHECK_LIB(socket, socket))
-])
+# Updated for more modern systems.  Check to see if we need to link against
+# optional libraries for networking functions.
+#
+
+AC_DEFUN([AC_CHECK_NETLIBS],
+[AC_SEARCH_LIBS([gethostbyname], [nsl], ,
+               [AC_MSG_ERROR([gethostbyname not found])])
+ AC_SEARCH_LIBS([connect], [socket], , [AC_MSG_ERROR([connect not found])])
+])dnl
 
 dnl --------------
 dnl CHECK FOR NDBM
 
 dnl --------------
 dnl CHECK FOR NDBM
@@ -35,7 +25,7 @@ dnl nmh_ndbmheader to the first arg and nmh_ndbm to the second.
 
 dnl If this macro accepted a list of include,library tuples
 dnl to test in order that would be cleaner than the current
 
 dnl If this macro accepted a list of include,library tuples
 dnl to test in order that would be cleaner than the current
-dnl nest of calls in configure.in.
+dnl nest of calls in configure.ac.
 
 dnl We try to link our own code fragment (which includes the
 dnl headers in the same way slocal.c does) rather than
 
 dnl We try to link our own code fragment (which includes the
 dnl headers in the same way slocal.c does) rather than
@@ -84,3 +74,55 @@ else
   :
 fi
 ])dnl
   :
 fi
 ])dnl
+
+dnl ----------------
+dnl CHECK FOR d_type
+dnl ----------------
+dnl
+dnl From Jim Meyering.
+dnl
+dnl Check whether struct dirent has a member named d_type.
+dnl
+
+# Copyright (C) 1997, 1999, 2000, 2001, 2002, 2003, 2004 Free Software
+# Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+AC_DEFUN([CHECK_TYPE_STRUCT_DIRENT_D_TYPE],
+  [AC_REQUIRE([AC_HEADER_DIRENT])dnl
+   AC_CACHE_CHECK([for d_type member in directory struct],
+                  jm_cv_struct_dirent_d_type,
+     [AC_TRY_LINK(dnl
+       [
+#include <sys/types.h>
+#ifdef HAVE_DIRENT_H
+# include <dirent.h>
+#else /* not HAVE_DIRENT_H */
+# define dirent direct
+# ifdef HAVE_SYS_NDIR_H
+#  include <sys/ndir.h>
+# endif /* HAVE_SYS_NDIR_H */
+# ifdef HAVE_SYS_DIR_H
+#  include <sys/dir.h>
+# endif /* HAVE_SYS_DIR_H */
+# ifdef HAVE_NDIR_H
+#  include <ndir.h>
+# endif /* HAVE_NDIR_H */
+#endif /* HAVE_DIRENT_H */
+       ],
+       [struct dirent dp; dp.d_type = 0;],
+
+       jm_cv_struct_dirent_d_type=yes,
+       jm_cv_struct_dirent_d_type=no)
+     ]
+   )
+   if test $jm_cv_struct_dirent_d_type = yes; then
+     AC_DEFINE(HAVE_STRUCT_DIRENT_D_TYPE, 1,
+       [Define if there is a member named d_type in the struct describing
+        directory headers.])
+   fi
+  ]
+)