clean, simplify, clean, sort, clean, unify, clean, ...
authorLubomir Sedlacik <salo@silcnet.org>
Sat, 24 Aug 2002 08:13:23 +0000 (08:13 +0000)
committerLubomir Sedlacik <salo@silcnet.org>
Sat, 24 Aug 2002 08:13:23 +0000 (08:13 +0000)
configure.in.pre

index 42d38a6c9443fdcefef9335e32352e9fa5eae28f..9c87858b39db025942c892cf4301e9ceaca0cf5e 100644 (file)
@@ -18,7 +18,6 @@
 
 AC_INIT(includes/silcversion.h)
 
-#
 # Put here any platform specific stuff
 #
 AC_CANONICAL_SYSTEM
@@ -32,6 +31,7 @@ case "$target" in
 esac
 
 # ./prepare script will automatically put the correct version. Do not edit!
+#
 AM_INIT_AUTOMAKE(SILC_PACKAGE, SILC_VERSION)
 AC_PREREQ(2.52)
 AM_CONFIG_HEADER(includes/silcdefs.h)
@@ -45,17 +45,20 @@ AC_SUBST(LN_S)
 
 # Distribution definition. ./prepare will automatically add here a correct
 # value. Do not edit!
+#
 silc_dist=SILC_PACKAGE
 SILC_DIST_SUBDIRS="SILC_DISTRIBUTION_SUBDIRS"
 AC_DEFINE(SILC_DIST_DEFINE)
 
 # XXX
 # Compiler flags
+#
 if test "$GCC"; then
   CFLAGS="-Wall -finline-functions $CFLAGS"
 fi
 
 # Program checking
+#
 AC_PROG_INSTALL
 AC_PROG_RANLIB
 AC_PROG_MAKE_SET
@@ -63,11 +66,13 @@ AC_PROG_LIBTOOL
 AC_PATH_PROG(sedpath, sed)
 
 # Header checking
+#
 AC_HEADER_STDC
 AC_HEADER_TIME
 AC_HEADER_STAT
 
 # More header checking
+#
 AC_CHECK_HEADERS(unistd.h string.h getopt.h errno.h fcntl.h assert.h)
 AC_CHECK_HEADERS(sys/types.h sys/stat.h sys/time.h stddef.h)
 AC_CHECK_HEADERS(netinet/in.h netinet/tcp.h xti.h netdb.h)
@@ -76,6 +81,7 @@ AC_CHECK_HEADERS(ncurses.h signal.h ctype.h utime.h)
 AC_CHECK_HEADERS(arpa/inet.h sys/mman.h limits.h termios.h locale.h langinfo.h)
 
 # Data type checking
+#
 AC_TYPE_SIGNAL
 AC_TYPE_SIZE_T
 AC_TYPE_MODE_T
@@ -96,52 +102,54 @@ AC_CHECK_SIZEOF(void *, 0)
 AC_DEFINE_UNQUOTED(SILC_SIZEOF_VOID_P, $ac_cv_sizeof_void_p)
 
 # Function and library checking
-AC_CHECK_FUNC(gethostbyname, ac_gethostbyname_found=1,ac_gethostbyname_found=0)
-if test x$ac_gethostbyname_found = x0; then
+#
+AC_CHECK_FUNC(gethostbyname, [],
+  [
     AC_CHECK_LIB(nsl, gethostbyname, LIBS="$LIBS -lnsl")
-    AC_CHECK_FUNC(res_gethostbyname, ac_res_ghbn_found=1, ac_res_ghbn_found=0)
-    if test x$ac_res_ghbn_found = x0; then
-        AC_CHECK_LIB(resolv, res_gethostbyname,  LIBS="$LIBS -lresolv")
-    fi
-fi
-AC_CHECK_FUNC(socket, ac_socket_found=1, ac_socket_found=0)
-if test x$ac_socket_found = x0; then
-    AC_CHECK_LIB(socket, socket, LIBS="$LIBS -lsocket")
-fi
+    AC_CHECK_FUNC(res_gethostbyname, [],
+       AC_CHECK_LIB(resolv, res_gethostbyname, LIBS="$LIBS -lresolv")
+    )
+  ])
+AC_CHECK_FUNC(socket, [],
+  AC_CHECK_LIB(socket, socket, LIBS="$LIBS -lsocket")
+)
 AC_CHECK_FUNCS(gethostname gethostbyaddr getservbyname getservbyport)
-AC_CHECK_FUNCS(select listen bind shutdown close connect)
-AC_CHECK_FUNCS(fcntl setsockopt time)
-AC_CHECK_FUNCS(chmod stat fstat getenv putenv strerror ctime gettimeofday)
+AC_CHECK_FUNCS(select listen bind shutdown close connect setsockopt)
+AC_CHECK_FUNCS(time ctime utime gettimeofday)
+AC_CHECK_FUNCS(chmod fcntl stat fstat getenv putenv strerror)
 AC_CHECK_FUNCS(getpid getgid getsid getpgid getpgrp getuid)
