Fix installation for silc-client and silc-toolkit packages
[silc.git] / configure.ad
index 1ede5e3075984a99ebfb9a3b94fcd1113f876c87..3bac080fdae8d7adc376bc4cf6f6777ec085d8c8 100644 (file)
@@ -3,7 +3,7 @@
 #
 #  Author: Pekka Riikonen <priikone@silcnet.org>
 #
-#  Copyright (C) 2000 - 2007 Pekka Riikonen
+#  Copyright (C) 2000 - 2007, 2009 Pekka Riikonen
 #
 #  This program is free software; you can redistribute it and/or modify
 #  it under the terms of the GNU General Public License as published by
@@ -33,7 +33,7 @@ AC_PATH_PROG(sedpath, sed)
 # Put here any platform specific stuff
 #
 case "$target" in
-  *-*-linux*)
+  *-*-linux*|*-k*bsd*-gnu)
     check_threads=true
     CFLAGS=`echo $CFLAGS -D_GNU_SOURCE`
     ;;
@@ -43,9 +43,15 @@ case "$target" in
   *-*-netbsd*)
     check_threads=true
     ;;
+  *-*-openbsd*)
+    check_threads=true
+    ;;
   *-*-*bsd*)
     check_threads=false
     ;;
+  *-*-*darwin*)
+    check_threads=true
+    ;;
   *)
     check_threads=true
     ;;
@@ -207,9 +213,9 @@ AC_CHECK_FUNC(socket, [],
 AC_CHECK_FUNCS(gethostname gethostbyaddr getservbyname getservbyport)
 AC_CHECK_FUNCS(poll select listen bind shutdown close connect setsockopt)
 AC_CHECK_FUNCS(setrlimit time ctime utime gettimeofday getrusage)
-AC_CHECK_FUNCS(chmod fcntl stat fstat getenv putenv strerror)
+AC_CHECK_FUNCS(chmod fcntl stat fstat getenv putenv strerror posix_memalign)
 AC_CHECK_FUNCS(getpid getgid getsid getpgid getpgrp getuid sched_yield)
-AC_CHECK_FUNCS(setgroups initgroups nl_langinfo nanosleep)
+AC_CHECK_FUNCS(setgroups initgroups nl_langinfo nanosleep backtrace)
 AC_CHECK_FUNCS(strchr snprintf strstr strcpy strncpy memcpy memset memmove)
 
 # lib/contrib conditionals
@@ -361,11 +367,22 @@ have_assembler=false
 if test x$want_asm = xtrue; then
   AC_PATH_PROG([NASM], [nasm], [no])
   if test "x$NASM" != "xno"; then
-    if test x$cpu_x86_64 = xtrue; then
-      SILC_ASSEMBLER="$NASM -O2 -felf64"
-    else
-      SILC_ASSEMBLER="$NASM -O2 -felf"
-    fi
+    case "$target" in
+      *-*-*darwin*)
+        if test x$cpu_x86_64 = xtrue; then
+          SILC_ASSEMBLER="$NASM -O2 -fmacho64"
+        else
+          SILC_ASSEMBLER="$NASM -O2 -fmacho"
+        fi
+        ;;
+      *)
+        if test x$cpu_x86_64 = xtrue; then
+          SILC_ASSEMBLER="$NASM -O2 -felf64"
+        else
+          SILC_ASSEMBLER="$NASM -O2 -felf"
+        fi
+        ;;
+    esac
     have_assembler=true
   fi
 
@@ -374,7 +391,7 @@ if test x$want_asm = xtrue; then
     if test x$cpu_x86_64 = xtrue; then
       SILC_ASSEMBLER="$YASM -Xgnu -felf64"
     else
-      SILC_ASSEMBLER="$YASM -Xgnu -felf64"
+      SILC_ASSEMBLER="$YASM -Xgnu -felf"
     fi
     have_assembler=true
   fi
@@ -456,7 +473,7 @@ if test x$va_copy = xfalse; then
 fi
 
 if test x$va_copy = xfalse; then
