# This file is part of GNUnet.
-# (C) 2001--2013 Christian Grothoff (and other contributing authors)
+# (C) 2001--2014 Christian Grothoff (and other contributing authors)
#
# GNUnet is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published
#
AC_PREREQ(2.61)
# Checks for programs.
-AC_INIT([gnunet], [0.10.0], [bug-gnunet@gnu.org])
+AC_INIT([gnunet], [0.10.1], [bug-gnunet@gnu.org])
AC_CANONICAL_TARGET
AC_CANONICAL_HOST
AC_ARG_ENABLE(gcc-hardening,
AS_HELP_STRING(--enable-gcc-hardening, enable compiler security checks),
[if test x$enableval = xyes; then
- CFLAGS="$CFLAGS -D_FORTIFY_SOURCE=2 -fstack-protector-all"
+ CFLAGS="$CFLAGS -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-all"
CFLAGS="$CFLAGS -fwrapv -fPIE -Wstack-protector"
CFLAGS="$CFLAGS --param ssp-buffer-size=1"
LDFLAGS="$LDFLAGS -pie"
# Checks for headers that are only required on some systems or opional (and where we do NOT abort if they are not there)
-AC_CHECK_HEADERS([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 sys/ucred.h endian.h sys/endian.h execinfo.h])
+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 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 sys/ucred.h endian.h sys/endian.h execinfo.h])
+
+# FreeBSD requires something more funky for netinet/in_systm.h and netinet/ip.h...
+AC_CHECK_HEADERS([sys/types.h netinet/in_systm.h netinet/in.h netinet/ip.h],,,
+[#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_NETINET_IN_SYSTM_H
+#include <netinet/in_systm.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+])
SAVE_LDFLAGS=$LDFLAGS
SAVE_CPPFLAGS=$CPPFLAGS
AC_MSG_RESULT($enable_experimental)
AM_CONDITIONAL([HAVE_EXPERIMENTAL], [test "x$enable_experimental" = "xyes"])
+# should malicious code be compiled (should only be used for testing)?
+AC_MSG_CHECKING(whether to compile malicious code)
+AC_ARG_ENABLE([malicious],
+ [AS_HELP_STRING([--enable-malicious], [enable compiling malicious code])],
+ [if test "x$enableval" = "xno"
+ then
+ malicious=0
+ else
+ malicious=1
+ fi],
+ [malicious=0
+ enable_malicious=no])
+AC_MSG_RESULT($enable_malicious)
+AM_CONDITIONAL([ENABLE_MALICIOUS], [$malicious])
+AC_DEFINE_UNQUOTED([ENABLE_MALICIOUS], [$malicious],
+ [enable compilation of malicious code])
+
# should services be started by default when a peer starts? Some services may
# choose to never start by default and it is upto the service/module developer to
# decide it by having "AUTOSTART = NO" instead of "AUTOSTART = @AUTOSTART" in
src/ats-tool/Makefile
src/ats-tests/Makefile
src/block/Makefile
+src/cadet/Makefile
+src/cadet/cadet.conf
src/core/Makefile
src/core/core.conf
src/consensus/Makefile
src/include/Makefile
src/integration-tests/Makefile
src/hostlist/Makefile
-src/mesh/Makefile
-src/mesh/mesh.conf
src/multicast/Makefile
src/multicast/multicast.conf
src/mysql/Makefile
src/peerinfo/Makefile
src/peerinfo/peerinfo.conf
src/peerinfo-tool/Makefile
+src/peerstore/Makefile
+src/peerstore/peerstore.conf
src/postgres/Makefile
src/psyc/Makefile
src/psyc/psyc.conf
src/revocation/revocation.conf
src/secretsharing/Makefile
src/secretsharing/secretsharing.conf
+src/sensor/Makefile
+src/sensor/sensor.conf
src/scalarproduct/Makefile
src/scalarproduct/scalarproduct.conf
src/set/Makefile
src/set/set.conf
+src/social/Makefile
+src/social/social.conf
src/statistics/Makefile
src/statistics/statistics.conf
src/template/Makefile
pkgconfig/gnunetarm.pc
pkgconfig/gnunetats.pc
pkgconfig/gnunetblock.pc
+pkgconfig/gnunetcadet.pc
pkgconfig/gnunetconsensus.pc
pkgconfig/gnunetconversation.pc
pkgconfig/gnunetcore.pc
pkgconfig/gnunetgns.pc
pkgconfig/gnunethello.pc
pkgconfig/gnunetidentity.pc
-pkgconfig/gnunetmesh.pc
pkgconfig/gnunetmicrophone.pc
pkgconfig/gnunetmulticast.pc
pkgconfig/gnunetmysql.pc
pkgconfig/gnunetrevocation.pc
pkgconfig/gnunetscalarproduct.pc
pkgconfig/gnunetset.pc
+pkgconfig/gnunetsocial.pc
pkgconfig/gnunetspeaker.pc
pkgconfig/gnunetstatistics.pc
pkgconfig/gnunettestbed.pc
# sqlite
if test "x$sqlite" = "x0"
then
- AC_MSG_NOTICE([NOTICE: sqlite not found. sqLite support will not be compiled.])
+ AC_MSG_ERROR([ERROR: sqlite3 not found, but sqlite3 is required.])
fi
# libgnurl
Each GNUnet user should be added to the 'gnunet' group (may
require fresh login to come into effect):
- adduser $USERNAME gnunet
+ adduser USERNAME gnunet
(run the above command as root once for each of your users, replacing
-"$USERNAME" with the respective login names). If you have a global IP
+"USERNAME" with the respective login names). If you have a global IP
address, no further configuration is required.
Optionally, download and compile gnunet-gtk to get a GUI for