-AC_CHECK_FUNCS(setgroups initgroups)
-AC_CHECK_FUNCS(strchr strstr strcpy strncpy memcpy memset memmove utime)
-AC_CHECK_FUNCS(pthread_create nl_langinfo)
+AC_CHECK_FUNCS(setgroups initgroups pthread_create nl_langinfo)
+AC_CHECK_FUNCS(strchr strstr strcpy strncpy memcpy memset memmove)
 
 # SIM support checking
 # XXX These needs to be changed as more supported platforms appear.
 # XXX This probably needs to be made platform dependant check.
+#
 sim_support=false
 AC_CHECKING(for SIM support)
 AC_CHECK_HEADERS(dlfcn.h,
   AC_CHECK_LIB(dl, dlopen,
-    AC_DEFINE(SILC_SIM)
-    sim_support=true
-    LIBS="$LIBS -ldl",
- [AC_CHECK_LIB(c, dlopen,
-    AC_DEFINE(SILC_SIM)
-    sim_support=true
-  ]))
-)
+    [
+      AC_DEFINE(SILC_SIM)
+      sim_support=true
+      LIBS="$LIBS -ldl"
+    ],
+    [
+      AC_CHECK_LIB(c, dlopen,
+        [
+          AC_DEFINE(SILC_SIM)
+          sim_support=true
+        ])
+    ])
+  )
 
 AM_CONDITIONAL(SILC_SIM, test x$sim_support = xtrue)
 if test x$sim_support = xtrue; then
-  AC_MSG_RESULT(enabled SIM support)
+  AC_MSG_RESULT(Enabled SIM support.)
 else
-  AC_MSG_RESULT(no SIM support found)
+  AC_MSG_RESULT(No SIM support found.)
 fi
 
-
-#
 # lib/contrib conditionals
 #
 AC_CHECK_HEADER(regex.h, have_regex=1, have_regex=0)
@@ -149,180 +157,200 @@ AM_CONDITIONAL(HAVE_REGEX, test x$have_regex = x1)
 AC_CHECK_FUNC(getopt_long, have_getopt_long=1, have_getopt_long=0)
 AM_CONDITIONAL(HAVE_GETOPT_LONG, test x$have_getopt_long = x1)
 
-#
 # Installation
 #
 
 # Default installation destination
+#
 AC_PREFIX_DEFAULT(/usr/local/silc)
-
 if test "x$prefix" != xNONE; then
-       silc_prefix="$prefix"
+  silc_prefix="$prefix"
 else
-       silc_prefix="$ac_default_prefix"
+  silc_prefix="$ac_default_prefix"
 fi
 
 # etc directory
+#
 if test "x$sysconfdir" != 'x${prefix}/etc'; then
-       ETCDIR="$sysconfdir"
+  ETCDIR="$sysconfdir"
 else
-       ETCDIR="$silc_prefix/etc"
+  ETCDIR="$silc_prefix/etc"
 fi
+
 AC_ARG_WITH(etcdir,
-[  --with-etcdir[=PATH]      Directory for system files [/etc/silc]],
-[ case "$withval" in
-  no)
-    ;;
-  yes)
-    ETCDIR="$withval"
-    ;;
-  *)
-    ETCDIR="$withval"
-    ;;
-  esac ],
-)
+  [  --with-etcdir[=PATH]      Directory for system files [/etc/silc]],
+  [
+    case "$withval" in
+      no)
+        ;;
+      yes)
+        ETCDIR="$withval"
+        ;;
+      *)
+        ETCDIR="$withval"
+        ;;
+    esac
+  ])
 AC_SUBST(ETCDIR)
 AC_DEFINE_UNQUOTED(SILC_ETCDIR, "$ETCDIR")
 
 # help directory
+#
 HELPDIR="$silc_prefix/help"
 AC_ARG_WITH(helpdir,
-[  --with-helpdir[=PATH]     Directory for SILC help files [PREFIX/help]],
-[ case "$withval" in
-  no)
-    ;;
-  yes)
-    HELPDIR="$withval"
-    ;;
-  *)
-    HELPDIR="$withval"
-    ;;
-  esac ],
-)
+  [  --with-helpdir[=PATH]     Directory for SILC help files [PREFIX/help]],
+  [
+    case "$withval" in
+      no)
+        ;;
+      yes)
+        HELPDIR="$withval"
+        ;;
+      *)
+       HELPDIR="$withval"
+       ;;
+    esac
+  ])
 AC_SUBST(HELPDIR)
 AC_DEFINE_UNQUOTED(SILC_HELPDIR, "$HELPDIR")
 
 # doc directory
+#
 DOCDIR="$silc_prefix/doc"
 AC_ARG_WITH(docdir,
-[  --with-docdir[=PATH]      Directory for SILC documentation [PREFIX/doc]],
-[ case "$withval" in
-  no)
-    ;;
-  yes)
-    DOCDIR="$withval"
-    ;;
-  *)
-    DOCDIR="$withval"
-    ;;
-  esac ],
-)
+  [  --with-docdir[=PATH]      Directory for SILC documentation [PREFIX/doc]],
+  [
+    case "$withval" in
+      no)
+        ;;
+      yes)
+        DOCDIR="$withval"
+        ;;
+      *)
+        DOCDIR="$withval"
+        ;;
+    esac
+  ])
 AC_SUBST(DOCDIR)
 AC_DEFINE_UNQUOTED(SILC_DOCDIR, "$DOCDIR")
 
 # SIM modules directory
