(no commit message)
[oweals/gnunet.git] / configure.ac
index aad6e44a4fed464dc0e705352e7e4196c6397ce8..1a971b81b7175b8a25c2fc90993e3a94a0eb0112 100644 (file)
@@ -21,8 +21,8 @@
 #
 #
 AC_PREREQ(2.61)
-AC_INIT([gnunet], [0.9.0pre0],[bug-gnunet@gnu.org])
-AM_INIT_AUTOMAKE([gnunet], [0.9.0pre0])
+AC_INIT([gnunet], [0.9.0pre1],[bug-gnunet@gnu.org])
+AM_INIT_AUTOMAKE([gnunet], [0.9.0pre1])
 AC_CONFIG_HEADERS([gnunet_config.h])
 
 AH_TOP([#define _GNU_SOURCE  1])
@@ -244,10 +244,7 @@ AC_HEADER_STDC
 AC_CHECK_HEADERS([fcntl.h math.h errno.h ctype.h limits.h stdio.h stdlib.h string.h unistd.h stdarg.h signal.h locale.h sys/stat.h sys/types.h],,AC_MSG_ERROR([Compiling GNUnet requires standard UNIX headers files]))
 
 # Checks for headers that are only required on some systems or opional (and where we do NOT abort if they are not there)
-AC_CHECK_HEADERS([langinfo.h sys/param.h sys/mount.h sys/statvfs.h sys/select.h sockLib.h sys/mman.h sys/msg.h sys/vfs.h arpa/inet.h fcntl.h libintl.h netdb.h netinet/in.h sys/ioctl.h sys/socket.h sys/time.h unistd.h kstat.h sys/sysinfo.h kvm.h sys/file.h sys/resource.h iconv.h ifaddrs.h mach/mach.h stddef.h sys/timeb.h terminos.h argz.h])
-
-# Check for GMP header (and abort if not present)
-AC_CHECK_HEADERS([gmp.h],,AC_MSG_ERROR([Compiling GNUnet requires gmp.h (from the GNU MP library, libgmp)]))
+AC_CHECK_HEADERS([langinfo.h sys/param.h sys/mount.h sys/statvfs.h sys/select.h sockLib.h sys/mman.h sys/msg.h sys/vfs.h arpa/inet.h fcntl.h libintl.h netdb.h netinet/in.h sys/ioctl.h sys/socket.h sys/time.h unistd.h kstat.h sys/sysinfo.h kvm.h sys/file.h sys/resource.h ifaddrs.h mach/mach.h stddef.h sys/timeb.h terminos.h argz.h])
 
 # test for libgmp
 gmp=0
@@ -481,9 +478,67 @@ AC_ARG_WITH(microhttpd,
        [#include "src/include/platform.h"])])
 AM_CONDITIONAL(HAVE_MHD, test x$lmhd = x1)
 AC_DEFINE_UNQUOTED([HAVE_MHD], $lmhd, [We have libmicrohttpd])
+
+
+# openssl
+openssl=0
+AC_MSG_CHECKING([for openssl])
+AC_ARG_WITH(openssl,
+   [  --with-openssl=PFX   base of openssl installation],
+   [AC_MSG_RESULT([$with_openssl])
+    case $with_openssl in
+      no)
+        ;;
+      yes)
+        AC_CHECK_HEADERS([openssl/ssl.h],
+            AC_CHECK_LIB([ssl], [SSL_new],
+            openssl=1))
+        ;;
+      *)
+        LDFLAGS="-L$with_openssl/lib $LDFLAGS"
+        CPPFLAGS="-I$with_openssl/include $CPPFLAGS"
+        AC_CHECK_HEADERS([openssl/ssl.h],
+            AC_CHECK_LIB([ssl], [SSL_new],
+              EXT_LIB_PATH="-L$with_openssl/lib $EXT_LIB_PATH"
+              openssl=1))
+        ;;
+    esac
+   ],
+   [AC_MSG_RESULT([--with-openssl not specified])
+    AC_CHECK_HEADERS([openssl/ssl.h],
+        AC_CHECK_LIB([ssl], [SSL_new],
+          openssl=1))])
+AM_CONDITIONAL(HAVE_OPENSSL, test x$openssl = x1)
+AC_DEFINE_UNQUOTED([HAVE_OPENSSL], $openssl, [We have openssl])
+
+
+
+
+
+
 # restore LIBS
 LIBS=$SAVE_LIBS
 
+# check for python & pexpect (used for some testcases only)
+AM_PATH_PYTHON([2.5],, [:])
+AM_CONDITIONAL([HAVE_PYTHON], [test "$PYTHON" != :])
+
+if test "$PYTHON" != :
+then
+  AC_MSG_CHECKING([for pexpect])
+  $PYTHON -c "import pexpect" > /dev/null 2> /dev/null
+  PYEX=$?
+  AM_CONDITIONAL(HAVE_PYTHON_PEXPECT, test $PYEX -eq 0)
+  if test $PYEX -eq 0
+  then
+    AC_MSG_RESULT([yes])
+  else
+    AC_MSG_RESULT([not found])
+  fi
+else
+  AM_CONDITIONAL(HAVE_PYTHON_PEXPECT, 0)
+fi
+
 # libesmtp
 esmtp=0
 AC_MSG_CHECKING([for libesmtp])
@@ -518,8 +573,8 @@ AC_DEFINE_UNQUOTED([HAVE_ESMTP], $esmtp, [We have libesmtp])
 LIBS=$SAVE_LIBS
 
 # check for gettext
-AM_GNU_GETTEXT_VERSION([0.16.1])
 AM_GNU_GETTEXT([external])
+AM_GNU_GETTEXT_VERSION([0.16.1])
 
 # check for iconv
 AM_ICONV
@@ -561,7 +616,7 @@ AC_FUNC_VPRINTF
 AC_HEADER_SYS_WAIT
 AC_TYPE_OFF_T
 AC_TYPE_UID_T
-AC_CHECK_FUNCS([floor gethostname memmove rmdir strncasecmp strrchr strtol atoll dup2 fdatasync ftruncate gettimeofday memset mkdir mkfifo select socket strcasecmp strchr strdup strerror strstr clock_gettime getrusage rand uname setlocale getcwd mktime gmtime_r gmtime strlcpy strlcat ftruncate stat64 sbrk mmap mremap setrlimit gethostbyaddr initgroups getifaddrs freeifaddrs getnameinfo getaddrinfo inet_ntoa localtime_r nl_langinfo putenv realpath strndup gethostbyname2 gethostbyname])
+AC_CHECK_FUNCS([floor gethostname memmove rmdir strncasecmp strrchr strtol atoll dup2 fdatasync ftruncate gettimeofday memset mkdir mkfifo select socket strcasecmp strchr strdup strerror strstr clock_gettime getrusage rand uname setlocale getcwd mktime gmtime_r gmtime strlcpy strlcat ftruncate stat64 sbrk mmap mremap setrlimit sysconf gethostbyaddr initgroups getifaddrs freeifaddrs getnameinfo getaddrinfo inet_ntoa localtime_r nl_langinfo putenv realpath strndup gethostbyname2 gethostbyname])
 
 # restore LIBS
 LIBS=$SAVE_LIBS
@@ -626,8 +681,6 @@ AC_ARG_ENABLE([coverage], AS_HELP_STRING([--enable-coverage],
                                         [use_gcov=yes], [use_gcov=no])
 AM_CONDITIONAL([USE_COVERAGE], [test "x$use_gcov" = "xyes"])
 
-
-
 AC_CONFIG_FILES([ 
 Makefile
 contrib/Makefile
@@ -635,15 +688,19 @@ m4/Makefile
 po/Makefile.in 
 src/Makefile
 src/arm/Makefile
+src/block/Makefile
 src/core/Makefile
 src/datacache/Makefile
 src/datastore/Makefile
+src/dht/Makefile
+src/dv/Makefile
 src/fragmentation/Makefile
 src/fs/Makefile
 src/hello/Makefile
 src/include/Makefile
 src/include/gnunet_directories.h
 src/hostlist/Makefile
+src/monkey/Makefile
 src/nat/Makefile
 src/nat/libnatpmp/Makefile
 src/nat/miniupnp/Makefile
@@ -655,6 +712,7 @@ src/testing/Makefile
 src/topology/Makefile
 src/transport/Makefile
 src/util/Makefile
+src/vpn/Makefile
 ])
 AC_OUTPUT
 
@@ -677,7 +735,17 @@ then
  AC_MSG_NOTICE([NOTICE: libmicrohttpd not found, http transport will not be installed.])
 fi
 
-AC_MSG_NOTICE([NOTICE: Database support is set to MySQL: $mysql, SQLite: $sqlite])
+if test "x$esmtp" != "x1"
+then
+ AC_MSG_NOTICE([NOTICE: libesmtp not found, monkey will not be installed.])
+fi
+
+if test "x$openssl" != "x1"
+then
+ AC_MSG_NOTICE([NOTICE: OpenSSL not found, monkey will not be installed.])
+fi
+
+AC_MSG_NOTICE([NOTICE: Database support is set to MySQL: $mysql, SQLite: $sqlite, Postgres: $postgres])
 
 if test "$enable_framework_build" = "yes"
 then