1 # This file is part of GNUnet.
2 # (C) 2001--2013 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 # Checks for programs.
25 AC_INIT([gnunet], [0.9.5a], [bug-gnunet@gnu.org])
32 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
33 AC_CONFIG_HEADERS([gnunet_config.h])
34 AH_TOP([#define _GNU_SOURCE 1])
45 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\""
68 funcstocheck="getnameinfo gethostname gethostbyname gethostbyaddr getaddrinfo"
70 # Srcdir in a form that native compiler understands (i.e. DOS path on W32)
75 *darwin* | *rhapsody* | *macosx*)
76 AC_DEFINE_UNQUOTED(DARWIN,1,[This is an Apple Darwin system])
77 CPPFLAGS="-D_APPLE_C_SOURCE $CPPFLAGS"
78 CFLAGS="-no-cpp-precomp -fno-common $CFLAGS"
79 AC_MSG_WARN([The VPN application cannot be compiled on your OS])
81 DEFAULT_INTERFACE="\"en0\""
87 AC_DEFINE_UNQUOTED(LINUX,1,[This is a Linux kernel])
95 AC_DEFINE_UNQUOTED(SOMEBSD,1,[This is a BSD system])
96 AC_DEFINE_UNQUOTED(FREEBSD,1,[This is a FreeBSD system])
97 CFLAGS="-D_THREAD_SAFE $CFLAGS"
98 build_target="freebsd"
104 AC_DEFINE_UNQUOTED(SOMEBSD,1,[This is a BSD system])
105 AC_DEFINE_UNQUOTED(OPENBSD,1,[This is an OpenBSD system])
106 LIBS=`echo $LIBS | sed -e "s/-ldl//"`
107 build_target="openbsd"
113 AC_DEFINE_UNQUOTED(SOMEBSD,1,[This is a BSD system])
114 AC_DEFINE_UNQUOTED(NETBSD,1,[This is a NetBSD system])
120 AC_DEFINE_UNQUOTED(SOLARIS,1,[This is a Solaris system])
121 AC_DEFINE_UNQUOTED(_REENTRANT,1,[Need with solaris or errno doesnt work])
122 AC_CHECK_LIB(resolv, res_init)
123 AC_CHECK_LIB(rt, nanosleep)
124 build_target="solaris"
130 AC_DEFINE_UNQUOTED(LINUX,1,[This is a Linux kernel])
131 CFLAGS="-D_REENTRANT -fPIC -pipe $CFLAGS"
138 AC_DEFINE_UNQUOTED(CYGWIN,1,[This is a Cygwin system])
139 AC_DEFINE_UNQUOTED(WINDOWS,1,[This is a Windows system])
140 AC_CHECK_LIB(intl, gettext)
141 LDFLAGS="$LDFLAGS -no-undefined"
142 CFLAGS="-mms-bitfields $CFLAGS"
143 build_target="cygwin"
150 AC_DEFINE_UNQUOTED(MINGW,1,[This is a MinGW system])
151 AC_DEFINE_UNQUOTED(WINDOWS,1,[This is a Windows system])
152 AC_DEFINE_UNQUOTED(_WIN32,1,[This is a Windows system])
153 AC_CHECK_LIB(intl, gettext)
154 LDFLAGS="$LDFLAGS -Wl,-no-undefined -Wl,--export-all-symbols"
155 LIBS="$LIBS -lws2_32 -lplibc -lgnurx -lole32"
156 CFLAGS="-mms-bitfields $CFLAGS"
157 CPPFLAGS="-D_WIN32_WINNT=0x0501 -DHAVE_STAT64=1 -D__USE_MINGW_ANSI_STDIO=1 $CPPFLAGS"
164 native_srcdir=$(cd $srcdir; pwd -W)
167 AC_DEFINE_UNQUOTED(GNU,1,[This is a GNU system])
172 AC_MSG_RESULT(Unrecognised OS $host_os)
173 AC_DEFINE_UNQUOTED(OTHEROS,1,[Some strange OS])
177 AC_DEFINE_UNQUOTED([GNUNET_DEFAULT_INTERFACE], $DEFAULT_INTERFACE, [This should be the default choice for the name of the first network interface])
178 AC_SUBST(DEFAULT_INTERFACE)
180 # Disable TCP-based IPC on systems that support UNIX domain
181 # sockets in default configuratin:
185 AC_MSG_CHECKING([for build target])
186 AM_CONDITIONAL(DARWIN, test "$build_target" = "darwin")
187 AM_CONDITIONAL(CYGWIN, test "$build_target" = "cygwin")
188 AM_CONDITIONAL(MINGW, test "$build_target" = "mingw")
189 AM_CONDITIONAL(SOLARIS, test "$build_target" = "solaris")
190 AM_CONDITIONAL(XFREEBSD, test "$build_target" = "freebsd")
191 AM_CONDITIONAL(OPENBSD, test "$build_target" = "openbsd")
192 AM_CONDITIONAL(LINUX, test "$build_target" = "linux")
193 AM_CONDITIONAL(GNU, test "$build_target" = "gnu")
195 AC_MSG_RESULT([$build_target])
196 AC_SUBST(build_target)
197 AM_CONDITIONAL([am__fastdepOBJC], false)
198 AC_UNALIGNED_64_ACCESS
200 # some other checks for standard libs
201 AC_SEARCH_LIBS([gethostbyname], [nsl ws2_32])
202 AC_CHECK_LIB(socket, socket)
204 AC_CHECK_LIB(c, getloadavg, AC_DEFINE(HAVE_GETLOADAVG,1,[getloadavg supported]))
206 # 'save' libs; only those libs found so far will be
207 # linked against _everywhere_. For the others, we
208 # will be more selective!
211 # libgnurx (regex library for W32)
213 AC_CHECK_LIB(gnurx, regexec, gnurx=1)
214 if test "x$gnurx" = "x0" -a "x$build_target" = "xmingw"
216 AC_MSG_ERROR([on W32 GNUnet needs libgnurx])
222 NEED_LIBGCRYPT_VERSION=1.6.0
225 AM_PATH_LIBGCRYPT("$NEED_LIBGCRYPT_API:$NEED_LIBGCRYPT_VERSION", gcrypt=1)
226 AC_CHECK_DECLS([gcry_mpi_lshift], [], [], [[#include <gcrypt.h>]])
232 *** You need libgcrypt to build this program.
233 ** This library is for example available at
234 *** ftp://ftp.gnupg.org/gcrypt/libgcrypt/
235 *** (at least version $NEED_LIBGCRYPT_VERSION (API $NEED_LIBGCRYPT_API)
239 AC_DEFINE_UNQUOTED([NEED_LIBGCRYPT_VERSION], "$NEED_LIBGCRYPT_VERSION", [required libgcrypt version])
241 # Adam shostack suggests the following for Windows:
242 # -D_FORTIFY_SOURCE=2 -fstack-protector-all
243 AC_ARG_ENABLE(gcc-hardening,
244 AS_HELP_STRING(--enable-gcc-hardening, enable compiler security checks),
245 [if test x$enableval = xyes; then
246 CFLAGS="$CFLAGS -D_FORTIFY_SOURCE=2 -fstack-protector-all"
247 CFLAGS="$CFLAGS -fwrapv -fPIE -Wstack-protector"
248 CFLAGS="$CFLAGS --param ssp-buffer-size=1"
249 LDFLAGS="$LDFLAGS -pie"
253 # Linker hardening options
254 # Currently these options are ELF specific - you can't use this with MacOSX
255 AC_ARG_ENABLE(linker-hardening,
256 AS_HELP_STRING(--enable-linker-hardening, enable linker security fixups),
257 [if test x$enableval = xyes; then
258 LDFLAGS="$LDFLAGS -z relro -z now"
262 extra_logging=GNUNET_NO
263 AC_ARG_ENABLE([logging],
264 AS_HELP_STRING([--enable-logging@<:@=value@:>@],[Enable logging calls. Possible values: yes,no,verbose,veryverbose ('yes' is the default)]),
265 [AS_IF([test "x$enableval" = "xyes"], [],
266 [test "x$enableval" = "xno"], [AC_DEFINE([GNUNET_CULL_LOGGING],[],[Define to cull all logging calls])],
267 [test "x$enableval" = "xverbose"], [extra_logging=GNUNET_YES]
268 [test "x$enableval" = "xveryverbose"], [extra_logging=\(GNUNET_YES+1\)])
270 AC_DEFINE_UNQUOTED([GNUNET_EXTRA_LOGGING],[$extra_logging],[1 if extra logging is enabled, 2 for very verbose extra logging, 0 otherwise])
272 # should memory poisoning be enabled?
273 AC_MSG_CHECKING(whether to poison freed memory)
274 AC_ARG_ENABLE([poisoning],
275 [AS_HELP_STRING([--enable-poisoning], [enable poisoning of freed memory (good for debugging)])],
276 [enable_poisoning=${enableval}],
278 if test "x$extra_logging" != "xGNUNET_NO"; then
279 enable_poisoning="defaults to yes (extra logging is enabled)"
284 AC_MSG_RESULT($enable_poisoning)
285 if test ! "x$enable_poisoning" = "xno"; then
290 AC_DEFINE_UNQUOTED([ENABLE_POISONING],[$enable_poisoning],[1 if freed memory should be poisoned, 0 otherwise])
292 if test $build = $target
294 AC_MSG_CHECKING([for working HMAC])
296 LIBS="$LIBS $LIBGCRYPT_LIBS"
297 CFLAGS="$CFLAGS $LIBGCRYPT_CFLAGS"
299 [AC_LANG_PROGRAM([#include <gcrypt.h>
300 #include <stdio.h>], [[
303 unsigned char data[] = { 0xbf, 0x16, 0x6e, 0x46, 0x3a, 0x6c, 0xf3, 0x93, 0xa7, 0x72,
304 0x11, 0xa1, 0xdc, 0x0b, 0x07, 0xdb, 0x1a, 0x5e, 0xd9, 0xb9, 0x81, 0xbe,
305 0xea, 0xe4, 0x31, 0x5f, 0x24, 0xff, 0xfe, 0x50, 0x8a, 0xde };
306 unsigned char key[] = { 0xfc, 0x62, 0x76, 0x35 };
307 unsigned char result[] = {0xa2, 0xb, 0x1, 0xd9, 0xc0, 0x8b, 0x5a, 0x12, 0x80,
308 0xd5, 0x50, 0x12, 0x8e, 0xd0, 0x5b, 0xb6, 0x5c, 0x87, 0x24, 0xe2, 0xd0,
309 0xd2, 0xaf, 0x63, 0xae, 0xd1, 0xd6, 0x64, 0x14, 0xe3, 0x6e, 0x61, 0x5b,
310 0xd, 0xba, 0x17, 0x7d, 0xd3, 0x10, 0xb1, 0x37, 0x41, 0x91, 0x7d, 0xeb,
311 0x1, 0x4d, 0x71, 0xe8, 0x59, 0x71, 0x42, 0x8e, 0xd6, 0xf3, 0x29, 0x3b,
312 0x90, 0xf2, 0xd1, 0xaf, 0x65, 0x1e, 0xb3};
314 if (!gcry_check_version (GCRYPT_VERSION))
316 fprintf (stderr, "Version mismatch %s <-> %s \n", gcry_check_version (NULL), GCRYPT_VERSION);
320 gcry_control (GCRYCTL_DISABLE_SECMEM, 0);
321 gcry_control (GCRYCTL_INITIALIZATION_FINISHED, 0);
323 if (gcry_md_open(&mac, GCRY_MD_SHA512, GCRY_MD_FLAG_HMAC) != GPG_ERR_NO_ERROR)
325 fprintf (stderr, "gcry_md_open error\n");
329 gcry_md_setkey (mac, key, sizeof (key));
330 gcry_md_write (mac, data, sizeof (data));
332 if (memcmp(gcry_md_read (mac, 0), result, gcry_md_get_algo_dlen (gcry_md_get_algo (mac))) != 0)
334 fprintf (stderr, "memcmp error\n");
342 [AC_MSG_RESULT([yes])],
347 AC_MSG_FAILURE([HMAC test vector does not match. This is a known problem with libgcrypt 1.2.2 on Windows and fixed in 1.4.6.])
351 AC_MSG_FAILURE([HMAC test failed])
355 AC_MSG_FAILURE([libgcrypt header version does not match library version])
359 fi # $build = $target
361 # check for bluetooth library
363 AC_CHECK_LIB(bluetooth, ba2str, bluetooth=1, bluetooth=0)
364 if test "$bluetooth" = 1
366 AM_CONDITIONAL(HAVE_LIBBLUETOOTH, true)
367 AC_DEFINE([HAVE_LIBBLUETOOTH],[1],[Have bluetooth library])
369 AM_CONDITIONAL(HAVE_LIBBLUETOOTH, false)
371 if test "$build_target" = "mingw"
378 LIBCURL_CHECK_CONFIG(,7.21.3,curl=1,curl=0)
381 AM_CONDITIONAL(HAVE_LIBCURL, true)
382 AC_DEFINE([HAVE_LIBCURL],[1],[Have libcurl])
384 AM_CONDITIONAL(HAVE_LIBCURL, false)
389 AC_MSG_CHECKING([if Libidn can be used])
390 AC_ARG_WITH(libidn, AC_HELP_STRING([--with-libidn=[DIR]],
391 [Support IDN (needs GNU Libidn)]),
392 libidn=$withval, libidn=yes)
393 if test "$libidn" != "no"; then
394 if test "$libidn" != "yes"; then
395 LDFLAGS="${LDFLAGS} -L$libidn/lib"
396 CPPFLAGS="${CPPFLAGS} -I$libidn/include"
398 AC_CHECK_HEADER(idna.h,
399 AC_CHECK_LIB(idn, stringprep_check_version,
400 [libidn=yes LIBS="${LIBS} -lidn"],
401 AC_MSG_FAILURE([GNUnet requires libidn])),
402 AC_MSG_FAILURE([GNUnet requires libidn]))
404 AC_MSG_RESULT($libidn)
410 AC_CHECK_HEADERS([glpk.h],[glpk=true],[gplk=false])
411 # GLPK must support glpk_init_env, version >= 4.43
412 AC_CHECK_LIB([glpk],[glp_init_env],,[gplk=false])
413 # GLPK must support atm MLP presolving, version >= 4.32
414 AC_CHECK_MEMBERS(glp_iocp.presolve,,[gplk=false],[[#include <glpk.h>]])
415 if test x$gplk = xfalse
417 AM_CONDITIONAL(HAVE_LIBGLPK, false)
418 AC_MSG_WARN([GNUnet requires GLPK >= 4.32])
420 AM_CONDITIONAL(HAVE_LIBGLPK, true)
421 AC_DEFINE([HAVE_LIBGLPK],[1],[Have GLPK])
426 AC_CHECK_HEADERS([nss.h],[nss=true],[nss=false])
427 if test x$nss = xfalse
429 AM_CONDITIONAL(HAVE_GLIBCNSS, false)
430 AC_MSG_WARN([No GNU libc nss header, will not build NSS plugin])
432 AM_CONDITIONAL(HAVE_GLIBCNSS, true)
437 # test for kvm and kstat (for CPU stats under BSD/Solaris)
438 AC_CHECK_LIB([kvm],[kvm_open])
439 AC_CHECK_LIB([kstat],[kstat_open])
441 # test for libextractor
443 AC_MSG_CHECKING(for libextractor)
444 AC_ARG_WITH(extractor,
445 [ --with-extractor=PFX base of libextractor installation],
446 [AC_MSG_RESULT([$with_extractor])
447 case $with_extractor in
451 AC_CHECK_HEADERS(extractor.h,
452 AC_CHECK_LIB([extractor], [EXTRACTOR_plugin_add_defaults],
456 LDFLAGS="-L$with_extractor/lib $LDFLAGS"
457 CPPFLAGS="-I$with_extractor/include $CPPFLAGS"
458 AC_CHECK_HEADERS(extractor.h,
459 AC_CHECK_LIB([extractor], [EXTRACTOR_plugin_add_defaults],
460 EXT_LIB_PATH="-L$with_extractor/lib $EXT_LIB_PATH"
465 [AC_MSG_RESULT([--with-extractor not specified])
466 AC_CHECK_HEADERS(extractor.h,
467 AC_CHECK_LIB([extractor], [EXTRACTOR_plugin_add_defaults],
469 if test "$extractor" != 1
471 AC_MSG_ERROR([GNUnet requires libextractor])
476 # Check for libltdl header (#2999)
478 AC_MSG_CHECKING(for libltdl)
480 [ --with-ltdl=PFX base of libltdl installation],
481 [AC_MSG_RESULT([$with_ltdl])
486 AC_CHECK_HEADERS(ltdl.h,
487 AC_CHECK_LIB([ltdl], [lt_dlopenext],
491 LDFLAGS="-L$with_ltdl/lib $LDFLAGS"
492 CPPFLAGS="-I$with_ltdl/include $CPPFLAGS"
493 AC_CHECK_HEADERS(ltdl.h,
494 AC_CHECK_LIB([ltdl], [lt_dlopenext],
495 EXT_LIB_PATH="-L$with_ltdl/lib $EXT_LIB_PATH"
500 [AC_MSG_RESULT([--with-ltdl not specified])
501 AC_CHECK_HEADERS(ltdl.h,
502 AC_CHECK_LIB([ltdl], [lt_dlopenext],
506 AC_MSG_RESULT([libltdl found])
508 AC_MSG_ERROR([GNUnet requires libltdl (from GNU libtool), try installing libltdl-dev])
513 # test for libunistring
515 if test $HAVE_LIBUNISTRING != yes; then
516 AC_MSG_ERROR([GNUnet requires libunistring])
518 if test $gl_libunistring_hexversion -le 2305; then
519 AC_MSG_ERROR([GNUnet requires libunistring >= 0.9.1.1])
526 # Checks for standard header files.
530 # Check for headers that are ALWAYS required
531 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]))
535 # Checks for headers that are only required on some systems or opional (and where we do NOT abort if they are not there)
536 AC_CHECK_HEADERS([malloc.h malloc/malloc.h 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 netinet/ip.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 ucred.h endian.h sys/endian.h execinfo.h])
538 SAVE_LDFLAGS=$LDFLAGS
539 SAVE_CPPFLAGS=$CPPFLAGS
543 AC_MSG_CHECKING(for SQLite)
545 [ --with-sqlite=PFX base of SQLite installation],
546 [AC_MSG_RESULT("$with_sqlite")
551 AC_CHECK_HEADERS(sqlite3.h,
555 LDFLAGS="-L$with_sqlite/lib $LDFLAGS"
556 CPPFLAGS="-I$with_sqlite/include $CPPFLAGS"
557 AC_CHECK_HEADERS(sqlite3.h,
558 EXT_LIB_PATH="-L$with_sqlite/lib $EXT_LIB_PATH"
559 SQLITE_LDFLAGS="-L$with_sqlite/lib"
560 SQLITE_CPPFLAGS="-I$with_sqlite/include"
562 LDFLAGS=$SAVE_LDFLAGS
563 CPPFLAGS=$SAVE_CPPFLAGS
567 [AC_MSG_RESULT([--with-sqlite not specified])
568 AC_CHECK_HEADERS(sqlite3.h, sqlite=true)])
569 AM_CONDITIONAL(HAVE_SQLITE, test x$sqlite = xtrue)
570 AC_SUBST(SQLITE_CPPFLAGS)
571 AC_SUBST(SQLITE_LDFLAGS)
575 AC_MSG_CHECKING(for postgres)
576 AC_ARG_WITH(postgres,
577 [ --with-postgres=PFX base of postgres installation],
578 [AC_MSG_RESULT("$with_postgres")
579 case $with_postgres in
583 AC_CHECK_HEADERS(postgresql/libpq-fe.h,
587 LDFLAGS="-L$with_postgres/lib $LDFLAGS"
588 CPPFLAGS="-I$with_postgres/include $CPPFLAGS"
589 AC_CHECK_HEADERS(postgresql/libpq-fe.h,
590 EXT_LIB_PATH="-L$with_postgres/lib $EXT_LIB_PATH"
591 POSTGRES_LDFLAGS="-L$with_postgres/lib"
592 POSTGRES_CPPFLAGS="-I$with_postgres/include"
594 LDFLAGS=$SAVE_LDFLAGS
595 CPPFLAGS=$SAVE_CPPFLAGS
599 [AC_MSG_RESULT([--with-postgres not specified])
600 AC_CHECK_HEADERS(postgresql/libpq-fe.h, postgres=true)])
601 AM_CONDITIONAL(HAVE_POSTGRES, test x$postgres = xtrue)
602 AC_SUBST(POSTGRES_CPPFLAGS)
603 AC_SUBST(POSTGRES_LDFLAGS)
606 SAVE_LDFLAGS=$LDFLAGS
607 SAVE_CPPFLAGS=$CPPFLAGS
609 [ --with-zlib[[=DIR]] use libz in DIR],
610 [AS_IF([test "$withval" = "no"],
611 [AC_MSG_ERROR([GNUnet requires zlib])],
612 [test "$withval" != "yes"],
615 CPPFLAGS="${CPPFLAGS} -I$withval/include"
616 LDFLAGS="${LDFLAGS} -L$withval/lib"
619 AC_CHECK_HEADER(zlib.h,
621 [AC_MSG_ERROR([GNUnet requires zlib])])
622 AC_CHECK_LIB(z, compress2,
624 AC_DEFINE([HAVE_ZLIB], [], [Have compression library])
625 if test "x${Z_DIR}" != "x"; then
626 Z_CFLAGS="-I${Z_DIR}/include"
627 Z_LIBS="-L${Z_DIR}/lib -lz"
631 [AC_MSG_ERROR([GNUnet requires zlib])])
635 LDFLAGS=$SAVE_LDFLAGS
636 CPPFLAGS=$SAVE_CPPFLAGS
639 AC_CHECK_TYPES([sigset_t, off_t], [], [], [#include <sys/types.h>])
640 AC_CHECK_TYPES([size_t], [], [], [#include <stdio.h>])
642 if test "$build_target" = "mingw"
644 CYGWIN_MYSQL_MAGIC="#include <mysql/my_global.h>"
650 SAVE_LDFLAGS=$LDFLAGS
651 SAVE_CPPFLAGS=$CPPFLAGS
652 AC_MSG_CHECKING(for mysql)
654 [ --with-mysql=PFX base of MySQL installation],
655 [AC_MSG_RESULT("$with_mysql")
656 if test "$with_mysql" != "no"
658 if test "$with_mysql" != "yes"
660 LDFLAGS="-L$with_mysql/lib -L$with_mysql/lib/mysql $LDFLAGS $ZLIBS"
661 CPPFLAGS="-I$with_mysql/include $CPPFLAGS"
663 AC_CHECK_HEADERS(mysql/mysql.h,
664 AC_CHECK_LIB(mysqlclient, mysql_init,
665 MYSQL_LDFLAGS="-L$with_mysql/lib -L$with_mysql/lib/mysql"
666 MYSQL_CPPFLAGS="-I$with_mysql/include"
668 mysql=true), [], [$CYGWIN_MYSQL_MAGIC])
671 [AC_MSG_RESULT([--with-mysql not specified])
672 if test -d "/usr/lib64/mysql"; then
673 MYSQL_LIBDIR="/usr/lib64/mysql"
674 elif test -d "/usr/lib/mysql"; then
675 MYSQL_LIBDIR="/usr/lib/mysql"
677 MYSQL_LIBDIR="/usr/lib"
679 LDFLAGS="-L$MYSQL_LIBDIR $LDFLAGS $ZLIBS"
680 AC_CHECK_LIB(mysqlclient, mysql_init,
681 [AC_CHECK_HEADERS(mysql/mysql.h,
682 MYSQL_LDFLAGS="-L$MYSQL_LIBDIR"
685 , [], [$CYGWIN_MYSQL_MAGIC])])
688 AC_SUBST(MYSQL_LDFLAGS)
689 AC_SUBST(MYSQL_CPPFLAGS)
691 # additional version check for mysql
692 AC_ARG_ENABLE(mysql-version-check, [ --disable-mysql-version-check do not check MySQL version],, enable_mysql_version_check=yes)
693 if test "$mysql" = "true" -a "x$enable_mysql_version_check" = "xyes"
695 AC_MSG_CHECKING(mysql version)
696 AC_RUN_IFELSE([AC_LANG_PROGRAM(
697 [[$CYGWIN_MYSQL_MAGIC
698 #include <mysql/mysql.h>]],
699 [[if (MYSQL_VERSION_ID < 40100)
704 ],mysql=true,mysql=false)
705 if test "$mysql" = "false"
708 AC_MSG_RESULT([fail, >= 4.1 required])
713 AM_CONDITIONAL(HAVE_MYSQL, test x$mysql = xtrue)
714 AM_CONDITIONAL(HAVE_MYSQLE, test "0" = "1")
717 LDFLAGS=$SAVE_LDFLAGS
718 CPPFLAGS=$SAVE_CPPFLAGS
720 if test "$sqlite" = 0 -a "$mysql" = 0
722 AC_MSG_ERROR([GNUnet requires SQLite or MySQL])
727 AC_MSG_CHECKING([for libmicrohttpd])
728 AC_ARG_WITH(microhttpd,
729 [ --with-microhttpd=PFX base of libmicrohttpd installation],
730 [AC_MSG_RESULT([$with_microhttpd])
731 case $with_microhttpd in
735 AC_CHECK_HEADERS([microhttpd.h],
736 AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT,
737 AC_CHECK_LIB([microhttpd], [MHD_start_daemon],
738 [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.31])
739 AC_RUN_IFELSE([AC_LANG_SOURCE([
740 #include "$native_srcdir/src/include/platform.h"
741 #include <microhttpd.h>
742 int main () { return MHD_VERSION >= 0x0093002 ? 0 : 1; }
745 lmhd=1],[AC_MSG_RESULT(failed)],lmhd=1)]),
746 [],[#include "$native_srcdir/src/include/platform.h"
747 #include <microhttpd.h>]),,
748 [#include "$native_srcdir/src/include/platform.h"])
751 LDFLAGS="-L$with_microhttpd/lib $LDFLAGS"
752 CPPFLAGS="-I$with_microhttpd/include $CPPFLAGS"
753 AC_CHECK_HEADERS(microhttpd.h,
754 AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT,
755 AC_CHECK_LIB([microhttpd], [MHD_start_daemon],
756 EXT_LIB_PATH="-L$with_microhttpd/lib $EXT_LIB_PATH"
757 [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.31])
758 AC_RUN_IFELSE([AC_LANG_SOURCE([
759 #include "$native_srcdir/src/include/platform.h"
760 #include <microhttpd.h>
761 int main () { return MHD_VERSION >= 0x0093002 ? 0 : 1; }
764 lmhd=1],[AC_MSG_RESULT(failed)],lmhd=1)]),
765 [],[#include "$native_srcdir/src/include/platform.h"
766 #include <microhttpd.h>]),,
767 [#include "$native_srcdir/src/include/platform.h"])
771 [AC_MSG_RESULT([--with-microhttpd not specified])
772 AC_CHECK_HEADERS([microhttpd.h],
773 AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT,
774 AC_CHECK_LIB([microhttpd], [MHD_start_daemon],
775 [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.31])
776 AC_RUN_IFELSE([AC_LANG_SOURCE([
777 #include "$native_srcdir/src/include/platform.h"
778 #include <microhttpd.h>
779 int main () { return MHD_VERSION >= 0x0093002 ? 0 : 1; }
782 lmhd=1],[AC_MSG_RESULT(failed)],lmhd=1)]),
783 [],[#include "$native_srcdir/src/include/platform.h"
784 #include <microhttpd.h>]),,
785 [#include "$native_srcdir/src/include/platform.h"])])
786 AM_CONDITIONAL(HAVE_MHD, test x$lmhd = x1)
787 AC_DEFINE_UNQUOTED([HAVE_MHD], $lmhd, [We have libmicrohttpd])
793 # check for python & pexpect (used for some testcases only)
794 AM_PATH_PYTHON([2.6],, [:])
795 AM_CONDITIONAL([HAVE_PYTHON], [test "$PYTHON" != :])
798 AM_GNU_GETTEXT([external])
799 AM_GNU_GETTEXT_VERSION([0.16.1])
804 # Checks for standard typedefs, structures, and compiler characteristics.
813 AC_CHECK_MEMBER([struct sockaddr_in.sin_len],
814 [ AC_DEFINE(HAVE_SOCKADDR_IN_SIN_LEN, 1, [Do we have sockaddr_in.sin_len?])
818 #include <sys/types.h>
819 #include <sys/socket.h>
820 #include <netinet/in.h>
825 # Checks for library functions.
826 AC_FUNC_CLOSEDIR_VOID
828 AC_PROG_GCC_TRADITIONAL
830 AC_FUNC_SELECT_ARGTYPES
840 AC_CHECK_FUNCS([atoll stat64 strnlen mremap getrlimit setrlimit sysconf initgroups strndup gethostbyname2 getpeerucred getpeereid setresuid $funcstocheck getifaddrs freeifaddrs getresgid mallinfo malloc_size malloc_usable_size getrusage random srandom stat statfs statvfs])
845 gn_user_home_dir="~/.gnunet"
846 AC_ARG_WITH(user-home-dir,
848 [--with-user-home-dir=DIR],
849 [default user home directory (~/.gnunet)]),
850 [gn_user_home_dir=$withval])
851 AC_SUBST(GN_USER_HOME_DIR, $gn_user_home_dir)
852 gn_daemon_home_dir="/var/lib/gnunet"
853 AC_ARG_WITH(daemon-home-dir,
855 [--with-daemon-home-dir=DIR],
856 [default daemon home directory (/var/lib/gnunet)]),
857 [gn_daemon_home_dir=$withval])
858 AC_SUBST(GN_DAEMON_HOME_DIR, $gn_daemon_home_dir)
859 gn_daemon_config_dir="/etc"
860 AC_ARG_WITH(daemon-config-dir,
862 [--with-daemon-config-dir=DIR],
863 [default daemon config directory (/etc)]),
864 [gn_daemon_config_dir=$withval])
865 AC_SUBST(GN_DAEMON_CONFIG_DIR, $gn_daemon_config_dir)
868 GN_LIBINTL="$LTLIBINTL"
869 AC_ARG_ENABLE(framework, [ --enable-framework enable Mac OS X framework build helpers],enable_framework_build=$enableval)
870 AM_CONDITIONAL(WANT_FRAMEWORK, test x$enable_framework_build = xyes)
871 if test x$enable_framework_build = xyes
873 AC_DEFINE([FRAMEWORK_BUILD], 1, [Build a Mac OS X Framework])
874 GN_INTLINCL='-I$(top_srcdir)/src/intlemu'
875 GN_LIBINTL='$(top_builddir)/src/intlemu/libintlemu.la -framework CoreFoundation'
876 AC_LIB_APPENDTOVAR([CPPFLAGS], [$GN_INTLINCL])
879 GN_LIB_LDFLAGS="-export-dynamic -no-undefined"
880 GN_PLUGIN_LDFLAGS="-export-dynamic -avoid-version -module -no-undefined"
882 AC_SUBST(GN_LIB_LDFLAGS)
883 AC_SUBST(GN_PLUGIN_LDFLAGS)
884 AC_SUBST(GN_INTLINCL)
890 AC_SUBST(EXT_LIB_PATH)
895 AC_SUBST(EXT_LIB_PATH)
899 AC_MSG_CHECKING(for sudo)
901 [ --with-sudo=PATH path to sudo binary (or just yes)],
902 [AC_MSG_RESULT("$with_sudo")
911 SUDO_BINARY=$with_sudo
915 [AC_MSG_RESULT([no])])
916 AC_SUBST(SUDO_BINARY)
917 AM_CONDITIONAL([HAVE_SUDO], [test "x$SUDO_BINARY" != "x" -o -w /])
921 AC_MSG_CHECKING(with nssdir)
923 [ --with-nssdir=PATH where to install NSS plugins],
924 [AC_MSG_RESULT("$with_nssdir")
941 if test "x$SUDO_BINARY" != "x" -o -w /
945 AC_MSG_RESULT([yes, to /lib])
953 AM_CONDITIONAL([INSTALL_NSS], [test "x$install_nss" != "x0"])
955 # test for gnunetdns group name
956 GNUNETDNS_GROUP=gnunetdns
957 AC_MSG_CHECKING(for gnunetdns group name)
958 AC_ARG_WITH(gnunetdns,
959 [ --with-gnunetdns=GRPNAME name for gnunetdns group],
960 [AC_MSG_RESULT("$with_gnunetdns")
961 case $with_gnunetdns in
963 GNUNETDNS_GROUP=gnunet
966 GNUNETDNS_GROUP=gnunetdns
969 GNUNETDNS_GROUP=$with_gnunetdns
973 [AC_MSG_RESULT([gnunetdns])])
974 AC_SUBST(GNUNETDNS_GROUP)
980 AC_MSG_CHECKING(for gnutls)
982 [ --with-gnutls=PFX base of gnutls installation],
983 [AC_MSG_RESULT([$with_gnutls])
988 AC_CHECK_HEADERS([gnutls/abstract.h],
989 AC_CHECK_LIB([gnutls], [gnutls_priority_set],
993 LDFLAGS="-L$with_gnutls/lib $LDFLAGS"
994 CPPFLAGS="-I$with_gnutls/include $CPPFLAGS"
995 AC_CHECK_HEADERS([gnutls/abstract.h],
996 AC_CHECK_LIB([gnutls], [gnutls_priority_set],
997 EXT_LIB_PATH="-L$with_gnutls/lib $EXT_LIB_PATH"
1002 [AC_MSG_RESULT([--with-gnutls not specified])
1003 AC_CHECK_HEADERS([gnutls/abstract.h],
1004 AC_CHECK_LIB([gnutls], [gnutls_priority_set],
1006 AM_CONDITIONAL(HAVE_GNUTLS, test x$gnutls = xtrue)
1007 AC_DEFINE_UNQUOTED([HAVE_GNUTLS], $gnutls, [We have gnutls])
1010 # Test if we are building for superMUC
1011 AC_MSG_CHECKING(if testbed should use IBM LoadLeveler to run on SuperMUC)
1013 [AS_HELP_STRING([--enable-ll],
1014 [build GNUnet testbed for use with IBM LoadLeveler for running testbed on
1015 SuperMUC (default is NO)])],
1016 [if test "x$enable_ll" = "xno"
1024 AC_MSG_RESULT($enable_ll)
1025 AM_CONDITIONAL([ENABLE_LL], [test "x$ll" = "x1"])
1026 AC_DEFINE_UNQUOTED([ENABLE_LL], [$ll], [Build with LL support])
1028 # Check if NSE has to send timestamp information to testbed logger for
1029 # generating histogram of messages received
1030 AC_MSG_CHECKING(if NSE has to send timestamp information to testbed logger)
1031 AC_ARG_ENABLE([nse-histogram],
1032 [AS_HELP_STRING([--enable-nse-histogram],
1033 [have NSE send timestamp information to testbed logger for generating
1034 histogram of received messages. NOT useful for production (default is
1036 [if test "x$enableval" = "xno"
1043 enable_nse_histogram=no])
1044 AC_MSG_RESULT($enable_nse_histogram)
1045 AM_CONDITIONAL([ENABLE_NSE_HISTOGRAM], [test "x$nse_histogram" = "x1"])
1046 AC_DEFINE_UNQUOTED([ENABLE_NSE_HISTOGRAM], [$nse_histogram],
1047 [have NSE send timestamp information to testbed logger])
1049 # should 'make check' run tests?
1050 AC_MSG_CHECKING(whether to run tests)
1051 AC_ARG_ENABLE([testruns],
1052 [AS_HELP_STRING([--disable-testruns], [disable running tests on make check (default is YES)])],
1053 [enable_tests_run=${enableval}],
1054 [enable_tests_run=yes])
1055 AC_MSG_RESULT($enable_test_run)
1056 AM_CONDITIONAL([ENABLE_TEST_RUN], [test "x$enable_tests_run" = "xyes"])
1059 # should monkey be used when running (certain) services?
1060 AC_MSG_CHECKING(whether to run with monkey)
1061 AC_ARG_ENABLE([monkey],
1062 [AS_HELP_STRING([--enable-monkey], [enable running with monkey])],
1063 [enable_monkey=${enableval}],
1065 AC_MSG_RESULT($enable_monkey)
1066 AM_CONDITIONAL([ENABLE_MONKEY], [test "x$enable_monkey" = "xyes"])
1067 if test "x$enable_monkey" = "xyes"
1069 MONKEYPREFIX="pathologist -d $(eval echo ${datarootdir}/gnunet/gnunet.sqlite) -p 30 --"
1073 AC_SUBST(MONKEYPREFIX)
1076 # should expensive tests be run?
1077 AC_MSG_CHECKING(whether to run expensive tests)
1078 AC_ARG_ENABLE([expensivetests],
1079 [AS_HELP_STRING([--enable-expensivetests], [enable running expensive testcases])],
1080 [enable_expensive=${enableval}],
1081 [enable_expensive=no])
1082 AC_MSG_RESULT($enable_expensive)
1083 AM_CONDITIONAL([HAVE_EXPENSIVE_TESTS], [test "x$enable_expensive" = "xyes"])
1085 # should ports be open for Java services?
1086 AC_MSG_CHECKING(whether to enable ports for gnunet-java)
1087 AC_ARG_ENABLE([javaports],
1088 [AS_HELP_STRING([--enable-javaports], [use non-zero ports for services with Java bindings (default is NO)])],
1089 [enable_java_ports=${enableval}],
1090 [enable_java_ports=no])
1091 AC_MSG_RESULT($enable_java_ports)
1092 if test "x$enable_java_ports" = "xyes"
1096 JAVAPORT="$UNIXONLY"
1100 # should benchmarks be run?
1101 AC_MSG_CHECKING(whether to run benchmarks during make check)
1102 AC_ARG_ENABLE([benchmarks],
1103 [AS_HELP_STRING([--enable-benchmarks], [enable running benchmarks during make check])],
1104 [enable_benchmarks=${enableval}],
1105 [enable_benchmarks=no])
1106 AC_MSG_RESULT($enable_benchmarks)
1107 AM_CONDITIONAL([HAVE_BENCHMARKS], [test "x$enable_benchmarks" = "xyes"])
1109 # should gnunet-testing be compiled
1110 AC_MSG_CHECKING(wether to compile gnunet-testing)
1111 AC_ARG_ENABLE([testing],
1112 [AS_HELP_STRING([--disable-testing], [do not build gnunet-testing])],
1113 [enable_testing=${enableval}],
1114 [enable_testing=yes])
1115 AC_MSG_RESULT($enable_testing)
1116 AM_CONDITIONAL([HAVE_TESTING], [test "x$enable_testing" = "xyes"])
1118 # should experimental code be compiled (code that may not yet compile)?
1119 AC_MSG_CHECKING(whether to compile experimental code)
1120 AC_ARG_ENABLE([experimental],
1121 [AS_HELP_STRING([--enable-experimental], [enable compiling experimental code])],
1122 [enable_experimental=${enableval}],
1123 [enable_experimental=no])
1124 AC_MSG_RESULT($enable_experimental)
1125 AM_CONDITIONAL([HAVE_EXPERIMENTAL], [test "x$enable_experimental" = "xyes"])
1127 # should memory statistics be kept (very expensive CPU-wise!)
1128 AC_MSG_CHECKING(whether to create expensive statistics on memory use)
1129 AC_ARG_ENABLE([heapstats],
1130 [AS_HELP_STRING([--enable-heapstats], [enable expensive heap statistics])],
1131 [enable_heapstats=1],
1132 [enable_heapstats=0])
1133 AC_MSG_RESULT($enable_heapstats)
1134 AC_DEFINE_UNQUOTED([ENABLE_HEAP_STATISTICS],$enable_heapstats,[enable expensive heap statistics])
1136 # should code be enabled that works around missing OS functionality on Windows?
1137 # used for test cases
1138 if test $build_target = "mingw"
1144 [#include <ws2tcpip.h>
1146 int s = socket (0, 0, 0);])
1148 AC_DEFINE_UNQUOTED([HAVE_SOCKET],1,[Define this if socket() is available])
1150 AC_DEFINE_UNQUOTED([HAVE_SOCKET],0,[Define this if socket() is available])
1155 [#include <ws2tcpip.h>
1157 int s = select (0, NULL, NULL, NULL, NULL);])
1159 AC_DEFINE_UNQUOTED([HAVE_SELECT],1,[Define this if select() is available])
1161 AC_DEFINE_UNQUOTED([HAVE_SELECT],0,[Define this if select() is available])
1166 [#include <ws2tcpip.h>
1169 char *s = inet_ntoa (i);])
1171 AC_DEFINE_UNQUOTED([HAVE_INET_NTOA],1,[Define this if inet_ntoa() is available])
1173 AC_DEFINE_UNQUOTED([HAVE_INET_NTOA],0,[Define this if inet_ntoa() is available])
1178 [#include <ws2tcpip.h>
1180 int s = getnameinfo (NULL, 0, NULL, 0, NULL, 0, 0);])
1182 AC_DEFINE_UNQUOTED([HAVE_GETNAMEINFO],1,[Define this if getnameinfo() is available])
1184 AC_DEFINE_UNQUOTED([HAVE_GETNAMEINFO],0,[Define this if getnameinfo() is available])
1189 [#include <ws2tcpip.h>
1191 int s = gethostname (NULL, 0);])
1193 AC_DEFINE_UNQUOTED([HAVE_GETHOSTNAME],1,[Define this if gethostname() is available])
1195 AC_DEFINE_UNQUOTED([HAVE_GETHOSTNAME],0,[Define this if gethostname() is available])
1200 [#include <ws2tcpip.h>
1202 void *s = gethostbyname (NULL);])
1204 AC_DEFINE_UNQUOTED([HAVE_GETHOSTBYNAME],1,[Define this if gethostbyname() is available])
1206 AC_DEFINE_UNQUOTED([HAVE_GETHOSTBYNAME],0,[Define this if gethostbyname() is available])
1211 [#include <ws2tcpip.h>
1213 void *s = gethostbyaddr (NULL, 0, 0);])
1215 AC_DEFINE_UNQUOTED([HAVE_GETHOSTBYADDR],1,[Define this if gethostbyaddr() is available])
1217 AC_DEFINE_UNQUOTED([HAVE_GETHOSTBYADDR],0,[Define this if gethostbyaddr() is available])
1222 [#include <ws2tcpip.h>
1224 int s = getaddrinfo (NULL, NULL, NULL, NULL);])
1226 AC_DEFINE_UNQUOTED([HAVE_GETADDRINFO],1,[Define this if getaddrinfo() is available])
1228 AC_DEFINE_UNQUOTED([HAVE_GETADDRINFO],1,[Define this if getaddrinfo() is available])
1232 AC_MSG_CHECKING(whether to enable windows workarounds)
1233 AC_ARG_ENABLE([windows_workarounds],
1234 [AS_HELP_STRING([--enable-windows_workarounds], [enable workarounds used on Windows (only useful for test cases)])],
1235 [enable_workarounds=${enableval}],
1236 [enable_workarounds=no])
1237 AC_MSG_RESULT($enable_workarounds)
1238 if test x$enable_windows_workarounds = "xyes"
1245 AC_DEFINE_UNQUOTED([ENABLE_WINDOWS_WORKAROUNDS], $workarounds, [enable workarounds used on Windows (only useful for test cases)])
1248 AC_MSG_CHECKING(whether to compile with support for code coverage analysis)
1249 AC_ARG_ENABLE([coverage],
1250 AS_HELP_STRING([--enable-coverage],
1251 [compile the library with code coverage support]),
1252 [use_gcov=${enableval}],
1254 AC_MSG_RESULT($use_gcov)
1255 AM_CONDITIONAL([USE_COVERAGE], [test "x$use_gcov" = "xyes"])
1259 AC_PATH_PROG(svnversioncommand, svnversion)
1260 AC_PATH_PROG(gitcommand, git)
1261 if test "X$svnversioncommand" = "X" || test `$svnversioncommand -n '.'` = "exported"
1263 if test "X$gitcommand" = "X"
1265 AC_DEFINE_UNQUOTED(VCS_VERSION, ["release"], [repository svn version])
1267 gitver=$(git log -1 | grep "git-svn-id" | sed -e 's/.*@\([[0-9]]\+\) .*/\1/')
1268 if test "X$gitver" = "X"
1270 AC_DEFINE_UNQUOTED(VCS_VERSION, ["release"], [repository svn version])
1272 AC_DEFINE_UNQUOTED(VCS_VERSION, ["svn-$gitver"], [repository svn version])
1276 AC_DEFINE_UNQUOTED(VCS_VERSION, ["svn-`svnversion -n`"], [repository svn version])
1284 doc/doxygen/Makefile
1292 src/ats-tool/Makefile
1293 src/ats-tests/Makefile
1297 src/consensus/Makefile
1298 src/consensus/consensus.conf
1299 src/datacache/Makefile
1300 src/datastore/Makefile
1301 src/datastore/datastore.conf
1309 src/experimentation/Makefile
1310 src/experimentation/experimentation.conf
1311 src/fragmentation/Makefile
1316 src/gns/nss/Makefile
1318 src/identity/Makefile
1319 src/identity/identity.conf
1320 src/include/Makefile
1321 src/include/gnunet_directories.h
1322 src/integration-tests/Makefile
1323 src/hostlist/Makefile
1324 src/lockmanager/Makefile
1325 src/lockmanager/lockmanager.conf
1328 src/multicast/Makefile
1329 src/multicast/multicast.conf
1331 src/namestore/Makefile
1332 src/namestore/namestore.conf
1336 src/peerinfo/Makefile
1337 src/peerinfo/peerinfo.conf
1338 src/peerinfo-tool/Makefile
1339 src/postgres/Makefile
1342 src/psycstore/Makefile
1343 src/psycstore/psycstore.conf
1346 src/regex/regex.conf
1347 src/scalarproduct/Makefile
1348 src/scalarproduct/scalarproduct.conf
1351 src/statistics/Makefile
1352 src/statistics/statistics.conf
1353 src/template/Makefile
1354 src/testbed/Makefile
1355 src/testbed/testbed.conf
1356 src/testing/Makefile
1357 src/topology/Makefile
1358 src/transport/Makefile
1359 src/transport/transport.conf
1362 src/util/resolver.conf
1366 pkgconfig/gnunetats.pc
1367 pkgconfig/gnunetarm.pc
1368 pkgconfig/gnunetblock.pc
1369 pkgconfig/gnunetcore.pc
1370 pkgconfig/gnunetdatacache.pc
1371 pkgconfig/gnunetdatastore.pc
1372 pkgconfig/gnunetdht.pc
1373 pkgconfig/gnunetdns.pc
1374 pkgconfig/gnunetdnsparser.pc
1375 pkgconfig/gnunetdv.pc
1376 pkgconfig/gnunetfragmentation.pc
1377 pkgconfig/gnunetfs.pc
1378 pkgconfig/gnunetgns.pc
1379 pkgconfig/gnunethello.pc
1380 pkgconfig/gnunetlockmanager.pc
1381 pkgconfig/gnunetmesh.pc
1382 pkgconfig/gnunetmysql.pc
1383 pkgconfig/gnunetnamestore.pc
1384 pkgconfig/gnunetnat.pc
1385 pkgconfig/gnunetnse.pc
1386 pkgconfig/gnunetpeerinfo.pc
1387 pkgconfig/gnunetpostgres.pc
1388 pkgconfig/gnunetregex.pc
1389 pkgconfig/gnunetstatistics.pc
1390 pkgconfig/gnunetstream.pc
1391 pkgconfig/gnunettestbed.pc
1392 pkgconfig/gnunettesting.pc
1393 pkgconfig/gnunettransport.pc
1394 pkgconfig/gnunettun.pc
1395 pkgconfig/gnunetutil.pc
1396 pkgconfig/gnunetvpn.pc
1402 # warn user if mysql found but not used due to version
1403 if test "$mysqlfail" = "true"
1405 AC_MSG_NOTICE([NOTICE: MySQL found, but too old. MySQL support will not be compiled.])
1409 if test "x$sqlite" = "x0"
1411 AC_MSG_NOTICE([NOTICE: sqlite not found. sqLite support will not be compiled.])
1415 if test "x$curl" = "x0"
1417 AC_MSG_NOTICE([NOTICE: libcurl not found. http client support will not be compiled.])
1421 if test "x$bluetooth" = "x0"
1423 AC_MSG_NOTICE([NOTICE: bluetooth library not found. bluetooth support will not be compiled.])
1427 if test x$gnutls != xtrue
1429 AC_MSG_NOTICE([NOTICE: gnutls not found, gnunet-gns-proxy will not be built])
1433 if test "x$enable_java_ports" = "xyes"
1435 AC_MSG_NOTICE([NOTICE: opening ports for gnunet-java bindings by default.])
1438 if test "x$lmhd" != "x1"
1440 AC_MSG_NOTICE([NOTICE: libmicrohttpd not found, http transport will not be installed.])
1443 AC_MSG_NOTICE([NOTICE: Database support is set to MySQL: $mysql, SQLite: $sqlite, Postgres: $postgres])
1445 if test "$enable_framework_build" = "yes"
1447 AC_MSG_NOTICE([NOTICE: Mac OS X framework build enabled.])
1450 if test "x$SUDO_BINARY" = "x" -a ! -w /
1452 AC_MSG_NOTICE([NOTICE: --with-sudo not specified and not running as 'root', will not install GNS NSS library])
1456 AC_MSG_NOTICE([********************************************
1457 Please make sure NOW that you have created a user and group 'gnunet'
1458 and additionally a group 'gnunetdns':
1462 Make sure that '/var/lib/gnunet' is owned (and writable) by user
1463 'gnunet'. Then, you can compile GNUnet with
1466 After that, run (if necessary as 'root')
1468 to install everything.
1470 Each GNUnet user should be added to the 'gnunet' group (may
1471 require fresh login to come into effect):
1472 adduser $USERNAME gnunet
1473 (run the above command as root once for each of your users, replacing
1474 "$USERNAME" with the respective login names). If you have a global IP
1475 address, no further configuration is required.
1477 Optionally, download and compile gnunet-gtk to get a GUI for
1478 file-sharing and configuration. This is particularly recommended
1479 if your network setup is non-trivial, as gnunet-setup can be
1480 used to test in the GUI if your network configuration is working.
1481 gnunet-setup should be run as the "gnunet" user under X. As it
1482 does very little with the network, running it as "root" is likely
1483 also harmless. You can also run it as a normal user, but then
1484 you have to copy ~/.gnunet/gnunet.conf" over to the "gnunet" user's
1485 home directory in the end.
1487 Once you have configured your peer, run (as the 'gnunet' user)
1489 to start the peer. You can then run the various GNUnet-tools as
1490 your "normal" user (who should only be in the group 'gnunet').
1491 ********************************************])