+#
 MODULESDIR="$silc_prefix/modules"
 AC_ARG_WITH(simdir,
-[  --with-simdir[=PATH]      Directory for SIM modules [PREFIX/modules]],
-[ case "$withval" in
-  no)
-    ;;
-  yes)
-    MODULESDIR="$withval"
-    ;;
-  *)
-    MODULESDIR="$withval"
-    ;;
-  esac ],
-)
+  [  --with-simdir[=PATH]      Directory for SIM modules [PREFIX/modules]],
+  [
+    case "$withval" in
+      no)
+        ;;
+      yes)
+        MODULESDIR="$withval"
+        ;;
+      *)
+        MODULESDIR="$withval"
+        ;;
+    esac
+  ])
 AC_SUBST(MODULESDIR)
 AC_DEFINE_UNQUOTED(SILC_MODULESDIR, "$MODULESDIR")
 
 # Logs directory
+#
 LOGSDIR="$silc_prefix/logs"
 AC_ARG_WITH(logsdir,
-[  --with-logsdir[=PATH]     Directory for Server logs [PREFIX/logs]],
-[ case "$withval" in
-  no)
-    ;;
-  yes)
-    LOGSDIR="$withval"
-    ;;
-  *)
-    LOGSDIR="$withval"
-    ;;
-  esac ],
-)
+  [  --with-logsdir[=PATH]     Directory for Server logs [PREFIX/logs]],
+  [
+    case "$withval" in
+      no)
+        ;;
+      yes)
+        LOGSDIR="$withval"
+        ;;
+      *)
+        LOGSDIR="$withval"
+        ;;
+    esac
+  ])
 AC_SUBST(LOGSDIR)
 AC_DEFINE_UNQUOTED(SILC_LOGSDIR, "$LOGSDIR")
 
 # SOCKS4 support checking
+#
 AC_MSG_CHECKING(whether to support SOCKS4)
 AC_ARG_WITH(socks4,
-[  --with-socks4[=PATH]      Compile with SOCKS4 support],
-[ case "$withval" in
-  no)
+  [  --with-socks4[=PATH]      Compile with SOCKS4 support],
+  [
+    case "$withval" in
+      no)
+        AC_MSG_RESULT(no)
+        ;;
+      *)
+        AC_MSG_RESULT(yes)
+        socks=4
+    
+        if test -d "$withval/include"; then
+          CFLAGS="$CFLAGS -I$withval/include"
+        else
+          CFLAGS="$CFLAGS -I$withval"
+        fi
+        if test -d "$withval/lib"; then
+          withval="-L$withval/lib -lsocks"
+        else
+          withval="-L$withval -lsocks"
+        fi
+    
+        LIBS="$withval $LIBS"
+        AC_TRY_LINK([],
+          [
+            Rconnect();
+          ], [],
+          [
+            AC_MSG_ERROR(Could not find SOCKS4 library.)
+          ])
+        ;;
+    esac
+  ],
     AC_MSG_RESULT(no)
-    ;;
-  *)
-    AC_MSG_RESULT(yes)
-    socks=4
-
-    if test -d "$withval/include"; then
-      CFLAGS="$CFLAGS -I$withval/include"
-    else
-      CFLAGS="$CFLAGS -I$withval"
-    fi
-    if test -d "$withval/lib"; then
-      withval="-L$withval/lib -lsocks"
-    else
-      withval="-L$withval -lsocks"
-    fi
-
-    LIBS="$withval $LIBS"
-
-    AC_TRY_LINK([],
-                [ Rconnect(); ],
-                [],
-                [ AC_MSG_ERROR(Could not find SOCKS4 library.)])
-      ;;
-  esac ],
-  AC_MSG_RESULT(no)
-)
+  )
 
 # SOCKS5 support checking
+#
 AC_MSG_CHECKING(whether to support SOCKS5)
 AC_ARG_WITH(socks5,
-[  --with-socks5[=PATH]      Compile with SOCKS5 support],
-[ case "$withval" in
-  no)
+  [  --with-socks5[=PATH]      Compile with SOCKS5 support],
+  [
+    case "$withval" in
+      no)
+        AC_MSG_RESULT(no)
+        ;;
+      *)
+        AC_MSG_RESULT(yes)
+        socks=5
+
+        if test -d "$withval/include"; then
+          CFLAGS="$CFLAGS -I$withval/include"
+        else
+          CFLAGS="$CFLAGS -I$withval"
+        fi
+        if test -d "$withval/lib"; then
+          withval="-L$withval/lib -lsocks5"
+        else
+          withval="-L$withval -lsocks5"
+        fi
+
+        LIBS="$withval $LIBS"
+        AC_TRY_LINK([],
+          [
+            SOCKSconnect();
+          ], [],
+          [
+            AC_MSG_ERROR(Could not find SOCKS5 library.)
+          ])
+        ;;
+    esac
+  ],
     AC_MSG_RESULT(no)
