$NetBSD: patch-am,v 1.2 2004/02/12 20:31:35 minskim Exp $

--- configure.in.orig	2002-06-12 04:26:46.000000000 -0500
+++ configure.in
@@ -237,6 +237,8 @@ AC_CHECK_FUNC(unlink)
      fi
 fi
 
+dnl AC_CHECK_FUNC(unlink, , AC_CHECK_FUNC(remove, AC_DEFINE(unlink, remove)))
+
 dnl Checks for configuration arguments
 AC_MSG_CHECKING(whether to support direct WAIS access.)
 AC_ARG_WITH(wais,
@@ -330,6 +332,11 @@ AC_ARG_WITH(regex,
     AC_DEFINE(HT_POSIX_REGEX)
     if test "x$withval" = "xyes"; then
       AC_CHECK_LIB(rx, regexec, [ LIBS="-lrx $LIBS" ] )
+      AC_TRY_LINK([],
+	          [ regexec(); ],
+		  [],
+		  [ AC_CHECK_LIB(rx, regexec, [ LIBS="-lrx $LIBS" ] ) ] )
+ 
     else
       AC_ADDLIB($withval)
       AC_TRY_LINK([],
@@ -532,27 +539,39 @@ AC_ARG_WITH(md5,
 [ case "$withval" in
   no)
     AC_MSG_RESULT(no)
+    MD5DIR=""
     WWWMD5=""
     LWWWMD5=""
     LIBWWWMD5=""
+    LIBMD5DEP=""
+    LIBMD5INC=""
+    AC_CHECK_LIB(c, MD5Init, [:], 
+	[ AC_CHECK_LIB(md5, MD5Init, [ LWWWMD5="-lmd5"; LIBWWWMD5="-lmd5"], [ AC_MSG_ERROR(Could not find md5 functions. You need to compile in the md5 library.) ] ) ] )
     ;;
   *)
     AC_MSG_RESULT(yes)
     AC_DEFINE(HT_MD5)
+    MD5DIR="md5"
     WWWMD5="libmd5.la"
     LWWWMD5="-lmd5"
     LIBWWWMD5='${top_builddir}/modules/md5/libmd5.la'
+    LIBMD5INC='-I${top_srcdir}/modules/md5'
+    LIBMD5DEP="../../modules/md5/libmd5.la"
     ;;
   esac ],
   AC_MSG_RESULT(yes)
   AC_DEFINE(HT_MD5)
+  MD5DIR="md5"
   WWWMD5="libmd5.la"
   LWWWMD5="-lmd5"
   LIBWWWMD5='${top_builddir}/modules/md5/libmd5.la'
 )
+AC_SUBST(MD5DIR)
 AC_SUBST(WWWMD5)
 AC_SUBST(LWWWMD5)
 AC_SUBST(LIBWWWMD5)
+AC_SUBST(LIBMD5INC)
+AC_SUBST(LIBMD5DEP)
 
 AC_MSG_CHECKING(whether we include WebDAV support.)
 AC_ARG_WITH(dav,
@@ -609,31 +628,9 @@ AC_SUBST(MYEXT)
 
 
 
-dnl Checks for libwww and OpenSSL:
-AC_MSG_CHECKING(whether we can find OpenSSL)
-dnl find the ssl library dir (empirical)
-if test -d '/usr/local/ssl/lib'; then
-  ssllib="-L/usr/local/ssl/lib -lssl -lcrypto"
-else
-  ssllib="-L/usr/lib -lssl -lcrypto"
-fi
-dnl find the ssl include dir (empirical)
-if test -d '/usr/local/ssl/include'; then
-  sslinc="-I/usr/local/ssl/include"
-elif test -d '/usr/local/openssl/include'; then
-  sslinc="-I/usr/local/openssl/include"
-elif test -d '/usr/local/include/openssl'; then
-  sslinc="-I/usr/local/include/openssl"
-elif test -d '/usr/include/ssl'; then
-  sslinc="-I/usr/include/ssl"
-elif test -d '/usr/include/openssl'; then
-  sslinc="-I/usr/include/openssl"
-else
-  sslinc=""
-fi
+dnl Checks for OpenSSL:
+AC_MSG_CHECKING(whether to support OpenSSL.)
 WWWSSL=""
-SSLINC=""
-LIBSSL=""
 LWWWSSL=""
 LIBWWWSSL=""
 WWWSSLEX=""
@@ -645,10 +642,35 @@ AC_ARG_WITH(ssl,
     ;;
   *)
     if test "x$withval" = "xyes"; then
-      withval=$ssllib
-      SSLINC=$sslinc
+      dnl find the ssl library dir (empirical)
+      if test -d '/usr/local/ssl/lib'; then
+        ssllib="-L/usr/local/ssl/lib -lssl -lcrypto"
+      else
+        ssllib="-L/usr/lib -lssl -lcrypto"
+      fi
+      dnl find the ssl include dir (empirical)
+      if test -d '/usr/local/ssl/include'; then
+        sslinc="-I/usr/local/ssl/include"
+      elif test -d '/usr/local/openssl/include'; then
+        sslinc="-I/usr/local/openssl/include"
+      elif test -d '/usr/local/include/openssl'; then
+        sslinc="-I/usr/local/include/openssl"
+      elif test -d '/usr/include/ssl'; then
+        sslinc="-I/usr/include/ssl"
+      elif test -d '/usr/include/openssl'; then
+        sslinc="-I/usr/include/openssl"
+      else
+        sslinc=""
+      fi
+      SSLINC="$sslinc"
+      SSLLIBS="$ssllib"
+    else
+      SSLINC="-I${withval}/include/openssl -I${withval}/include"
+      SSLLIBS="-L${withval}/lib -lssl -lcrypto -Wl,-R${withval}/lib"
+ 
     fi
-    LIBS="$LIBS $withval"
+    SAVED_LIBS="${LIBS}"
+    LIBS="${LIBS} ${SSLLIBS}"
     AC_TRY_LINK([],
 		[ SSL_library_init(); ],
 		[],
@@ -663,6 +685,7 @@ AC_ARG_WITH(ssl,
 [ AC_MSG_RESULT(no) ])
 AC_SUBST(WWWSSL)
 AC_SUBST(SSLINC)
+AC_SUBST(SSLLIBS)
 AC_SUBST(LWWWSSL)
 AC_SUBST(LIBWWWSSL)
 AC_SUBST(WWWSSLEX)
