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])
31 AM_INIT_AUTOMAKE([gnunet], [0.9.5a])
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)
374 LIBCURL_CHECK_CONFIG(,7.21.3,curl=1,curl=0)
377 AM_CONDITIONAL(HAVE_LIBCURL, true)
378 AC_DEFINE([HAVE_LIBCURL],[1],[Have libcurl])
380 AM_CONDITIONAL(HAVE_LIBCURL, false)
385 AC_MSG_CHECKING([if Libidn can be used])
386 AC_ARG_WITH(libidn, AC_HELP_STRING([--with-libidn=[DIR]],
387 [Support IDN (needs GNU Libidn)]),
388 libidn=$withval, libidn=yes)
389 if test "$libidn" != "no"; then
390 if test "$libidn" != "yes"; then
391 LDFLAGS="${LDFLAGS} -L$libidn/lib"
392 CPPFLAGS="${CPPFLAGS} -I$libidn/include"
394 AC_CHECK_HEADER(idna.h,
395 AC_CHECK_LIB(idn, stringprep_check_version,
396 [libidn=yes LIBS="${LIBS} -lidn"],
397 AC_MSG_FAILURE([GNUnet requires libidn])),
398 AC_MSG_FAILURE([GNUnet requires libidn]))
400 AC_MSG_RESULT($libidn)
406 AC_CHECK_HEADERS([glpk.h],[glpk=true],[gplk=false])
407 # GLPK must support glpk_init_env, version >= 4.43
408 AC_CHECK_LIB([glpk],[glp_init_env],,[gplk=false])
409 # GLPK must support atm MLP presolving, version >= 4.32
410 AC_CHECK_MEMBERS(glp_iocp.presolve,,[gplk=false],[[#include <glpk.h>]])
411 if test x$gplk = xfalse
413 AM_CONDITIONAL(HAVE_LIBGLPK, false)
414 AC_MSG_WARN([GNUnet requires GLPK >= 4.32])
416 AM_CONDITIONAL(HAVE_LIBGLPK, true)
417 AC_DEFINE([HAVE_LIBGLPK],[1],[Have GLPK])
422 AC_CHECK_HEADERS([nss.h],[nss=true],[nss=false])
423 if test x$nss = xfalse
425 AM_CONDITIONAL(HAVE_GLIBCNSS, false)
426 AC_MSG_WARN([No GNU libc nss header, will not build NSS plugin])
428 AM_CONDITIONAL(HAVE_GLIBCNSS, true)
433 # test for kvm and kstat (for CPU stats under BSD/Solaris)
434 AC_CHECK_LIB([kvm],[kvm_open])
435 AC_CHECK_LIB([kstat],[kstat_open])
437 # test for libextractor
439 AC_MSG_CHECKING(for libextractor)
440 AC_ARG_WITH(extractor,
441 [ --with-extractor=PFX base of libextractor installation],
442 [AC_MSG_RESULT([$with_extractor])
443 case $with_extractor in
447 AC_CHECK_HEADERS(extractor.h,
448 AC_CHECK_LIB([extractor], [EXTRACTOR_plugin_add_defaults],
452 LDFLAGS="-L$with_extractor/lib $LDFLAGS"
453 CPPFLAGS="-I$with_extractor/include $CPPFLAGS"
454 AC_CHECK_HEADERS(extractor.h,
455 AC_CHECK_LIB([extractor], [EXTRACTOR_plugin_add_defaults],
456 EXT_LIB_PATH="-L$with_extractor/lib $EXT_LIB_PATH"
461 [AC_MSG_RESULT([--with-extractor not specified])
462 AC_CHECK_HEADERS(extractor.h,
463 AC_CHECK_LIB([extractor], [EXTRACTOR_plugin_add_defaults],
465 if test "$extractor" != 1
467 AC_MSG_ERROR([GNUnet requires libextractor])
472 # Check for libltdl header (#2999)
474 AC_MSG_CHECKING(for libltdl)
476 [ --with-ltdl=PFX base of libltdl installation],
477 [AC_MSG_RESULT([$with_ltdl])
482 AC_CHECK_HEADERS(ltdl.h,
483 AC_CHECK_LIB([ltdl], [lt_dlopenext],
487 LDFLAGS="-L$with_ltdl/lib $LDFLAGS"
488 CPPFLAGS="-I$with_ltdl/include $CPPFLAGS"
489 AC_CHECK_HEADERS(ltdl.h,
490 AC_CHECK_LIB([ltdl], [lt_dlopenext],
491 EXT_LIB_PATH="-L$with_ltdl/lib $EXT_LIB_PATH"
496 [AC_MSG_RESULT([--with-ltdl not specified])
497 AC_CHECK_HEADERS(ltdl.h,
498 AC_CHECK_LIB([ltdl], [lt_dlopenext],
502 AC_MSG_ERROR([GNUnet requires libltdl (from GNU libtool), try installing libltdl-dev])
507 # test for libunistring
509 if test $HAVE_LIBUNISTRING != yes; then
510 AC_MSG_ERROR([GNUnet requires libunistring])
512 if test $gl_libunistring_hexversion -le 2305; then
513 AC_MSG_ERROR([GNUnet requires libunistring >= 0.9.1.1])
520 # Checks for standard header files.
524 # Check for headers that are ALWAYS required
525 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]))
529 # Checks for headers that are only required on some systems or opional (and where we do NOT abort if they are not there)
530 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])
532 SAVE_LDFLAGS=$LDFLAGS
533 SAVE_CPPFLAGS=$CPPFLAGS
537 AC_MSG_CHECKING(for SQLite)
539 [ --with-sqlite=PFX base of SQLite installation],
540 [AC_MSG_RESULT("$with_sqlite")
545 AC_CHECK_HEADERS(sqlite3.h,
549 LDFLAGS="-L$with_sqlite/lib $LDFLAGS"
550 CPPFLAGS="-I$with_sqlite/include $CPPFLAGS"
551 AC_CHECK_HEADERS(sqlite3.h,
552 EXT_LIB_PATH="-L$with_sqlite/lib $EXT_LIB_PATH"
553 SQLITE_LDFLAGS="-L$with_sqlite/lib"
554 SQLITE_CPPFLAGS="-I$with_sqlite/include"
556 LDFLAGS=$SAVE_LDFLAGS
557 CPPFLAGS=$SAVE_CPPFLAGS
561 [AC_MSG_RESULT([--with-sqlite not specified])
562 AC_CHECK_HEADERS(sqlite3.h, sqlite=true)])
563 AM_CONDITIONAL(HAVE_SQLITE, test x$sqlite = xtrue)
564 AC_SUBST(SQLITE_CPPFLAGS)
565 AC_SUBST(SQLITE_LDFLAGS)
569 AC_MSG_CHECKING(for postgres)
570 AC_ARG_WITH(postgres,
571 [ --with-postgres=PFX base of postgres installation],
572 [AC_MSG_RESULT("$with_postgres")
573 case $with_postgres in
577 AC_CHECK_HEADERS(postgresql/libpq-fe.h,
581 LDFLAGS="-L$with_postgres/lib $LDFLAGS"
582 CPPFLAGS="-I$with_postgres/include $CPPFLAGS"
583 AC_CHECK_HEADERS(postgresql/libpq-fe.h,
584 EXT_LIB_PATH="-L$with_postgres/lib $EXT_LIB_PATH"
585 POSTGRES_LDFLAGS="-L$with_postgres/lib"
586 POSTGRES_CPPFLAGS="-I$with_postgres/include"
588 LDFLAGS=$SAVE_LDFLAGS
589 CPPFLAGS=$SAVE_CPPFLAGS
593 [AC_MSG_RESULT([--with-postgres not specified])
594 AC_CHECK_HEADERS(postgresql/libpq-fe.h, postgres=true)])
595 AM_CONDITIONAL(HAVE_POSTGRES, test x$postgres = xtrue)
596 AC_SUBST(POSTGRES_CPPFLAGS)
597 AC_SUBST(POSTGRES_LDFLAGS)
600 SAVE_LDFLAGS=$LDFLAGS
601 SAVE_CPPFLAGS=$CPPFLAGS
603 [ --with-zlib[[=DIR]] use libz in DIR],
604 [AS_IF([test "$withval" = "no"],
605 [AC_MSG_ERROR([GNUnet requires zlib])],
606 [test "$withval" != "yes"],
609 CPPFLAGS="${CPPFLAGS} -I$withval/include"
610 LDFLAGS="${LDFLAGS} -L$withval/lib"
613 AC_CHECK_HEADER(zlib.h,
615 [AC_MSG_ERROR([GNUnet requires zlib])])
616 AC_CHECK_LIB(z, compress2,
618 AC_DEFINE([HAVE_ZLIB], [], [Have compression library])
619 if test "x${Z_DIR}" != "x"; then
620 Z_CFLAGS="-I${Z_DIR}/include"
621 Z_LIBS="-L${Z_DIR}/lib -lz"
625 [AC_MSG_ERROR([GNUnet requires zlib])])
629 LDFLAGS=$SAVE_LDFLAGS
630 CPPFLAGS=$SAVE_CPPFLAGS
633 AC_CHECK_TYPES([sigset_t, off_t], [], [], [#include <sys/types.h>])
634 AC_CHECK_TYPES([size_t], [], [], [#include <stdio.h>])
636 if test "$build_target" = "mingw"
638 CYGWIN_MYSQL_MAGIC="#include <mysql/my_global.h>"
644 SAVE_LDFLAGS=$LDFLAGS
645 SAVE_CPPFLAGS=$CPPFLAGS
646 AC_MSG_CHECKING(for mysql)
648 [ --with-mysql=PFX base of MySQL installation],
649 [AC_MSG_RESULT("$with_mysql")
650 if test "$with_mysql" != "no"
652 if test "$with_mysql" != "yes"
654 LDFLAGS="-L$with_mysql/lib -L$with_mysql/lib/mysql $LDFLAGS $ZLIBS"
655 CPPFLAGS="-I$with_mysql/include $CPPFLAGS"
657 AC_CHECK_HEADERS(mysql/mysql.h,
658 AC_CHECK_LIB(mysqlclient, mysql_init,
659 MYSQL_LDFLAGS="-L$with_mysql/lib -L$with_mysql/lib/mysql"
660 MYSQL_CPPFLAGS="-I$with_mysql/include"
662 mysql=true), [], [$CYGWIN_MYSQL_MAGIC])
665 [AC_MSG_RESULT([--with-mysql not specified])
666 if test -d "/usr/lib64/mysql"; then
667 MYSQL_LIBDIR="/usr/lib64/mysql"
668 elif test -d "/usr/lib/mysql"; then
669 MYSQL_LIBDIR="/usr/lib/mysql"
671 MYSQL_LIBDIR="/usr/lib"
673 LDFLAGS="-L$MYSQL_LIBDIR $LDFLAGS $ZLIBS"
674 AC_CHECK_LIB(mysqlclient, mysql_init,
675 [AC_CHECK_HEADERS(mysql/mysql.h,
676 MYSQL_LDFLAGS="-L$MYSQL_LIBDIR"
679 , [], [$CYGWIN_MYSQL_MAGIC])])
682 AC_SUBST(MYSQL_LDFLAGS)
683 AC_SUBST(MYSQL_CPPFLAGS)
685 # additional version check for mysql
686 AC_ARG_ENABLE(mysql-version-check, [ --disable-mysql-version-check do not check MySQL version],, enable_mysql_version_check=yes)
687 if test "$mysql" = "true" -a "x$enable_mysql_version_check" = "xyes"
689 AC_MSG_CHECKING(mysql version)
690 AC_RUN_IFELSE([AC_LANG_PROGRAM(
691 [[$CYGWIN_MYSQL_MAGIC
692 #include <mysql/mysql.h>]],
693 [[if (MYSQL_VERSION_ID < 40100)
698 ],mysql=true,mysql=false)
699 if test "$mysql" = "false"
702 AC_MSG_RESULT([fail, >= 4.1 required])
707 AM_CONDITIONAL(HAVE_MYSQL, test x$mysql = xtrue)
708 AM_CONDITIONAL(HAVE_MYSQLE, test "0" = "1")
711 LDFLAGS=$SAVE_LDFLAGS
712 CPPFLAGS=$SAVE_CPPFLAGS
714 if test "$sqlite" = 0 -a "$mysql" = 0
716 AC_MSG_ERROR([GNUnet requires SQLite or MySQL])
721 AC_MSG_CHECKING([for libmicrohttpd])
722 AC_ARG_WITH(microhttpd,
723 [ --with-microhttpd=PFX base of libmicrohttpd installation],
724 [AC_MSG_RESULT([$with_microhttpd])
725 case $with_microhttpd in
729 AC_CHECK_HEADERS([microhttpd.h],
730 AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT,
731 AC_CHECK_LIB([microhttpd], [MHD_start_daemon],
732 [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.18])
734 #include "$native_srcdir/src/include/platform.h"
735 #include <microhttpd.h>
736 int main () { return MHD_VERSION >= 0x0091200 ? 0 : 1; }
739 lmhd=1],[AC_MSG_RESULT(failed)],lmhd=1)]),
740 [],[#include "$native_srcdir/src/include/platform.h"
741 #include <microhttpd.h>]),,
742 [#include "$native_srcdir/src/include/platform.h"])
745 LDFLAGS="-L$with_microhttpd/lib $LDFLAGS"
746 CPPFLAGS="-I$with_microhttpd/include $CPPFLAGS"
747 AC_CHECK_HEADERS(microhttpd.h,
748 AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT,
749 AC_CHECK_LIB([microhttpd], [MHD_start_daemon],
750 EXT_LIB_PATH="-L$with_microhttpd/lib $EXT_LIB_PATH"
751 [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.18])
753 #include "$native_srcdir/src/include/platform.h"
754 #include <microhttpd.h>
755 int main () { return MHD_VERSION >= 0x0091200 ? 0 : 1; }
758 lmhd=1],[AC_MSG_RESULT(failed)],lmhd=1)]),
759 [],[#include "$native_srcdir/src/include/platform.h"
760 #include <microhttpd.h>]),,
761 [#include "$native_srcdir/src/include/platform.h"])
765 [AC_MSG_RESULT([--with-microhttpd not specified])
766 AC_CHECK_HEADERS([microhttpd.h],
767 AC_CHECK_DECL(MHD_OPTION_PER_IP_CONNECTION_LIMIT,
768 AC_CHECK_LIB([microhttpd], [MHD_start_daemon],
769 [AC_MSG_CHECKING([for libmicrohttpd >= 0.9.18])
771 #include "$native_srcdir/src/include/platform.h"
772 #include <microhttpd.h>
773 int main () { return MHD_VERSION >= 0x0091200 ? 0 : 1; }
776 lmhd=1],[AC_MSG_RESULT(failed)],lmhd=1)]),
777 [],[#include "$native_srcdir/src/include/platform.h"
778 #include <microhttpd.h>]),,
779 [#include "$native_srcdir/src/include/platform.h"])])
780 AM_CONDITIONAL(HAVE_MHD, test x$lmhd = x1)
781 AC_DEFINE_UNQUOTED([HAVE_MHD], $lmhd, [We have libmicrohttpd])
787 # check for python & pexpect (used for some testcases only)
788 AM_PATH_PYTHON([2.6],, [:])
789 AM_CONDITIONAL([HAVE_PYTHON], [test "$PYTHON" != :])
792 AM_GNU_GETTEXT([external])
793 AM_GNU_GETTEXT_VERSION([0.16.1])
798 # Checks for standard typedefs, structures, and compiler characteristics.
807 AC_CHECK_MEMBER([struct sockaddr_in.sin_len],
808 [ AC_DEFINE(HAVE_SOCKADDR_IN_SIN_LEN, 1, [Do we have sockaddr_in.sin_len?])
812 #include <sys/types.h>
813 #include <sys/socket.h>
814 #include <netinet/in.h>
819 # Checks for library functions.
820 AC_FUNC_CLOSEDIR_VOID
822 AC_PROG_GCC_TRADITIONAL
824 AC_FUNC_SELECT_ARGTYPES
834 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])
839 gn_user_home_dir="~/.gnunet"
840 AC_ARG_WITH(user-home-dir,
842 [--with-user-home-dir=DIR],
843 [default user home directory (~/.gnunet)]),
844 [gn_user_home_dir=$withval])
845 AC_SUBST(GN_USER_HOME_DIR, $gn_user_home_dir)
846 gn_daemon_home_dir="/var/lib/gnunet"
847 AC_ARG_WITH(daemon-home-dir,
849 [--with-daemon-home-dir=DIR],
850 [default daemon home directory (/var/lib/gnunet)]),
851 [gn_daemon_home_dir=$withval])
852 AC_SUBST(GN_DAEMON_HOME_DIR, $gn_daemon_home_dir)
853 gn_daemon_config_dir="/etc"
854 AC_ARG_WITH(daemon-config-dir,
856 [--with-daemon-config-dir=DIR],
857 [default daemon config directory (/etc)]),
858 [gn_daemon_config_dir=$withval])
859 AC_SUBST(GN_DAEMON_CONFIG_DIR, $gn_daemon_config_dir)
862 GN_LIBINTL="$LTLIBINTL"
863 AC_ARG_ENABLE(framework, [ --enable-framework enable Mac OS X framework build helpers],enable_framework_build=$enableval)
864 AM_CONDITIONAL(WANT_FRAMEWORK, test x$enable_framework_build = xyes)
865 if test x$enable_framework_build = xyes
867 AC_DEFINE([FRAMEWORK_BUILD], 1, [Build a Mac OS X Framework])
868 GN_INTLINCL='-I$(top_srcdir)/src/intlemu'
869 GN_LIBINTL='$(top_builddir)/src/intlemu/libintlemu.la -framework CoreFoundation'
870 AC_LIB_APPENDTOVAR([CPPFLAGS], [$GN_INTLINCL])
873 GN_LIB_LDFLAGS="-export-dynamic -no-undefined"
874 GN_PLUGIN_LDFLAGS="-export-dynamic -avoid-version -module -no-undefined"
876 AC_SUBST(GN_LIB_LDFLAGS)
877 AC_SUBST(GN_PLUGIN_LDFLAGS)
878 AC_SUBST(GN_INTLINCL)
884 AC_SUBST(EXT_LIB_PATH)
889 AC_SUBST(EXT_LIB_PATH)
893 AC_MSG_CHECKING(for sudo)
895 [ --with-sudo=PATH path to sudo binary (or just yes)],
896 [AC_MSG_RESULT("$with_sudo")
905 SUDO_BINARY=$with_sudo
909 [AC_MSG_RESULT([no])])
910 AC_SUBST(SUDO_BINARY)
911 AM_CONDITIONAL([HAVE_SUDO], [test "x$SUDO_BINARY" != "x" -o -w /])
915 AC_MSG_CHECKING(with nssdir)
917 [ --with-nssdir=PATH where to install NSS plugins],
918 [AC_MSG_RESULT("$with_nssdir")
935 if test "x$SUDO_BINARY" != "x" -o -w /
939 AC_MSG_RESULT([yes, to /lib])
947 AM_CONDITIONAL([INSTALL_NSS], [test "x$install_nss" != "x0"])
949 # test for gnunetdns group name
950 GNUNETDNS_GROUP=gnunetdns
951 AC_MSG_CHECKING(for gnunetdns group name)
952 AC_ARG_WITH(gnunetdns,
953 [ --with-gnunetdns=GRPNAME name for gnunetdns group],
954 [AC_MSG_RESULT("$with_gnunetdns")
955 case $with_gnunetdns in
957 GNUNETDNS_GROUP=gnunet
960 GNUNETDNS_GROUP=gnunetdns
963 GNUNETDNS_GROUP=$with_gnunetdns
967 [AC_MSG_RESULT([gnunetdns])])
968 AC_SUBST(GNUNETDNS_GROUP)
974 AC_MSG_CHECKING(for gnutls)
976 [ --with-gnutls=PFX base of gnutls installation],
977 [AC_MSG_RESULT([$with_gnutls])
982 AC_CHECK_HEADERS([gnutls/abstract.h],
983 AC_CHECK_LIB([gnutls], [gnutls_priority_set],
987 LDFLAGS="-L$with_gnutls/lib $LDFLAGS"
988 CPPFLAGS="-I$with_gnutls/include $CPPFLAGS"
989 AC_CHECK_HEADERS([gnutls/abstract.h],
990 AC_CHECK_LIB([gnutls], [gnutls_priority_set],
991 EXT_LIB_PATH="-L$with_gnutls/lib $EXT_LIB_PATH"
996 [AC_MSG_RESULT([--with-gnutls not specified])
997 AC_CHECK_HEADERS([gnutls/abstract.h],
998 AC_CHECK_LIB([gnutls], [gnutls_priority_set],
1000 AM_CONDITIONAL(HAVE_GNUTLS, test x$gnutls = xtrue)
1001 AC_DEFINE_UNQUOTED([HAVE_GNUTLS], $gnutls, [We have gnutls])
1004 # Test if we are building for superMUC
1005 AC_MSG_CHECKING(if testbed should use IBM LoadLeveler to run on SuperMUC)
1007 [AS_HELP_STRING([--enable-ll],
1008 [build GNUnet testbed for use with IBM LoadLeveler for running testbed on
1009 SuperMUC (default is NO)])],
1010 [if test "x$enable_ll" = "xno"
1018 AC_MSG_RESULT($enable_ll)
1019 AM_CONDITIONAL([ENABLE_LL], [test "x$ll" = "x1"])
1020 AC_DEFINE_UNQUOTED([ENABLE_LL], [$ll], [Build with LL support])
1022 # Check if NSE has to send timestamp information to testbed logger for
1023 # generating histogram of messages received
1024 AC_MSG_CHECKING(if NSE has to send timestamp information to testbed logger)
1025 AC_ARG_ENABLE([nse-histogram],
1026 [AS_HELP_STRING([--enable-nse-histogram],
1027 [have NSE send timestamp information to testbed logger for generating
1028 histogram of received messages. NOT useful for production (default is
1030 [if test "x$enableval" = "xno"
1037 enable_nse_histogram=no])
1038 AC_MSG_RESULT($enable_nse_histogram)
1039 AM_CONDITIONAL([ENABLE_NSE_HISTOGRAM], [test "x$nse_histogram" = "x1"])
1040 AC_DEFINE_UNQUOTED([ENABLE_NSE_HISTOGRAM], [$nse_histogram],
1041 [have NSE send timestamp information to testbed logger])
1043 # should 'make check' run tests?
1044 AC_MSG_CHECKING(whether to run tests)
1045 AC_ARG_ENABLE([testruns],
1046 [AS_HELP_STRING([--disable-testruns], [disable running tests on make check (default is YES)])],
1047 [enable_tests_run=${enableval}],
1048 [enable_tests_run=yes])
1049 AC_MSG_RESULT($enable_test_run)
1050 AM_CONDITIONAL([ENABLE_TEST_RUN], [test "x$enable_tests_run" = "xyes"])
1053 # should monkey be used when running (certain) services?
1054 AC_MSG_CHECKING(whether to run with monkey)
1055 AC_ARG_ENABLE([monkey],
1056 [AS_HELP_STRING([--enable-monkey], [enable running with monkey])],
1057 [enable_monkey=${enableval}],
1059 AC_MSG_RESULT($enable_monkey)
1060 AM_CONDITIONAL([ENABLE_MONKEY], [test "x$enable_monkey" = "xyes"])
1061 if test "x$enable_monkey" = "xyes"
1063 MONKEYPREFIX="monkey"
1067 AC_SUBST(MONKEYPREFIX)
1070 # should expensive tests be run?
1071 AC_MSG_CHECKING(whether to run expensive tests)
1072 AC_ARG_ENABLE([expensivetests],
1073 [AS_HELP_STRING([--enable-expensivetests], [enable running expensive testcases])],
1074 [enable_expensive=${enableval}],
1075 [enable_expensive=no])
1076 AC_MSG_RESULT($enable_expensive)
1077 AM_CONDITIONAL([HAVE_EXPENSIVE_TESTS], [test "x$enable_expensive" = "xyes"])
1079 # should ports be open for Java services?
1080 AC_MSG_CHECKING(whether to enable ports for gnunet-java)
1081 AC_ARG_ENABLE([javaports],
1082 [AS_HELP_STRING([--enable-javaports], [use non-zero ports for services with Java bindings (default is NO)])],
1083 [enable_java_ports=${enableval}],
1084 [enable_java_ports=no])
1085 AC_MSG_RESULT($enable_java_ports)
1086 if test "x$enable_java_ports" = "xyes"
1090 JAVAPORT="$UNIXONLY"
1094 # should benchmarks be run?
1095 AC_MSG_CHECKING(whether to run benchmarks during make check)
1096 AC_ARG_ENABLE([benchmarks],
1097 [AS_HELP_STRING([--enable-benchmarks], [enable running benchmarks during make check])],
1098 [enable_benchmarks=${enableval}],
1099 [enable_benchmarks=no])
1100 AC_MSG_RESULT($enable_benchmarks)
1101 AM_CONDITIONAL([HAVE_BENCHMARKS], [test "x$enable_benchmarks" = "xyes"])
1103 # should gnunet-testing be compiled
1104 AC_MSG_CHECKING(wether to compile gnunet-testing)
1105 AC_ARG_ENABLE([testing],
1106 [AS_HELP_STRING([--disable-testing], [do not build gnunet-testing])],
1107 [enable_testing=${enableval}],
1108 [enable_testing=yes])
1109 AC_MSG_RESULT($enable_testing)
1110 AM_CONDITIONAL([HAVE_TESTING], [test "x$enable_testing" = "xyes"])
1112 # should experimental code be compiled (code that may not yet compile)?
1113 AC_MSG_CHECKING(whether to compile experimental code)
1114 AC_ARG_ENABLE([experimental],
1115 [AS_HELP_STRING([--enable-experimental], [enable compiling experimental code])],
1116 [enable_experimental=${enableval}],
1117 [enable_experimental=no])
1118 AC_MSG_RESULT($enable_experimental)
1119 AM_CONDITIONAL([HAVE_EXPERIMENTAL], [test "x$enable_experimental" = "xyes"])
1121 # should memory statistics be kept (very expensive CPU-wise!)
1122 AC_MSG_CHECKING(whether to create expensive statistics on memory use)
1123 AC_ARG_ENABLE([heapstats],
1124 [AS_HELP_STRING([--enable-heapstats], [enable expensive heap statistics])],
1125 [enable_heapstats=1],
1126 [enable_heapstats=0])
1127 AC_MSG_RESULT($enable_heapstats)
1128 AC_DEFINE_UNQUOTED([ENABLE_HEAP_STATISTICS],$enable_heapstats,[enable expensive heap statistics])
1130 # should code be enabled that works around missing OS functionality on Windows?
1131 # used for test cases
1132 if test $build_target = "mingw"
1138 [#include <ws2tcpip.h>
1140 int s = socket (0, 0, 0);])
1142 AC_DEFINE_UNQUOTED([HAVE_SOCKET],1,[Define this if socket() is available])
1144 AC_DEFINE_UNQUOTED([HAVE_SOCKET],0,[Define this if socket() is available])
1149 [#include <ws2tcpip.h>
1151 int s = select (0, NULL, NULL, NULL, NULL);])
1153 AC_DEFINE_UNQUOTED([HAVE_SELECT],1,[Define this if select() is available])
1155 AC_DEFINE_UNQUOTED([HAVE_SELECT],0,[Define this if select() is available])
1160 [#include <ws2tcpip.h>
1163 char *s = inet_ntoa (i);])
1165 AC_DEFINE_UNQUOTED([HAVE_INET_NTOA],1,[Define this if inet_ntoa() is available])
1167 AC_DEFINE_UNQUOTED([HAVE_INET_NTOA],0,[Define this if inet_ntoa() is available])
1172 [#include <ws2tcpip.h>
1174 int s = getnameinfo (NULL, 0, NULL, 0, NULL, 0, 0);])
1176 AC_DEFINE_UNQUOTED([HAVE_GETNAMEINFO],1,[Define this if getnameinfo() is available])
1178 AC_DEFINE_UNQUOTED([HAVE_GETNAMEINFO],0,[Define this if getnameinfo() is available])
1183 [#include <ws2tcpip.h>
1185 int s = gethostname (NULL, 0);])
1187 AC_DEFINE_UNQUOTED([HAVE_GETHOSTNAME],1,[Define this if gethostname() is available])
1189 AC_DEFINE_UNQUOTED([HAVE_GETHOSTNAME],0,[Define this if gethostname() is available])
1194 [#include <ws2tcpip.h>
1196 void *s = gethostbyname (NULL);])
1198 AC_DEFINE_UNQUOTED([HAVE_GETHOSTBYNAME],1,[Define this if gethostbyname() is available])
1200 AC_DEFINE_UNQUOTED([HAVE_GETHOSTBYNAME],0,[Define this if gethostbyname() is available])
1205 [#include <ws2tcpip.h>
1207 void *s = gethostbyaddr (NULL, 0, 0);])
1209 AC_DEFINE_UNQUOTED([HAVE_GETHOSTBYADDR],1,[Define this if gethostbyaddr() is available])
1211 AC_DEFINE_UNQUOTED([HAVE_GETHOSTBYADDR],0,[Define this if gethostbyaddr() is available])
1216 [#include <ws2tcpip.h>
1218 int s = getaddrinfo (NULL, NULL, NULL, NULL);])
1220 AC_DEFINE_UNQUOTED([HAVE_GETADDRINFO],1,[Define this if getaddrinfo() is available])
1222 AC_DEFINE_UNQUOTED([HAVE_GETADDRINFO],1,[Define this if getaddrinfo() is available])
1226 AC_MSG_CHECKING(whether to enable windows workarounds)
1227 AC_ARG_ENABLE([windows_workarounds],
1228 [AS_HELP_STRING([--enable-windows_workarounds], [enable workarounds used on Windows (only useful for test cases)])],
1229 [enable_workarounds=${enableval}],
1230 [enable_workarounds=no])
1231 AC_MSG_RESULT($enable_workarounds)
1232 if test x$enable_windows_workarounds = "xyes"
1239 AC_DEFINE_UNQUOTED([ENABLE_WINDOWS_WORKAROUNDS], $workarounds, [enable workarounds used on Windows (only useful for test cases)])
1242 AC_MSG_CHECKING(whether to compile with support for code coverage analysis)
1243 AC_ARG_ENABLE([coverage],
1244 AS_HELP_STRING([--enable-coverage],
1245 [compile the library with code coverage support]),
1246 [use_gcov=${enableval}],
1248 AC_MSG_RESULT($use_gcov)
1249 AM_CONDITIONAL([USE_COVERAGE], [test "x$use_gcov" = "xyes"])
1253 AC_PATH_PROG(svnversioncommand, svnversion)
1254 AC_PATH_PROG(gitcommand, git)
1255 if test "X$svnversioncommand" = "X" || test `$svnversioncommand -n '.'` = "exported"
1257 if test "X$gitcommand" = "X"
1259 AC_DEFINE_UNQUOTED(VCS_VERSION, ["release"], [repository svn version])
1261 gitver=$(git log -1 | grep "git-svn-id" | sed -e 's/.*@\([[0-9]]\+\) .*/\1/')
1262 if test "X$gitver" = "X"
1264 AC_DEFINE_UNQUOTED(VCS_VERSION, ["release"], [repository svn version])
1266 AC_DEFINE_UNQUOTED(VCS_VERSION, ["svn-$gitver"], [repository svn version])
1270 AC_DEFINE_UNQUOTED(VCS_VERSION, ["svn-`svnversion -n`"], [repository svn version])
1278 doc/doxygen/Makefile
1286 src/ats-tool/Makefile
1290 src/consensus/Makefile
1291 src/consensus/consensus.conf
1292 src/datacache/Makefile
1293 src/datastore/Makefile
1294 src/datastore/datastore.conf
1302 src/experimentation/Makefile
1303 src/experimentation/experimentation.conf
1304 src/fragmentation/Makefile
1309 src/gns/nss/Makefile
1311 src/identity/Makefile
1312 src/identity/identity.conf
1313 src/psycstore/Makefile
1314 src/include/Makefile
1315 src/include/gnunet_directories.h
1316 src/integration-tests/Makefile
1317 src/hostlist/Makefile
1318 src/lockmanager/Makefile
1319 src/lockmanager/lockmanager.conf
1322 src/multicast/Makefile
1323 src/multicast/multicast.conf
1325 src/namestore/Makefile
1326 src/namestore/namestore.conf
1330 src/peerinfo/Makefile
1331 src/peerinfo/peerinfo.conf
1332 src/peerinfo-tool/Makefile
1333 src/postgres/Makefile
1336 src/regex/regex.conf
1337 src/scalarproduct/Makefile
1338 src/scalarproduct/scalarproduct.conf
1341 src/statistics/Makefile
1342 src/statistics/statistics.conf
1343 src/template/Makefile
1344 src/testbed/Makefile
1345 src/testbed/testbed.conf
1346 src/testing/Makefile
1347 src/topology/Makefile
1348 src/transport/Makefile
1349 src/transport/transport.conf
1352 src/util/resolver.conf
1356 pkgconfig/gnunetats.pc
1357 pkgconfig/gnunetarm.pc
1358 pkgconfig/gnunetblock.pc
1359 pkgconfig/gnunetcore.pc
1360 pkgconfig/gnunetdatacache.pc
1361 pkgconfig/gnunetdatastore.pc
1362 pkgconfig/gnunetdht.pc
1363 pkgconfig/gnunetdns.pc
1364 pkgconfig/gnunetdnsparser.pc
1365 pkgconfig/gnunetdv.pc
1366 pkgconfig/gnunetfragmentation.pc
1367 pkgconfig/gnunetfs.pc
1368 pkgconfig/gnunetgns.pc
1369 pkgconfig/gnunethello.pc
1370 pkgconfig/gnunetlockmanager.pc
1371 pkgconfig/gnunetmesh.pc
1372 pkgconfig/gnunetmysql.pc
1373 pkgconfig/gnunetnamestore.pc
1374 pkgconfig/gnunetnat.pc
1375 pkgconfig/gnunetnse.pc
1376 pkgconfig/gnunetpeerinfo.pc
1377 pkgconfig/gnunetpostgres.pc
1378 pkgconfig/gnunetregex.pc
1379 pkgconfig/gnunetstatistics.pc
1380 pkgconfig/gnunetstream.pc
1381 pkgconfig/gnunettestbed.pc
1382 pkgconfig/gnunettesting.pc
1383 pkgconfig/gnunettransport.pc
1384 pkgconfig/gnunettun.pc
1385 pkgconfig/gnunetutil.pc
1386 pkgconfig/gnunetvpn.pc
1392 # warn user if mysql found but not used due to version
1393 if test "$mysqlfail" = "true"
1395 AC_MSG_NOTICE([NOTICE: MySQL found, but too old. MySQL support will not be compiled.])
1399 if test "x$sqlite" = "x0"
1401 AC_MSG_NOTICE([NOTICE: sqlite not found. sqLite support will not be compiled.])
1405 if test "x$curl" = "x0"
1407 AC_MSG_NOTICE([NOTICE: libcurl not found. http client support will not be compiled.])
1411 if test "x$bluetooth" = "x0"
1413 AC_MSG_NOTICE([NOTICE: bluetooth library not found. bluetooth support will not be compiled.])
1417 if test x$gnutls != xtrue
1419 AC_MSG_NOTICE([NOTICE: gnutls not found, gnunet-gns-proxy will not be built])
1423 if test "x$enable_java_ports" = "xyes"
1425 AC_MSG_NOTICE([NOTICE: opening ports for gnunet-java bindings by default.])
1428 if test "x$lmhd" != "x1"
1430 AC_MSG_NOTICE([NOTICE: libmicrohttpd not found, http transport will not be installed.])
1433 AC_MSG_NOTICE([NOTICE: Database support is set to MySQL: $mysql, SQLite: $sqlite, Postgres: $postgres])
1435 if test "$enable_framework_build" = "yes"
1437 AC_MSG_NOTICE([NOTICE: Mac OS X framework build enabled.])
1440 if test "x$SUDO_BINARY" = "x" -a ! -w /
1442 AC_MSG_NOTICE([NOTICE: --with-sudo not specified and not running as 'root', will not install GNS NSS library])
1446 AC_MSG_NOTICE([********************************************
1447 Please make sure NOW that you have created a user and group 'gnunet'
1448 and additionally a group 'gnunetdns':
1452 Make sure that '/var/lib/gnunet' is owned (and writable) by user
1453 'gnunet'. Then, you can compile GNUnet with
1456 After that, run (if necessary as 'root')
1458 to install everything.
1460 Each GNUnet user should be added to the 'gnunet' group (may
1461 require fresh login to come into effect):
1462 adduser $USERNAME gnunet
1463 (run the above command as root once for each of your users, replacing
1464 "$USERNAME" with the respective login names). If you have a global IP
1465 address, no further configuration is required.
1467 Optionally, download and compile gnunet-gtk to get a GUI for
1468 file-sharing and configuration. This is particularly recommended
1469 if your network setup is non-trivial, as gnunet-setup can be
1470 used to test in the GUI if your network configuration is working.
1471 gnunet-setup should be run as the "gnunet" user under X. As it
1472 does very little with the network, running it as "root" is likely
1473 also harmless. You can also run it as a normal user, but then
1474 you have to copy ~/.gnunet/gnunet.conf" over to the "gnunet" user's
1475 home directory in the end.
1477 Once you have configured your peer, run (as the 'gnunet' user)
1479 to start the peer. You can then run the various GNUnet-tools as
1480 your "normal" user (who should only be in the group 'gnunet').
1481 ********************************************])