-    ;;
-  *)
-    AC_MSG_RESULT(yes)
-    socks=5
-
-    if test -d "$withval/include"; then
-      CFLAGS="$CFLAGS -I$withval/include"
-    else
-      CFLAGS="$CFLAGS -I$withval"
-    fi
-    if test -d "$withval/lib"; then
-      withval="-L$withval/lib -lsocks5"
-    else
-      withval="-L$withval -lsocks5"
-    fi
-
-    LIBS="$withval $LIBS"
-
-    AC_TRY_LINK([],
-                [ SOCKSconnect(); ],
-                [],
-                [ AC_MSG_ERROR(Could not find SOCKS5 library.)])
-      ;;
-  esac ],
-  AC_MSG_RESULT(no)
-)
+  )
 
 if test "x$socks" = "x4"; then
   AC_DEFINE(SOCKS)
@@ -355,256 +383,300 @@ if test "x$socks" = "x5"; then
   AC_DEFINE(Rgethostbyname, SOCKSgethostbyname)
 fi
 
-#
 # MP library checking. First check whether user wants to use GMP and use
 # it if found. If not or not defined then compile the MPI library in the
 # source tree.
 #
+mp_gmp=false
 AC_MSG_CHECKING(whether to support GMP)
 AC_ARG_WITH(gmp,
-[  --with-gmp[=PATH]         Compile with GMP support instead of MPI],
-[ case "$withval" in
-  no)
+  [  --with-gmp[=PATH]         Compile with GMP support instead of MPI],
+  [
+    case "$withval" in
+      no)
+        AC_MSG_RESULT(no)
+        ;;
+      *)
+        AC_MSG_RESULT(yes)
+    
+        if test -d "$withval/include"; then
+          CFLAGS="$CFLAGS -I$withval/include"
+        else
+          CFLAGS="$CFLAGS -I$withval"
+        fi
+        if test -d "$withval/lib"; then
+          withval="-L$withval/lib -lgmp"
+        else
+          withval="-L$withval -lgmp"
+        fi
+    
+        LIBS="$withval $LIBS"
+        AC_CHECK_LIB(gmp, __gmpz_init,
+          [
+            mp_gmp=true
+            AC_DEFINE(SILC_MP_GMP)
+            AC_MSG_RESULT(Using GMP as MP library.)
+          ])
+        ;;
+    esac
+  ],
     AC_MSG_RESULT(no)
-    mp_gmp=false
-    ;;
-  *)
-    AC_MSG_RESULT(yes)
-
-    if test -d "$withval/include"; then
-      CFLAGS="$CFLAGS -I$withval/include"
-    else
-      CFLAGS="$CFLAGS -I$withval"
-    fi
-    if test -d "$withval/lib"; then
-      withval="-L$withval/lib -lgmp"
-    else
-      withval="-L$withval -lgmp"
-    fi
-
-    LIBS="$withval $LIBS"
-    mp_gmp=false
-    AC_CHECK_LIB(gmp, __gmpz_init,
-      mp_gmp=true
-      AC_DEFINE(SILC_MP_GMP)
-      AC_MSG_RESULT(Using GMP as MP library)
-    )
-      ;;
-  esac ],
-  AC_MSG_RESULT(no)
-  mp_gmp=false
-)
+  )
 
 AM_CONDITIONAL(SILC_MP_GMP, test x$mp_gmp = xtrue)
 AM_CONDITIONAL(SILC_MP_NSS_MPI, test x$mp_gmp = xfalse)
 if test x$mp_gmp = xfalse; then
   AC_DEFINE(SILC_MP_NSS_MPI)
