#
# Author: Pekka Riikonen <priikone@silcnet.org>
#
-# Copyright (C) 2005 Pekka Riikonen
+# Copyright (C) 2005, 2007 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
# SILC Library directories
SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/contrib"
SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silccore"
+#ifdef SILC_DIST_CRYPTO
SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silccrypt"
+#endif SILC_DIST_CRYPTO
#ifdef SILC_DIST_MATH
SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcmath"
#endif SILC_DIST_MATH
SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcutil"
+SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcapputil"
SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcske"
#ifdef SILC_DIST_SFTP
SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcsftp"
#ifdef SILC_DIST_HTTP
SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silchttp"
#endif SILC_DIST_HTTP
-#ifdef SILC_DIST_IDCACHE
-SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcidcache"
-#endif SILC_DIST_IDCACHE
+#ifdef SILC_DIST_VCARD
+SILC_LIB_INCLUDES="$SILC_LIB_INCLUDES -I$SILC_TOP_SRCDIR/lib/silcvcard"
+#endif SILC_DIST_VCARD
##
## Library versioning.
# - If functions were added, increment [LIB]_AGE
# - If functions were removed, set [LIB]_AGE to 0
#
-# where [LIB] is LIBSILC, LIBSILCCLIENT or LIBSILCSERVER, and where
+# where [LIB] is LIBSILC, LIBSILCCLIENT or LIBSILCSERVER, and where
# "functions" means functions public interfaces (API).
#
# The LIB_BASE_VERSION defines the SILC software major.minor version and
LIB_BASE_VERSION=1.1
# libsilc versions
-LIBSILC_CURRENT=1 # prev = 0
-LIBSILC_REVISION=0 # prev = 0
-LIBSILC_AGE=0 # prev = 0
+LIBSILC_CURRENT=3 # prev = 2
+LIBSILC_REVISION=0 # prev = 1
+LIBSILC_AGE=1 # prev = 1
# libsilcclient versions
-LIBSILCCLIENT_CURRENT=1 # prev = 0
-LIBSILCCLIENT_REVISION=0 # prev = 0
+LIBSILCCLIENT_CURRENT=2 # prev = 1
+LIBSILCCLIENT_REVISION=0 # prev = 1
LIBSILCCLIENT_AGE=0 # prev = 0
# libsilcserver versions
AC_SUBST(LIBSILCSERVER_REVISION)
AC_SUBST(LIBSILCSERVER_AGE)
+# Check for big-endian machines
+AC_C_BIGENDIAN
+
+# Check for epoll_wait and verify that epoll_create works
+AC_CHECK_FUNC(epoll_wait,
+ [
+ AC_RUN_IFELSE(
+ [
+ #include <sys/epoll.h>
+ int main()
+ {
+ int ret = epoll_create(5);
+ if (ret < 0)
+ return 1;
+ close(ret);
+ return 0;
+ }
+ ],
+ [
+ AC_DEFINE([HAVE_EPOLL_WAIT], [1], [HAVE_EPOLL_WAIT])
+ ],
+ )
+ ])
+
+MODULESDIR="$silc_prefix/lib/modules"
#ifdef SILC_DIST_SIM
# SIM modules directory
#
-MODULESDIR="$silc_prefix/modules"
AC_ARG_WITH(simdir,
[[ --with-simdir=DIR directory for SIM modules [PREFIX/modules]]],
[
;;
esac
])
-AC_SUBST(MODULESDIR)
AC_DEFINE_UNQUOTED([SILC_MODULESDIR], "$MODULESDIR", [SILC_MODULESDIR])
#endif SILC_DIST_SIM
+AC_SUBST(MODULESDIR)
#ifdef SILC_DIST_TOOLKIT
# Stack trace checking
)
#endif SILC_DIST_TOOLKIT
+#ifdef SILC_DIST_INPLACE
+#
+# Profiling options (never delivered to distributions)
+#
+AC_MSG_CHECKING(whether to enable gprof)
+AC_ARG_ENABLE(gprof,
+ [ --enable-gprof enable gprof profiling],
+ [
+ case "${enableval}" in
+ yes)
+ AC_MSG_RESULT(yes)
+ SILC_ADD_CFLAGS(-pg)
+ LIBS="$LIBS -pg"
+ ;;
+ *)
+ AC_MSG_RESULT(no)
+ ;;
+ esac
+ ],
+ [
+ AC_MSG_RESULT(no)
+ ])
+
+AC_MSG_CHECKING(whether to enable gcov)
+AC_ARG_ENABLE(gcov,
+ [ --enable-gcov enable gcov],
+ [
+ case "${enableval}" in
+ yes)
+ AC_MSG_RESULT(yes)
+ SILC_ADD_CFLAGS(-fprofile-arcs)
+ LIBS="$LIBS -lgcov"
+ ;;
+ *)
+ AC_MSG_RESULT(no)
+ ;;
+ esac
+ ],
+ [
+ AC_MSG_RESULT(no)
+ ])
+#endif SILC_DIST_INPLACE
+
#
# Makefile outputs
#
lib/Makefile
lib/contrib/Makefile
lib/silccore/Makefile
-lib/silccrypt/Makefile
#ifdef SILC_DIST_SIM
lib/silcsim/Makefile
#endif SILC_DIST_SIM
lib/silcske/Makefile
lib/silcutil/Makefile
+#ifdef SILC_DIST_TOOLKIT
lib/silcutil/unix/Makefile
lib/silcutil/win32/Makefile
-lib/silcutil/beos/Makefile
-lib/silcutil/os2/Makefile
-lib/silcutil/epoc/Makefile
+lib/silcutil/symbian/Makefile
+#else !SILC_DIST_TOOLKIT
+#ifdef SILC_DIST_CLIENT
+lib/silcutil/unix/Makefile
+lib/silcutil/win32/Makefile
+#else !SILC_DIST_CLIENT
+#ifdef SILC_DIST_SERVER
+lib/silcutil/unix/Makefile
+#endif SILC_DIST_SERVER
+#endif SILC_DIST_CLIENT
+#endif SILC_DIST_TOOLKIT
+lib/silcapputil/Makefile
#ifdef SILC_DIST_SFTP
lib/silcsftp/Makefile
#endif SILC_DIST_SFTP
#ifdef SILC_DIST_INPLACE
lib/silcutil/tests/Makefile
-lib/silccrypt/tests/Makefile
lib/silccore/tests/Makefile
lib/silcsftp/tests/Makefile
#endif SILC_DIST_INPLACE
#endif SILC_DIST_TOOLKIT
#ifdef SILC_DIST_CLIENTLIB
-AC_CONFIG_FILES(lib/silcclient/Makefile)
+AC_CONFIG_FILES(
+lib/silcclient/Makefile
+lib/silcclient/tests/Makefile
+)
#endif SILC_DIST_CLIENTLIB
#ifdef SILC_DIST_SERVERLIB
#ifdef SILC_DIST_HTTP
AC_CONFIG_FILES(
lib/silchttp/Makefile
+#ifdef SILC_DIST_INPLACE
lib/silchttp/tests/Makefile
+#endif SILC_DIST_INPLACE
)
#endif SILC_DIST_HTTP
-#ifdef SILC_DIST_IDCACHE
+#ifdef SILC_DIST_VCARD
AC_CONFIG_FILES(
-lib/silcidcache/Makefile
+lib/silcvcard/Makefile
)
-#endif SILC_DIST_IDCACHE
+#endif SILC_DIST_VCARD
fi # compile_libs