-  AC_RUN_IFELSE(
+  AC_RUN_IFELSE([AC_LANG_SOURCE(
     [
       #include <stdarg.h>
       #include <stdlib.h>
@@ -475,7 +492,7 @@ if test x$va_copy = xfalse; then
       {
         return t(0, 0xff11);
       }
-    ],
+    ])],
     [va_copy=false],
     [
       AC_DEFINE([SILC_VA_COPY_ARRAY], [], [SILC_VA_COPY_ARRAY])
@@ -906,7 +923,8 @@ AC_ARG_WITH(iconv,
     AC_MSG_RESULT(no)
     AC_CHECK_HEADERS(iconv.h,
       [
-        AC_CHECK_FUNCS(iconv,
+       # Default check for iconv in C-library
+        AC_CHECK_FUNCS(iconv iconv_open iconv_close,
           [
             has_iconv=true
             check_iconv=false
@@ -915,6 +933,7 @@ AC_ARG_WITH(iconv,
   ])
 
 if test x$check_iconv = xtrue; then
+  # Check for iconv in libiconv installed under /usr
   AC_MSG_RESULT(Searching for iconv...)
 
   # XXX
@@ -923,6 +942,10 @@ if test x$check_iconv = xtrue; then
   AC_CHECK_HEADERS(iconv.h,
     [
       LIBS="$LIBS -liconv"
+      LDFLAGS="$LDFLAGS -L/usr/lib"
+      CFLAGS="$CFLAGS -I/usr/include"
+      CPPLAGS="$CPPFLAGS -I/usr/include"
+
       AC_MSG_CHECKING(for iconv in -liconv)
       AC_TRY_LINK(
         [
@@ -951,13 +974,13 @@ if test x$check_iconv = xtrue; then
 fi
 
 if test x$check_iconv = xtrue; then
-  # search for iconv library..
+  # Search for iconv library somewhere else...
   SAVE_LIBS="$LIBS"
   SAVE_CFLAGS="$CFLAGS"
   SAVE_LDFLAGS="$LDFLAGS"
   SAVE_CPPFLAGS="$CPPFLAGS"
 
-  for dir in `echo "/usr/local /usr/pkg /usr/contrib"`; do
+  for dir in `echo "/usr/local /usr/pkg /usr/contrib /opt/local"`; do
     if test x$has_iconv = xfalse; then
       AC_MSG_RESULT(searching in $dir...)
 
@@ -1015,7 +1038,7 @@ if test x$has_iconv = xtrue; then
   # (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_CACHE_CHECK([whether this iconv is good enough], ac_cv_iconv_good,
     AC_TRY_RUN(
       [
         #include <iconv.h>
@@ -1034,17 +1057,17 @@ if test x$has_iconv = xtrue; then
         }
       ],
       [
-        ac_iconv_good=yes
+        ac_cv_iconv_good=yes
       ],
       [
-        ac_iconv_good=no
+        ac_cv_iconv_good=no
       ],
       [
-        ac_iconv_good=yes
+        ac_cv_iconv_good=yes
       ])
     )
 
-  if test x$ac_iconv_good = xno; then
+  if test x$ac_cv_iconv_good = xno; then
     AC_MSG_RESULT(Try using libiconv instead.)
   fi
 fi
@@ -1175,7 +1198,7 @@ if test x$has_threads = xtrue; then
   # Check for read/write locks
   AC_CHECK_FUNC(pthread_rwlock_init,
   [
-    AC_RUN_IFELSE(
+    AC_RUN_IFELSE([AC_LANG_SOURCE(
       [
         #include <pthread.h>
         int main()
@@ -1185,7 +1208,7 @@ if test x$has_threads = xtrue; then
           pthread_rwlock_destroy(&rwlock);
           return 0;
         }
-      ],
+      ])],
       [],
       [
        # Rwlock not defined
@@ -1207,7 +1230,7 @@ fi
 # Check for timezone and tm_gmtoff for timezone information
 #
 AC_MSG_CHECKING(whether system has timezone)
-AC_RUN_IFELSE(
+AC_RUN_IFELSE([AC_LANG_SOURCE(
   [
     #include <stdio.h>
     #include <time.h>
@@ -1216,14 +1239,14 @@ AC_RUN_IFELSE(
       timezone = 0;
       return 0;
     }
-  ],
+  ])],
   [ AC_MSG_RESULT(yes)
     AC_DEFINE([HAVE_TIMEZONE], [], [HAVE_TIMEZONE]) ],
   [ AC_MSG_RESULT(no) ],
   [ AC_MSG_RESULT(no) ]
 )
 AC_MSG_CHECKING(whether system has tm_gmtoff)
-AC_RUN_IFELSE(
+AC_RUN_IFELSE([AC_LANG_SOURCE(
   [
     #include <stdio.h>
     #include <time.h>
@@ -1233,14 +1256,14 @@ AC_RUN_IFELSE(
       tm.tm_gmtoff = 0;
       return 0;
     }
-  ],
+  ])],
   [ AC_MSG_RESULT(yes)
     AC_DEFINE([HAVE_TM_GMTOFF], [], [HAVE_TM_GMTOFF]) ],
   [ AC_MSG_RESULT(no) ],
   [ AC_MSG_RESULT(no) ]
 )
 AC_MSG_CHECKING(whether system has __tm_gmtoff)
-AC_RUN_IFELSE(
+AC_RUN_IFELSE([AC_LANG_SOURCE(
   [
     #include <stdio.h>
     #include <time.h>
@@ -1250,14 +1273,14 @@ AC_RUN_IFELSE(
       tm.__tm_gmtoff = 0;
       return 0;
     }
-  ],
+  ])],
   [ AC_MSG_RESULT(yes)
     AC_DEFINE([HAVE___TM_GMTOFF], [], [HAVE___TM_GMTOFF]) ],
   [ AC_MSG_RESULT(no) ],
   [ AC_MSG_RESULT(no) ]
 )
 AC_MSG_CHECKING(whether system has __tm_gmtoff__)
-AC_RUN_IFELSE(
+AC_RUN_IFELSE([AC_LANG_SOURCE(
   [
     #include <stdio.h>
     #include <time.h>
@@ -1267,7 +1290,7 @@ AC_RUN_IFELSE(
       tm.__tm_gmtoff__ = 0;
       return 0;
     }
-  ],
+  ])],
   [ AC_MSG_RESULT(yes)
     AC_DEFINE([HAVE___TM_GMTOFF__], [], [HAVE___TM_GMTOFF__]) ],
   [ AC_MSG_RESULT(no) ],
@@ -1314,18 +1337,6 @@ without_irssi=false
 without_silcd=false
 #endif SILC_DIST_INPLACE
 
-libtoolfix=true
-AC_MSG_CHECKING(whether to do libtoolfix)
-AC_ARG_WITH(libtoolfix,
-  [  --without-libtoolfix    Do not fix libtool, for package builders],
-  [
-    AC_MSG_RESULT(no)
-    libtoolfix=false
-  ],
-  [
-    AC_MSG_RESULT(yes)
-  ])
-
 AC_SUBST(ETCDIR)
 AC_DEFINE_UNQUOTED([SILC_ETCDIR], "$ETCDIR", [SILC_ETCDIR])
 #endif SILC_DIST_COMPILER
@@ -1356,16 +1367,6 @@ AC_SUBST(__SILC_HAVE_SIM)
 AC_SUBST(__SILC_ENABLE_DEBUG)
 AC_SUBST(__SILC_PACKAGE_VERSION)
 
-#
-# Fix the libtool to support run-time configuration.  This allows us
-# to in run-time specify when to compile shared/static libraries without
-# need to reconfigure the entire libtool.
-#
-if test x$libtoolfix = xtrue; then
-  ./libtoolfix $SILC_TOP_SRCDIR/ltmain.sh
-fi
-AM_CONDITIONAL(SILC_LIBTOOLFIX, test x$libtoolfix = xtrue)
-
 INCLUDE_DEFINES_INT="include \$(top_srcdir)/Makefile.defines_int"
 AC_SUBST(INCLUDE_DEFINES_INT)
 
@@ -1405,6 +1406,7 @@ tutorial/Makefile.defines_int
 AC_OUTPUT
 
 #ifdef SILC_DIST_COMPILER
+
 s_bindir=`eval echo $bindir`;s_bindir=`eval echo $s_bindir`
 s_sbindir=`eval echo $sbindir`;s_sbindir=`eval echo $s_sbindir`
 s_mandir=`eval echo $mandir`;s_mandir=`eval echo $s_mandir`
@@ -1412,7 +1414,7 @@ s_includedir=`eval echo $includedir`;s_includedir=`eval echo $s_includedir`
 
 echo ""
 echo "$PACKAGE Configuration Summary:"
-echo "---------------------------"
+echo "-------------------------------------"
 echo " Target host ...................: $target"
 echo " Compiler ......................: $CC"
 echo " CFLAGS ........................: $CFLAGS"