-  AC_MSG_RESULT(Using NSS MPI as MP library)
+  AC_MSG_RESULT(Using NSS MPI as MP library.)
+fi
+
+# iconv support
+#
+AC_ARG_WITH(iconv,
+  [  --with-iconv[=PATH]       Search for libiconv in DIR/include and DIR/lib],
+  [
+    for dir in `echo "$withval" | tr : ' '`; do
+      if test -d $dir/include; then
+        CPPFLAGS="$CPPFLAGS -I$dir/include"
+        CFLAGS="$CFLAGS -I$dir/include"
+      fi
+      if test -d $dir/lib; then
+        LDFLAGS="$LDFLAGS -L$dir/lib"
+      fi
+    done
+  ])
+
+AC_CHECK_HEADER(iconv.h,
+  [
+    AC_DEFINE(HAVE_ICONV_H, 1, [Define if you have the iconv.h header.])
+    AC_CHECK_FUNC(iconv, ac_iconv_found=1,
+      [
+        LIBS="$LIBS -liconv"
+        AC_MSG_CHECKING(for iconv in -liconv)
+        AC_TRY_LINK(
+          [
+            #include <stdlib.h>
+            #include <iconv.h>
+          ],
+          [
+            iconv_t cd = iconv_open("", "");
+            iconv(cd, NULL, NULL, NULL, NULL);
+            iconv_close(cd);
+          ],
+          [
+            echo "yes"
+            AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
+          ])
+      ])
+   ])
+
+if test x$ac_iconv_found = x1; then
+
+  # (1) Some implementations of iconv won't convert from UTF-8 to UTF-8.
+  # (2) In glibc-2.1.2 and earlier there is a bug that messes up ob and
+  #     obl when args 2 and 3 are 0 (fixed in glibc-2.1.3).
+  #
+  AC_CACHE_CHECK([whether this iconv is good enough], ac_iconv_good,
+    AC_TRY_RUN(
+      [
+        #include <iconv.h>
+        int main() {
+          iconv_t cd;
+        changequote(, )dnl
+          char buf[4];
+        changequote([, ])dnl
+          char *ob;
+          size_t obl;
+          ob = buf, obl = sizeof(buf);
+          return ((cd = iconv_open("UTF-8", "UTF-8")) != (iconv_t)(-1) &&
+                 (iconv(cd, 0, 0, &ob, &obl) ||
+                 !(ob == buf && obl == sizeof(buf)) ||
+                 iconv_close(cd)));
+        }
+      ],
+      [
+        ac_iconv_good=yes
+      ],
+      [
+        ac_iconv_good=no
+      ],
+      [
+        ac_iconv_good=yes
+      ])
+    )
+
+  if test x$ac_iconv_good = xno; then
+    AC_MSG_ERROR(Try using libiconv instead.)
+  fi
 fi
 
+# silcd config file checking
+#
 AC_ARG_WITH(silcd-config-file,
-[  --with-silcd-config-file[=PATH]
+  [  --with-silcd-config-file[=PATH]
                           Use PATH as default configuration file in SILC
                           server [/etc/silc/silcd.conf]],
-[ AC_DEFINE_UNQUOTED(SILC_SERVER_CONFIG_FILE, "$withval") ])
+    AC_DEFINE_UNQUOTED(SILC_SERVER_CONFIG_FILE, "$withval")
+  )
 
+# silcd pid file checking
+#
 if test "x$localstatedir" != 'x${prefix}/var'; then
-       PIDFILE="$localstatedir/silcd.pid"
+  PIDFILE="$localstatedir/silcd.pid"
 else
-       PIDFILE="$silc_prefix/var/silcd.pid"
+  PIDFILE="$silc_prefix/var/silcd.pid"
 fi
+
 AC_ARG_WITH(silcd-pid-file,
-[  --with-silcd-pid-file[=PATH]
+  [  --with-silcd-pid-file[=PATH]
                           Use PATH as default pid file in SILC
                           server [/var/run/silcd.pid]],
-[ case "$withval" in
-       no)
-               ;;
-       yes)
-               PIDFILE="$withval"
-               ;;
-       *)
-               PIDFILE="$withval"
-               ;;
-       esac ],
-)
+  [
+    case "$withval" in
+      no)
+        ;;
+      yes)
+        PIDFILE="$withval"
+       ;;
+      *)
+        PIDFILE="$withval"
+        ;;
+    esac
+  ])
 AC_SUBST(PIDFILE)
 
-#
 # Native WIN32 compilation under cygwin
 #
 AC_ARG_WITH(win32,
-[  --with-win32            Compile native WIN32 code (-mno-cygwin)],
-[ AC_DEFINE(SILC_WIN32)
-  win32_support=true
-  CFLAGS="-mno-cygwin $CFLAGS"
-  LIBS="$LIBS -lwsock32" ])
-
+  [  --with-win32            Compile native WIN32 code (-mno-cygwin)],
+  [
+    AC_DEFINE(SILC_WIN32)
+    win32_support=true
+    CFLAGS="-mno-cygwin $CFLAGS"
+    LIBS="$LIBS -lwsock32"
+  ])
 AM_CONDITIONAL(SILC_WIN32, test x$win32_support = xtrue)
 
-#
 # Native EPOC support (disabled by default)
 #
 AM_CONDITIONAL(SILC_EPOC, test xfalse = xtrue)
 
-#
 # Native BeOS support (disabled by default)
 #
 AM_CONDITIONAL(SILC_BEOS, test xfalse = xtrue)
 
-#
 # Native OS2 support (disabled by default)
 #
 AM_CONDITIONAL(SILC_OS2, test xfalse = xtrue)
 
-#
 # --without-irssi
 #
 without_irssi=false
 AC_ARG_WITH(irssi,
-[  --without-irssi         Compile without Irssi SILC Client],
-[ without_irssi=true
-  SILC_DIST_SUBDIRS=`echo $SILC_DIST_SUBDIRS | $sedpath -e 's/irssi//'`
-])
+  [  --without-irssi         Compile without Irssi SILC Client],
+  [
+    without_irssi=true
+    SILC_DIST_SUBDIRS=`echo $SILC_DIST_SUBDIRS | $sedpath -e 's/irssi//'`
+  ])
 
