1 # This file is part of GNUnet.
2 # (C) 2001--2010 Christian Grothoff (and other contributing authors)
4 # GNUnet is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published
6 # by the Free Software Foundation; either version 2, or (at your
7 # option) any later version.
9 # GNUnet is distributed in the hope that it will be useful, but
10 # WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 # General Public License for more details.
14 # You should have received a copy of the GNU General Public License
15 # along with GNUnet; see the file COPYING. If not, write to the
16 # Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 # Boston, MA 02111-1307, USA.
20 # Process this file with autoconf to produce a configure script.
24 AC_INIT([gnunet], [0.9.0pre1],[bug-gnunet@gnu.org])
25 AM_INIT_AUTOMAKE([gnunet], [0.9.0pre1])
26 AC_CONFIG_HEADERS([gnunet_config.h])
28 AH_TOP([#define _GNU_SOURCE 1])
30 # Checks for programs.
42 LT_INIT([disable-static dlopen win32-dll])
53 if test "$enable_shared" = "no"
55 AC_MSG_ERROR([GNUnet only works with shared libraries. Sorry.])
58 CFLAGS="-Wall $CFLAGS"
59 # use '-fno-strict-aliasing', but only if the compiler can take it
60 if gcc -fno-strict-aliasing -S -o /dev/null -xc /dev/null >/dev/null 2>&1;
62 CFLAGS="-fno-strict-aliasing $CFLAGS"
65 # Use Linux interface name unless the OS has a different preference
66 DEFAULT_INTERFACE="\"eth0\""
70 *darwin* | *rhapsody* | *macosx*)
71 AC_DEFINE_UNQUOTED(DARWIN,1,[This is an Apple Darwin system])
72 CPPFLAGS="-D_APPLE_C_SOURCE $CPPFLAGS"
73 CFLAGS="-no-cpp-precomp -fno-common $CFLAGS"
74 AC_MSG_WARN([The VPN application cannot be compiled on your OS])
76 DEFAULT_INTERFACE="\"en0\""
81 AC_DEFINE_UNQUOTED(LINUX,1,[This is a Linux system])
88 AC_DEFINE_UNQUOTED(SOMEBSD,1,[This is a BSD system])
89 AC_DEFINE_UNQUOTED(FREEBSD,1,[This is a FreeBSD system])
90 CFLAGS="-D_THREAD_SAFE $CFLAGS"
91 build_target="freebsd"
96 AC_DEFINE_UNQUOTED(SOMEBSD,1,[This is a BSD system])
97 AC_DEFINE_UNQUOTED(OPENBSD,1,[This is an OpenBSD system])
98 LIBS=`echo $LIBS | sed -e "s/-ldl//"`
99 build_target="openbsd"
104 AC_DEFINE_UNQUOTED(SOMEBSD,1,[This is a BSD system])
105 AC_DEFINE_UNQUOTED(NETBSD,1,[This is a NetBSD system])
110 AC_DEFINE_UNQUOTED(SOLARIS,1,[This is a Solaris system])
111 AC_DEFINE_UNQUOTED(_REENTRANT,1,[Need with solaris or errno doesnt work])
112 AC_CHECK_LIB(resolv, res_init)
113 AC_CHECK_LIB(rt, nanosleep)
114 build_target="solaris"
119 AC_DEFINE_UNQUOTED(LINUX,1,[This is a Linux system])
120 CFLAGS="-D_REENTRANT -fPIC -pipe $CFLAGS"
126 AC_DEFINE_UNQUOTED(CYGWIN,1,[This is a Cygwin system])
127 AC_DEFINE_UNQUOTED(WINDOWS,1,[This is a Windows system])
128 AC_CHECK_LIB(intl, gettext)
129 LDFLAGS="$LDFLAGS -no-undefined"
130 CFLAGS="-mms-bitfields $CFLAGS"
131 build_target="cygwin"
137 AC_DEFINE_UNQUOTED(MINGW,1,[This is a MinGW system])
138 AC_DEFINE_UNQUOTED(WINDOWS,1,[This is a Windows system])
139 AC_DEFINE_UNQUOTED(_WIN32,1,[This is a Windows system])
140 AC_CHECK_LIB(intl, gettext)
141 LDFLAGS="$LDFLAGS -no-undefined -Wl,--export-all-symbols"
142 LIBS="$LIBS -lws2_32 -lplibc"
143 CFLAGS="-mms-bitfields $CFLAGS"
150 AC_MSG_RESULT(Unrecognised OS $host_os)
151 AC_DEFINE_UNQUOTED(OTHEROS,1,[Some strange OS])
154 AC_DEFINE_UNQUOTED([GNUNET_DEFAULT_INTERFACE], $DEFAULT_INTERFACE, [This should be the default choice for the name of the first network interface])
155 AC_SUBST(DEFAULT_INTERFACE)
157 AC_MSG_CHECKING([for build target])
158 AM_CONDITIONAL(DARWIN, test "$build_target" = "darwin")
159 AM_CONDITIONAL(CYGWIN, test "$build_target" = "cygwin")
160 AM_CONDITIONAL(MINGW, test "$build_target" = "mingw")
161 AM_CONDITIONAL(SOLARIS, test "$build_target" = "solaris")
162 AM_CONDITIONAL(XFREEBSD, test "$build_target" = "freebsd")
163 AM_CONDITIONAL(OPENBSD, test "$build_target" = "openbsd")
164 AM_CONDITIONAL(LINUX, test "$build_target" = "linux")
166 AC_MSG_RESULT([$build_target])
167 AC_SUBST(build_target)
168 AM_CONDITIONAL([am__fastdepOBJC], false)
169 AC_UNALIGNED_64_ACCESS
171 # some other checks for standard libs
172 AC_SEARCH_LIBS([gethostbyname], [nsl ws2_32])
173 AC_CHECK_LIB(socket, socket)
175 AC_CHECK_LIB(c, getloadavg, AC_DEFINE(HAVE_GETLOADAVG,1,[getloadavg supported]))
177 # 'save' libs; only those libs found so far will be
178 # linked against _everywhere_. For the others, we
179 # will be more selective!
184 AM_PATH_LIBGCRYPT(1.2.0, gcrypt=1)
185 AC_CHECK_DECLS([gcry_mpi_lshift], [], [], [[#include <gcrypt.h>]])
189 AC_MSG_ERROR([GNUnet needs libgcrypt])
194 LIBCURL_CHECK_CONFIG(,7.20.1,,AC_MSG_ERROR([GNUnet requires libcurl >= 7.20.1]))
198 # test for kvm and kstat (for CPU stats under BSD/Solaris)
199 AC_CHECK_LIB([kvm],[kvm_open])
200 AC_CHECK_LIB([kstat],[kstat_open])
202 # test for libextractor
204 AC_MSG_CHECKING(for libextractor)
205 AC_ARG_WITH(extractor,
206 [ --with-extractor=PFX base of libextractor installation],
207 [AC_MSG_RESULT([$with_extractor])
208 case $with_extractor in
212 AC_CHECK_HEADERS(extractor.h,
213 AC_CHECK_LIB([extractor], [EXTRACTOR_plugin_add_defaults],
217 LDFLAGS="-L$with_extractor/lib $LDFLAGS"
218 CPPFLAGS="-I$with_extractor/include $CPPFLAGS"
219 AC_CHECK_HEADERS(extractor.h,
220 AC_CHECK_LIB([extractor], [EXTRACTOR_plugin_add_defaults],
221 EXT_LIB_PATH="-L$with_extractor/lib $EXT_LIB_PATH"
226 [AC_MSG_RESULT([--with-extractor not specified])
227 AC_CHECK_HEADERS(extractor.h,
228 AC_CHECK_LIB([extractor], [EXTRACTOR_plugin_add_defaults],
230 if test "$extractor" != 1
232 AC_MSG_ERROR([GNUnet requires libextractor])
238 # Checks for standard header files.
242 # Check for headers that are ALWAYS required
243 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]))
245 # Checks for headers that are only required on some systems or opional (and where we do NOT abort if they are not there)
246 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 netinet/in_systm.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])
248 SAVE_LDFLAGS=$LDFLAGS
249 SAVE_CPPFLAGS=$CPPFLAGS
253 AC_MSG_CHECKING(for SQLite)
255 [ --with-sqlite=PFX base of SQLite installation],
256 [AC_MSG_RESULT("$with_sqlite")
261 AC_CHECK_HEADERS(sqlite3.h,
265 LDFLAGS="-L$with_sqlite/lib $LDFLAGS"
266 CPPFLAGS="-I$with_sqlite/include $CPPFLAGS"
267 AC_CHECK_HEADERS(sqlite3.h,
268 EXT_LIB_PATH="-L$with_sqlite/lib $EXT_LIB_PATH"
269 SQLITE_LDFLAGS="-L$with_sqlite/lib"
270 SQLITE_CPPFLAGS="-I$with_sqlite/include"
272 LDFLAGS=$SAVE_LDFLAGS
273 CPPFLAGS=$SAVE_CPPFLAGS
277 [AC_MSG_RESULT([--with-sqlite not specified])
278 AC_CHECK_HEADERS(sqlite3.h, sqlite=true)])
279 AM_CONDITIONAL(HAVE_SQLITE, test x$sqlite = xtrue)
280 AC_SUBST(SQLITE_CPPFLAGS)
281 AC_SUBST(SQLITE_LDFLAGS)
285 AC_MSG_CHECKING(for postgres)
286 AC_ARG_WITH(postgres,
287 [ --with-postgres=PFX base of postgres installation],
288 [AC_MSG_RESULT("$with_postgres")
289 case $with_postgres in
293 AC_CHECK_HEADERS(postgresql/libpq-fe.h,
297 LDFLAGS="-L$with_postgres/lib $LDFLAGS"
298 CPPFLAGS="-I$with_postgres/include $CPPFLAGS"
299 AC_CHECK_HEADERS(postgresql/libpq-fe.h,
300 EXT_LIB_PATH="-L$with_postgres/lib $EXT_LIB_PATH"
301 POSTGRES_LDFLAGS="-L$with_postgres/lib"
302 POSTGRES_CPPFLAGS="-I$with_postgres/include"
304 LDFLAGS=$SAVE_LDFLAGS
305 CPPFLAGS=$SAVE_CPPFLAGS
309 [AC_MSG_RESULT([--with-postgres not specified])
310 AC_CHECK_HEADERS(postgresql/libpq-fe.h, postgres=true)])
311 AM_CONDITIONAL(HAVE_POSTGRES, test x$postgres = xtrue)
312 AC_SUBST(POSTGRES_CPPFLAGS)
313 AC_SUBST(POSTGRES_LDFLAGS)
317 AC_MSG_CHECKING(for libpcap)
319 [ --with-pcap=PFX base of pcap installation],
320 [AC_MSG_RESULT("$with_pcap")
325 AC_CHECK_HEADERS(pcap.h,
329 LDFLAGS="-L$with_pcap/lib $LDFLAGS"
330 CPPFLAGS="-I$with_pcap/include $CPPFLAGS"
331 AC_CHECK_HEADERS(pcap.h,
332 EXT_LIB_PATH="-L$with_pcap/lib $EXT_LIB_PATH"
333 PCAP_LDFLAGS="-L$with_pcap/lib"
334 PCAP_CPPFLAGS="-I$with_pcap/include"
336 LDFLAGS=$SAVE_LDFLAGS
337 CPPFLAGS=$SAVE_CPPFLAGS
341 [AC_MSG_RESULT([--with-pcap not specified])
342 AC_CHECK_HEADERS(pcap.h, pcap=1)])
343 AM_CONDITIONAL(HAVE_PCAP, test x$pcap = x1)
344 AC_SUBST(PCAP_CPPFLAGS)
345 AC_SUBST(PCAP_LDFLAGS)
348 # test for libz (maybe required for linking mysql)
350 AC_CHECK_LIB(z, compress,,zlib=0)
351 AM_CONDITIONAL(HAVE_ZLIB, test x$zlib = x1)
354 AC_MSG_ERROR([GNUnet requires zlib])
358 AC_CHECK_TYPES([sigset_t, off_t], [], [], [#include <sys/types.h>])
359 AC_CHECK_TYPES([size_t], [], [], [#include <stdio.h>])
361 if test "$build_target" = "mingw"
363 CYGWIN_MYSQL_MAGIC="#include <mysql/my_global.h>"
369 SAVE_LDFLAGS=$LDFLAGS
370 SAVE_CPPFLAGS=$CPPFLAGS
371 AC_MSG_CHECKING(for mysql)
373 [ --with-mysql=PFX base of MySQL installation],
374 [AC_MSG_RESULT("$with_mysql")
375 if test "$with_mysql" != "no"
377 if test "$with_mysql" != "yes"
379 LDFLAGS="-L$with_mysql/lib -L$with_mysql/lib/mysql $LDFLAGS $ZLIBS"
380 CPPFLAGS="-I$with_mysql/include $CPPFLAGS"
382 AC_CHECK_HEADERS(mysql/mysql.h,
383 AC_CHECK_LIB(mysqlclient, mysql_init,
384 MYSQL_LDFLAGS="-L$with_mysql/lib -L$with_mysql/lib/mysql"
385 MYSQL_CPPFLAGS="-I$with_mysql/include"
387 mysql=true), [], [$CYGWIN_MYSQL_MAGIC])
390 [AC_MSG_RESULT([--with-mysql not specified])
391 LDFLAGS="-L/usr/lib/mysql $LDFLAGS $ZLIBS"
392 AC_CHECK_LIB(mysqlclient, mysql_init,
393 [AC_CHECK_HEADERS(mysql/mysql.h,
394 MYSQL_LDFLAGS="-L/usr/lib/mysql"
397 , [], [$CYGWIN_MYSQL_MAGIC])])
400 AC_SUBST(MYSQL_LDFLAGS)
401 AC_SUBST(MYSQL_CPPFLAGS)
403 # additional version check for mysql
404 AC_ARG_ENABLE(mysql-version-check, [ --disable-mysql-version-check do not check MySQL version],, enable_mysql_version_check=yes)
405 if test "$mysql" = "true" -a "x$enable_mysql_version_check" = "xyes"
407 AC_MSG_CHECKING(mysql version)
408 AC_RUN_IFELSE([AC_LANG_PROGRAM(
409 [[$CYGWIN_MYSQL_MAGIC
410 #include <mysql/mysql.h>]],
411 [[if (MYSQL_VERSION_ID < 40100)
416 ],mysql=true,mysql=false)
417 if test "$mysql" = "false"
420 AC_MSG_RESULT([fail, >= 4.1 required])
425 AM_CONDITIONAL(HAVE_MYSQL, test x$mysql = xtrue)
426 AM_CONDITIONAL(HAVE_MYSQLE, test "0" = "1")
429 LDFLAGS=$SAVE_LDFLAGS
430 CPPFLAGS=$SAVE_CPPFLAGS
432 if test "$sqlite" = 0 -a "$mysql" = 0
434 AC_MSG_ERROR([GNUnet requires SQLite or MySQL])
439 AC_MSG_CHECKING([for libmicrohttpd])
440 AC_ARG_WITH(microhttpd,
441 [ --with-microhttpd=PFX base of libmicrohttpd installation],
442 [AC_MSG_RESULT([$with_microhttpd])
443 case $with_microhttpd in
447 AC_CHECK_HEADERS([microhttpd.h],
448 AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT,
449 AC_CHECK_LIB([microhttpd], [MHD_start_daemon],
451 [],[#include "src/include/platform.h"
452 #include <microhttpd.h>]),,
453 [#include "src/include/platform.h"])
456 LDFLAGS="-L$with_microhttpd/lib $LDFLAGS"
457 CPPFLAGS="-I$with_microhttpd/include $CPPFLAGS"
458 AC_CHECK_HEADERS(microhttpd.h,
459 AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT,
460 AC_CHECK_LIB([microhttpd], [MHD_start_daemon],
461 EXT_LIB_PATH="-L$with_microhttpd/lib $EXT_LIB_PATH"
463 [],[#include "src/include/platform.h"
464 #include <microhttpd.h>]),,
465 [#include "src/include/platform.h"])
469 [AC_MSG_RESULT([--with-microhttpd not specified])
470 AC_CHECK_HEADERS([microhttpd.h],
471 AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT,
472 AC_CHECK_LIB([microhttpd], [MHD_start_daemon],
474 [],[#include "src/include/platform.h"
475 #include <microhttpd.h>]),,
476 [#include "src/include/platform.h"])])
477 AM_CONDITIONAL(HAVE_MHD, test x$lmhd = x1)
478 AC_DEFINE_UNQUOTED([HAVE_MHD], $lmhd, [We have libmicrohttpd])
483 AC_MSG_CHECKING([for openssl])
485 [ --with-openssl=PFX base of openssl installation],
486 [AC_MSG_RESULT([$with_openssl])
487 case $with_openssl in
491 AC_CHECK_HEADERS([openssl/ssl.h],
492 AC_CHECK_LIB([ssl], [SSL_new],
496 LDFLAGS="-L$with_openssl/lib $LDFLAGS"
497 CPPFLAGS="-I$with_openssl/include $CPPFLAGS"
498 AC_CHECK_HEADERS([openssl/ssl.h],
499 AC_CHECK_LIB([ssl], [SSL_new],
500 EXT_LIB_PATH="-L$with_openssl/lib $EXT_LIB_PATH"
505 [AC_MSG_RESULT([--with-openssl not specified])
506 AC_CHECK_HEADERS([openssl/ssl.h],
507 AC_CHECK_LIB([ssl], [SSL_new],
509 AM_CONDITIONAL(HAVE_OPENSSL, test x$openssl = x1)
510 AC_DEFINE_UNQUOTED([HAVE_OPENSSL], $openssl, [We have openssl])
520 # check for python & pexpect (used for some testcases only)
521 AM_PATH_PYTHON([2.5],, [:])
522 AM_CONDITIONAL([HAVE_PYTHON], [test "$PYTHON" != :])
524 if test "$PYTHON" != :
526 AC_MSG_CHECKING([for pexpect])
527 $PYTHON -c "import pexpect" > /dev/null 2> /dev/null
529 AM_CONDITIONAL(HAVE_PYTHON_PEXPECT, test $PYEX -eq 0)
534 AC_MSG_RESULT([not found])
537 AM_CONDITIONAL(HAVE_PYTHON_PEXPECT, 0)
542 AC_MSG_CHECKING([for libesmtp])
544 [ --with-esmtp=PFX base of libesmtp installation],
545 [AC_MSG_RESULT([$with_esmtp])
550 AC_CHECK_HEADERS(libesmtp.h,
551 AC_CHECK_LIB([esmtp], [smtp_start_session],
555 LDFLAGS="-L$with_esmtp/lib $LDFLAGS"
556 CPPFLAGS="-I$with_esmtp/include $CPPFLAGS"
557 AC_CHECK_HEADERS(libesmtp.h,
558 AC_CHECK_LIB([esmtp], [smtp_start_session],
559 EXT_LIB_PATH="-L$with_esmtp/lib $EXT_LIB_PATH"
564 [AC_MSG_RESULT([--with-esmtp not specified])
565 AC_CHECK_HEADERS(libesmtp.h,
566 AC_CHECK_LIB([esmtp], [smtp_start_session],
568 AM_CONDITIONAL(HAVE_ESMTP, test x$esmtp = x1)
569 AC_DEFINE_UNQUOTED([HAVE_ESMTP], $esmtp, [We have libesmtp])
574 AM_GNU_GETTEXT([external])
575 AM_GNU_GETTEXT_VERSION([0.16.1])
580 # Checks for standard typedefs, structures, and compiler characteristics.
589 AC_CHECK_MEMBER([struct sockaddr_in.sin_len],
590 [ AC_DEFINE(HAVE_SOCKADDR_IN_SIN_LEN, 1, [Do we have sockaddr_in.sin_len?])
594 #include <sys/types.h>
595 #include <sys/socket.h>
596 #include <netinet/in.h>
601 # Checks for library functions.
602 AC_FUNC_CLOSEDIR_VOID
605 AC_PROG_GCC_TRADITIONAL
607 AC_FUNC_SELECT_ARGTYPES
617 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])
622 gn_user_home_dir="~/.gnunet"
623 AC_ARG_WITH(user-home-dir,
625 [--with-user-home-dir=DIR],
626 [default user home directory (~/.gnunet)]),
627 [gn_user_home_dir=$withval])
628 AC_SUBST(GN_USER_HOME_DIR, $gn_user_home_dir)
629 gn_daemon_home_dir="/var/lib/gnunet"
630 AC_ARG_WITH(daemon-home-dir,
632 [--with-daemon-home-dir=DIR],
633 [default daemon home directory (/var/lib/gnunet)]),
634 [gn_daemon_home_dir=$withval])
635 AC_SUBST(GN_DAEMON_HOME_DIR, $gn_daemon_home_dir)
636 gn_daemon_config_dir="/etc"
637 AC_ARG_WITH(daemon-config-dir,
639 [--with-daemon-config-dir=DIR],
640 [default daemon config directory (/etc)]),
641 [gn_daemon_config_dir=$withval])
642 AC_SUBST(GN_DAEMON_CONFIG_DIR, $gn_daemon_config_dir)
645 GN_LIBINTL="$LTLIBINTL"
646 AC_ARG_ENABLE(framework, [ --enable-framework enable Mac OS X framework build helpers],enable_framework_build=$enableval)
647 AM_CONDITIONAL(WANT_FRAMEWORK, test x$enable_framework_build = xyes)
648 if test x$enable_framework_build = xyes
650 AC_DEFINE([FRAMEWORK_BUILD], 1, [Build a Mac OS X Framework])
651 GN_INTLINCL='-I$(top_srcdir)/src/intlemu'
652 GN_LIBINTL='$(top_builddir)/src/intlemu/libintlemu.la -framework CoreFoundation'
653 AC_LIB_APPENDTOVAR([CPPFLAGS], [$GN_INTLINCL])
656 GN_LIB_LDFLAGS="-export-dynamic -no-undefined"
657 GN_PLUGIN_LDFLAGS="-export-dynamic -avoid-version -module -no-undefined"
659 AC_SUBST(GN_LIB_LDFLAGS)
660 AC_SUBST(GN_PLUGIN_LDFLAGS)
661 AC_SUBST(GN_INTLINCL)
667 AC_SUBST(EXT_LIB_PATH)
672 AC_SUBST(EXT_LIB_PATH)
675 # should 'make check' run tests?
676 AC_MSG_CHECKING(whether to run tests)
677 AC_ARG_ENABLE(testruns,
678 [AS_HELP_STRING([--enable-testruns=yes/no],
679 [disable running tests on make check (default is YES)])],
680 [enable_tests_run=$enableval],
681 [enable_tests_run="yes"])
682 AC_MSG_RESULT($enable_test_run)
683 AM_CONDITIONAL([DISABLE_TEST_RUN], [test "x$enable_tests_run" = "xno"])
685 # should experimental code be compiled (code that may not yet compile)?
686 disable_experimental=yes
687 AC_MSG_CHECKING(whether to compile experimental code)
688 AC_ARG_ENABLE(experimental,
689 [AS_HELP_STRING([--enable-experimental],
690 [enable compiling experimental code])],
691 [enable_experimental=$enableval],
692 [enable_experimental="no"])
693 AC_MSG_RESULT($enable_experimental)
694 AM_CONDITIONAL([HAVE_EXPERIMENTAL], [test "x$enable_experimental" = "xyes"])
696 # should malicious code be compiled (code used for testing with malicious peers)
698 AC_MSG_CHECKING(whether to compile malicious code)
699 AC_ARG_ENABLE(malicious,
700 [AS_HELP_STRING([--enable-malicious],
701 [enable compiling malicious code (only for developers for testing)])],
702 [enable_malicious=1],
703 [enable_malicious=0])
704 AC_MSG_RESULT($enable_malicious)
705 AM_CONDITIONAL([HAVE_MALICIOUS], [test "x$enable_malicious" = "x1"])
706 AC_DEFINE_UNQUOTED([HAVE_MALICIOUS], $enable_malicious, [Compile malicious code])
710 AC_ARG_ENABLE([coverage], AS_HELP_STRING([--enable-coverage],
711 [Compile the library with code coverage support (default is NO)]),
712 [use_gcov=yes], [use_gcov=no])
713 AM_CONDITIONAL([USE_COVERAGE], [test "x$use_gcov" = "xyes"])
724 src/datacache/Makefile
725 src/datastore/Makefile
728 src/fragmentation/Makefile
732 src/include/gnunet_directories.h
733 src/hostlist/Makefile
736 src/peerinfo/Makefile
737 src/peerinfo-tool/Makefile
738 src/statistics/Makefile
739 src/template/Makefile
741 src/topology/Makefile
742 src/transport/Makefile
750 # warn user if mysql found but not used due to version
751 if test "$mysqlfail" = "true"
753 AC_MSG_NOTICE([NOTICE: MySQL found, but too old. MySQL support will not be compiled.])
757 if test "x$sqlite" = "x0"
759 AC_MSG_NOTICE([NOTICE: sqlite not found. sqLite support will not be compiled.])
762 if test "x$lmhd" != "x1"
764 AC_MSG_NOTICE([NOTICE: libmicrohttpd not found, http transport will not be installed.])
767 if test "x$esmtp" != "x1"
769 AC_MSG_NOTICE([NOTICE: libesmtp not found, monkey will not be installed.])
772 if test "x$pcap" != "x1"
774 AC_MSG_NOTICE([NOTICE: libpcap not found, WiFi support will not be installed.])
777 if test "x$openssl" != "x1"
779 AC_MSG_NOTICE([NOTICE: OpenSSL not found, monkey will not be installed.])
782 AC_MSG_NOTICE([NOTICE: Database support is set to MySQL: $mysql, SQLite: $sqlite, Postgres: $postgres])
784 if test "$enable_framework_build" = "yes"
786 AC_MSG_NOTICE([NOTICE: Mac OS X framework build enabled.])
789 AC_MSG_NOTICE([********************************************
790 You can compile GNUnet with
792 now. After that, run (if necessary as 'root')
794 to install everything. You may want to create a new user account
795 to run the GNUnet service:
797 You also need to create an configuration file that should
798 specify the path where GNUnet should store data. For example,
799 you could store in "/etc/gnunet.conf" the following lines:
802 SERVICEHOME = /opt/gnunet/
803 DEFAULTCONFIG = /etc/gnunet.conf
805 Now, in order to start your peer, run as the 'gnunet' user
808 Each GNUnet user should also create an (at least initially) empty
811 touch $HOME/.gnunet/gnunet.conf
813 Optionally, download and compile gnunet-gtk to get a GUI.
814 ********************************************])