X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=configure.ad;h=3bac080fdae8d7adc376bc4cf6f6777ec085d8c8;hb=refs%2Fheads%2Fsilc.1.1.branch;hp=4dd8e659b18c83e6fc96cc292b7def4e87e0a0b1;hpb=4a7c8b4e56accaaaf098155a580df023bfb91c69;p=silc.git diff --git a/configure.ad b/configure.ad index 4dd8e659..3bac080f 100644 --- a/configure.ad +++ b/configure.ad @@ -3,7 +3,7 @@ # # Author: Pekka Riikonen # -# 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,15 +33,25 @@ AC_PATH_PROG(sedpath, sed) # Put here any platform specific stuff # case "$target" in + *-*-linux*|*-k*bsd*-gnu) + check_threads=true + CFLAGS=`echo $CFLAGS -D_GNU_SOURCE` + ;; *-*-freebsd*) check_threads=true ;; *-*-netbsd*) check_threads=true ;; + *-*-openbsd*) + check_threads=true + ;; *-*-*bsd*) check_threads=false ;; + *-*-*darwin*) + check_threads=true + ;; *) check_threads=true ;; @@ -94,6 +104,29 @@ __SILC_HAVE_PTHREAD="" __SILC_HAVE_SIM="" __SILC_ENABLE_DEBUG="" +#ifdef SILC_DIST_TOOLKIT +toolkitver=`echo $VERSION | sed 's/\./ /g'` +maj=0 +min=0 +bld=0 +for v in $toolkitver +do + if test $maj -eq 0; then + maj=$v + continue + fi + if test $min -eq 0; then + min=$v + continue + fi + if test $bld -eq 0; then + bld=$v + continue + fi +done +__SILC_PACKAGE_VERSION="#define __SILC_TOOLKIT_VERSION SILC_VERSION($maj,$min,$bld)" +#endif SILC_DIST_TOOLKIT + AC_PROG_RANLIB #ifndef SILC_DIST_TOOLKIT AC_DISABLE_SHARED @@ -180,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 @@ -334,13 +367,32 @@ have_assembler=false if test x$want_asm = xtrue; then AC_PATH_PROG([NASM], [nasm], [no]) if test "x$NASM" != "xno"; then - SILC_ASSEMBLER="$NASM -O2 -felf" + 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 AC_PATH_PROG([YASM], [yasm], [no]) if test "x$YASM" != "xno"; then - SILC_ASSEMBLER="$YASM -Xgnu -felf" + if test x$cpu_x86_64 = xtrue; then + SILC_ASSEMBLER="$YASM -Xgnu -felf64" + else + SILC_ASSEMBLER="$YASM -Xgnu -felf" + fi have_assembler=true fi fi @@ -421,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 #include @@ -440,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]) @@ -605,7 +657,7 @@ else # pkg-config check PKG_CHECK_MODULES(SILC, [silc >= 1.1], compile_libs=false, compile_libs=true) #ifdef SILC_DIST_CLIENTLIB - PKG_CHECK_MODULES(SILCCLIENT, [silcclient >= 1.1], compile_libs=false, compile_libs=true) + PKG_CHECK_MODULES(SILCCLIENT, [silcclient >= 1.1.1], compile_libs=false, compile_libs=true) #endif SILC_DIST_CLIENTLIB #ifdef SILC_DIST_SERVERLIB PKG_CHECK_MODULES(SILCSERVER, silcserver, compile_libs=false, compile_libs=true) @@ -871,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 @@ -880,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 @@ -888,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( [ @@ -916,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...) @@ -980,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 @@ -999,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 @@ -1140,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 int main() @@ -1150,7 +1208,7 @@ if test x$has_threads = xtrue; then pthread_rwlock_destroy(&rwlock); return 0; } - ], + ])], [], [ # Rwlock not defined @@ -1172,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 #include @@ -1181,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 #include @@ -1198,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 #include @@ -1215,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 #include @@ -1232,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) ], @@ -1279,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 @@ -1319,16 +1365,7 @@ AC_SUBST(SILC_LIB_INCLUDES) AC_SUBST(__SILC_HAVE_PTHREAD) AC_SUBST(__SILC_HAVE_SIM) AC_SUBST(__SILC_ENABLE_DEBUG) - -# -# 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) +AC_SUBST(__SILC_PACKAGE_VERSION) INCLUDE_DEFINES_INT="include \$(top_srcdir)/Makefile.defines_int" AC_SUBST(INCLUDE_DEFINES_INT) @@ -1369,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` @@ -1376,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"