-#
 # --without-silcd
 #
 without_silcd=false
 AC_ARG_WITH(silcd,
-[  --without-silcd         Compile without SILC Server],
-[ without_silcd=true
-  SILC_DIST_SUBDIRS=`echo $SILC_DIST_SUBDIRS | $sedpath -e 's/silcd//'`
-])
+  [  --without-silcd         Compile without SILC Server],
+  [
+    without_silcd=true
+    SILC_DIST_SUBDIRS=`echo $SILC_DIST_SUBDIRS | $sedpath -e 's/silcd//'`
+  ])
 
-#
-# IPv6 support
-#
-AC_MSG_CHECKING(for IPv6 support)
-AC_ARG_ENABLE(ipv6,
-[  --enable-ipv6           Enable IPv6 support],
-[ case "${enableval}" in
-  yes)
-    want_ipv6=true
-    check_ipv6=false
-    AC_DEFINE(HAVE_IPV6)
-    AC_MSG_RESULT(yes)
-    ;;
-  *)
-    want_ipv6=false
-    check_ipv6=false
-    AC_MSG_RESULT(no)
-    ;;
-esac ], check_ipv6=true)
-
-if test x$check_ipv6 = xtrue; then
-  AC_TRY_COMPILE([#ifdef HAVE_NETINET_TCP_H
-                 #include <netinet/tcp.h>
-                 #endif
-                 #ifdef HAVE_NETDB_H
-                 #include <netdb.h>
-                 #endif
-                 #include <sys/socket.h>
-                 #ifdef HAVE_NETDB_IN_H
-                 #include <netinet/in.h>
-                 #endif],
-                 [struct sockaddr_in6 sin6;
-                  int family = AF_INET6;
-                 ], [AC_DEFINE(HAVE_IPV6)
-                     AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no)])
-fi
-
-#
-# Debug checking
-#
-AC_MSG_CHECKING(for enabled debugging)
-AC_ARG_ENABLE(debug,
-[  --enable-debug          Enable debugging],
-[ case "${enableval}" in
-  yes)
-    AC_MSG_RESULT(yes)
-    AC_DEFINE(SILC_DEBUG)
-    CFLAGS="-O -g $CFLAGS"
-    ;;
-  *)
-    AC_MSG_RESULT(no)
-    CFLAGS="-O2 -g $CFLAGS"
-    ;;
-esac ], CFLAGS="-O2 -g $CFLAGS"
-        AC_MSG_RESULT(no))
-
-AC_MSG_CHECKING(for enabled stack tracing)
-AC_ARG_ENABLE(stack-trace,
-[  --enable-stack-trace    Enable memory stack trace],
-[ case "${enableval}" in
-  yes)
-    AC_MSG_RESULT(yes)
-    AC_DEFINE(SILC_STACKTRACE)
-    ;;
-  *)
-    AC_MSG_RESULT(no)
-    ;;
-esac ], AC_MSG_RESULT(no))
-
-#
 # Disable all assembler optimizations
 #
 AC_ARG_ENABLE(asm,
-[  --disable-asm           Do not use assembler optimizations ],
-[])
+  [  --disable-asm           Do not use assembler optimizations ])
 
-#
 # Threads support
 #
+want_threads=false
 AC_ARG_ENABLE(threads,
-[  --disable-threads       Do not compile with multi-thread support],
-[ case "${enableval}" in
-  yes)
-    want_threads=true
-    check_threads=true
-    ;;
-  *)
-    want_threads=false
-    check_threads=false
-    ;;
-esac ])
+  [  --disable-threads       Do not compile with multi-thread support ],
+  [
+    case "${enableval}" in
+      yes)
+        want_threads=true
+        check_threads=true
+        ;;
+      *)
+        check_threads=false
+        ;;
+    esac
+  ])
 
 if test x$check_threads = xtrue; then
-want_threads=false
 AC_CHECK_HEADERS(pthread.h,
-       [ AC_DEFINE(SILC_HAVE_PTHREAD)
-          want_threads=true ],
-       [ if test -f /usr/pkg/include/pthread.h ; then
-           AC_DEFINE(SILC_HAVE_PTHREAD)
-           AC_MSG_RESULT(Found pthread.h in /usr/pkg/include/)
-           CFLAGS="$CFLAGS -I/usr/pkg/include"
-            want_threads=true
-          elif test -f /usr/contrib/include/pthread.h ; then
-           AC_DEFINE(SILC_HAVE_PTHREAD)
-           AC_MSG_RESULT(Found pthread.h in /usr/contrib/include/)
-           CFLAGS="$CFLAGS -I/usr/contrib/include"
-            want_threads=true
-          fi
-       ])
+  [
+    AC_DEFINE(SILC_HAVE_PTHREAD)
+    want_threads=true
+  ],
+  [
+    if test -f /usr/pkg/include/pthread.h ; then
+      AC_DEFINE(SILC_HAVE_PTHREAD)
+      want_threads=true
+      AC_MSG_RESULT(Found pthread.h in /usr/pkg/include/)
+      CFLAGS="$CFLAGS -I/usr/pkg/include"
+    elif test -f /usr/contrib/include/pthread.h ; then
+      AC_DEFINE(SILC_HAVE_PTHREAD)
+      want_threads=true
+      AC_MSG_RESULT(Found pthread.h in /usr/contrib/include/)
+      CFLAGS="$CFLAGS -I/usr/contrib/include"
+    fi
+  ])
 fi
 
 AM_CONDITIONAL(SILC_THREADS, test x$want_threads = xtrue)
 if test x$want_threads = xtrue; then
   TMP_LIBS="$LIBS"
   LIBS="-lpthread"
-  AC_TRY_LINK([#include <pthread.h>],
-             [pthread_attr_t attr; pthread_attr_init(&attr);],
-  AC_DEFINE(SILC_THREADS),
-  LIBS="-L/usr/pkg/lib -lpthread"
-  AC_TRY_LINK([#include <pthread.h>],
-             [pthread_attr_t attr; pthread_attr_init(&attr);],
-  AC_DEFINE(SILC_THREADS),
-  LIBS="-L/usr/contrib/lib -lpthread"
-  AC_TRY_LINK([#include <pthread.h>],
-             [pthread_attr_t attr; pthread_attr_init(&attr);],
-  AC_DEFINE(SILC_THREADS),
-  LIBS=""
-  )))
+  AC_TRY_LINK(
+    [
+      #include <pthread.h>
+    ],
+    [
+      pthread_attr_t attr;
+      pthread_attr_init(&attr);
+    ],
+    [
+      AC_DEFINE(SILC_THREADS)
+    ],
+    [
+      LIBS="-L/usr/pkg/lib -lpthread"
+      AC_TRY_LINK(
+        [
+          #include <pthread.h>
+        ],
+       [
+          pthread_attr_t attr;
+          pthread_attr_init(&attr);
+        ],
+        [
+          AC_DEFINE(SILC_THREADS)
+        ],
+        [
+          LIBS="-L/usr/contrib/lib -lpthread"
+          AC_TRY_LINK(
+            [
+              #include <pthread.h>
+            ],
+            [
+              pthread_attr_t attr;
+              pthread_attr_init(&attr);
+            ],
+            [
+              AC_DEFINE(SILC_THREADS)
+            ],
+              LIBS=""
+            )
+         ])
+    ])
 
   CFLAGS="$CFLAGS -D_REENTRANT"
   case $host in
@@ -627,87 +699,107 @@ if test x$want_threads = xtrue; then
     *-dg-dgux*)  # DG/UX
       CFLAGS="$CFLAGS -D_POSIX4A_DRAFT10_SOURCE"
       ;;
-    esac
-
+  esac
   LIBS="$TMP_LIBS $LIBS"
 fi
 
-
-#
-# iconv support
+# IPv6 support
 #
-AC_ARG_WITH(iconv,
-[  --with-iconv[=PATH]       Search for libiconv in DIR/include and DIR/lib],
-[      for dir in `echo "$withval" | tr : ' '`; do
-               if test -d $dir/include; then
-                       CPPFLAGS="$CPPFLAGS -I$dir/include"
-                       CFLAGS="$CFLAGS -I$dir/include"
-               fi
-               if test -d $dir/lib; then LDFLAGS="$LDFLAGS -L$dir/lib"; fi
-       done
-])
-
-AC_CHECK_HEADER(iconv.h,
-       AC_DEFINE(HAVE_ICONV_H, 1, [Define if you have the iconv.h header.])
-       [AC_CHECK_FUNC(iconv, ac_iconv_found=1,
-               [ LIBS="$LIBS -liconv"
-               AC_MSG_CHECKING(for iconv in -liconv)
-               AC_TRY_LINK([#include <stdlib.h>
-#include <iconv.h>],
-               [iconv_t cd = iconv_open("","");
-                iconv(cd,NULL,NULL,NULL,NULL);
-                iconv_close(cd);
-               ], echo "yes"
-                  AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.]), 
-                  ac_iconv_found=0)]
-       )], [ac_iconv_h_found=0]
-)
-
-#if test x$ac_iconv_found = x0 -o x$ac_iconv_h_found = x0; then
-#      AC_MSG_ERROR([Unable to find an iconv support. See INSTALL for help.])
-#fi
-
-if test x$ac_iconv_found = x1; then
+AC_MSG_CHECKING(for IPv6 support)
+AC_ARG_ENABLE(ipv6,
+  [  --enable-ipv6           Enable IPv6 support],
+  [
+    case "${enableval}" in
+      yes)
+        want_ipv6=true
+        check_ipv6=false
+        AC_DEFINE(HAVE_IPV6)
+        AC_MSG_RESULT(yes)
+        ;;
+      *)
+        want_ipv6=false
+        check_ipv6=false
+        AC_MSG_RESULT(no)
+        ;;
+    esac
+  ],
+    check_ipv6=true
+  )
 
-# (1) Some implementations of iconv won't convert from UTF-8 to UTF-8.
-# (2) In glibc-2.1.2 and earlier there is a bug that messes up ob and
-#     obl when args 2 and 3 are 0 (fixed in glibc-2.1.3).
-AC_CACHE_CHECK([whether this iconv is good enough], ac_iconv_good,
-        AC_TRY_RUN([
-#include <iconv.h>
-int main()
-{
-  iconv_t cd;
-changequote(, )dnl
-  char buf[4];
-changequote([, ])dnl
-  char *ob;
-  size_t obl;
-  ob = buf, obl = sizeof(buf);
-  return ((cd = iconv_open("UTF-8", "UTF-8")) != (iconv_t)(-1) &&
-          (iconv(cd, 0, 0, &ob, &obl) ||
-           !(ob == buf && obl == sizeof(buf)) ||
-           iconv_close(cd)));
-}
-                ],
-                ac_iconv_good=yes,
-                ac_iconv_good=no,
-                ac_iconv_good=yes)
-)
-if test x$ac_iconv_good = xno; then
-  AC_MSG_ERROR(Try using libiconv instead.)
+if test x$check_ipv6 = xtrue; then
+  AC_TRY_COMPILE(
+    [
+      #ifdef HAVE_NETINET_TCP_H
+      #include <netinet/tcp.h>
+      #endif
+      #ifdef HAVE_NETDB_H
+      #include <netdb.h>
+      #endif
+      #include <sys/socket.h>
+      #ifdef HAVE_NETDB_IN_H
+      #include <netinet/in.h>
+      #endif
+    ],
+    [
+      struct sockaddr_in6 sin6;
+      int family = AF_INET6;
+    ],
+    [
+      AC_DEFINE(HAVE_IPV6)
+      AC_MSG_RESULT(yes)
+    ],
+      AC_MSG_RESULT(no)
+    )
 fi
 
-fi # iconv
-
+# Debug checking
+#
+AC_MSG_CHECKING(for enabled debugging)
+AC_ARG_ENABLE(debug,
+  [  --enable-debug          Enable debugging],
+  [
+    case "${enableval}" in
+      yes)
+        AC_MSG_RESULT(yes)
+        AC_DEFINE(SILC_DEBUG)
+        CFLAGS="-O -g $CFLAGS"
+      ;;
+    *)
+      AC_MSG_RESULT(no)
+      CFLAGS="-O2 -g $CFLAGS"
+      ;;
+    esac
+  ],
+  [
+    CFLAGS="-O2 -g $CFLAGS"
+    AC_MSG_RESULT(no)
+  ])
 
+# Stack trace checking
 #
+AC_MSG_CHECKING(for enabled stack tracing)
+AC_ARG_ENABLE(stack-trace,
+  [  --enable-stack-trace    Enable memory stack trace],
+  [
+    case "${enableval}" in
+    yes)
+      AC_MSG_RESULT(yes)
+      AC_DEFINE(SILC_STACKTRACE)
+      ;;
+    *)
+      AC_MSG_RESULT(no)
+      ;;
+    esac
+  ],
+    AC_MSG_RESULT(no)
+  )
+
 # Other configure scripts
 #
 if test x$without_irssi = xfalse; then
   if test "x$silc_dist" = "xsilc-client" ||
      test "x$silc_dist" = "xsilc-toolkit"; then
-  AC_CONFIG_SUBDIRS(irssi)
+    AC_CONFIG_SUBDIRS(irssi)
   fi
 fi
 
@@ -723,7 +815,6 @@ INCLUDE_DEFINES_INT="include \$(top_srcdir)/Makefile.defines_int"
 AC_SUBST(INCLUDE_DEFINES_INT)
 AC_SUBST(SILC_DIST_SUBDIRS)
 
-#
 # Makefile outputs
 #
 AC_CONFIG_FILES(
@@ -754,30 +845,30 @@ doc/example_silcd.conf
 
 if test "x$silc_dist" = "xsilc-client" ||
    test "x$silc_dist" = "xsilc-toolkit"; then
-AC_CONFIG_FILES(lib/silcclient/Makefile)
+  AC_CONFIG_FILES(lib/silcclient/Makefile)
 fi
 
 if test x$without_irssi = xfalse ; then
-if test "x$silc_dist" = "xsilc-client" ||
-   test "x$silc_dist" = "xsilc-toolkit"; then
-AC_CONFIG_FILES(
+  if test "x$silc_dist" = "xsilc-client" ||
+     test "x$silc_dist" = "xsilc-toolkit"; then
+    AC_CONFIG_FILES(
 irssi/Makefile.defines
 irssi/Makefile.defines_int
 )
-fi
+  fi
 fi
 
 if test x$without_silcd = xfalse ; then
-if test "x$silc_dist" = "xsilc-server" ||
-   test "x$silc_dist" = "xsilc-toolkit"; then
-AC_CONFIG_FILES(
+  if test "x$silc_dist" = "xsilc-server" ||
+     test "x$silc_dist" = "xsilc-toolkit"; then
+    AC_CONFIG_FILES(
 silcd/Makefile
 )
-fi
+  fi
 fi
 
 if test "x$silc_dist" = "xsilc-toolkit"; then
-AC_CONFIG_FILES(
+  AC_CONFIG_FILES(
 silc/Makefile
 win32/Makefile
 win32/libsilc/Makefile