prevent use-after-free by indicating free status in return value of set_incoming_quota
[oweals/gnunet.git] / configure.ac
index bbae6edff099aaf2943453384d9d7a7aa6d57c8d..68922e6c085dfb150b95276f5edf66a68a5242f8 100644 (file)
@@ -1,5 +1,5 @@
 # This file is part of GNUnet.
-# (C) 2001--2017 GNUnet e.V.
+# (C) 2001--2018 GNUnet e.V.
 #
 # GNUnet is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published
@@ -22,7 +22,7 @@
 #
 AC_PREREQ(2.61)
 # Checks for programs.
-AC_INIT([gnunet], [0.10.1], [bug-gnunet@gnu.org])
+AC_INIT([gnunet], [0.11.0], [bug-gnunet@gnu.org])
 
 AC_CANONICAL_TARGET
 AC_CANONICAL_HOST
@@ -248,6 +248,11 @@ then
 fi
 AC_DEFINE_UNQUOTED([NEED_LIBGCRYPT_VERSION], "$NEED_LIBGCRYPT_VERSION", [required libgcrypt version])
 
+# TODO: add check for VERSION
+# TODO: add check for alternatives
+# TODO: add switch to skip documentation building
+AM_MISSING_PROG([MAKEINFO], [makeinfo])
+
 # Adam shostack suggests the following for Windows:
 # -D_FORTIFY_SOURCE=2 -fstack-protector-all
 AC_ARG_ENABLE(gcc-hardening,
@@ -440,19 +445,32 @@ AC_CHECK_LIB(ogg, ogg_stream_flush_fill,
         AM_CONDITIONAL(HAVE_OGG, false)
         ogg=0)
 
-PKG_CHECK_MODULES([ABE], [glib-2.0])
+
+PKG_CHECK_MODULES([GLIB], [glib-2.0],
 # check for pbc library
 pbc=0
 AC_CHECK_HEADER([pbc/pbc.h],pbc=1)
+AC_CHECK_HEADER([gabe.h],abe=1)
 AM_CONDITIONAL(HAVE_PBC, [test "$pbc" = 1])
+AM_CONDITIONAL(HAVE_ABE, [test "$abe" = 1])
 if test "x$pbc" = x1
 then
   AC_DEFINE([HAVE_PBC],[1],[Have pbc library])
 else
   AC_DEFINE([HAVE_PBC],[0],[Lacking pbc library])
 fi
-
-
+if test "x$abe" = x1
+then
+  AC_DEFINE([HAVE_ABE],[1],[Have ABE library])
+else
+  AC_DEFINE([HAVE_ABE],[0],[Lacking ABE library])
+fi
+,
+# glib-2 not found
+  AM_CONDITIONAL(HAVE_PBC, [0])
+  AM_CONDITIONAL(HAVE_ABE, [0])
+  AC_DEFINE([HAVE_PBC],[0],[Lacking glib library])
+)
 
 gst=0
 PKG_CHECK_MODULES(
@@ -577,6 +595,23 @@ AC_CHECK_LIB([kvm],[kvm_open])
 AC_CHECK_LIB([kstat],[kstat_open])
 
 
+# should the build process be restricted to only building
+# the documentation?
+AC_MSG_CHECKING(whether to build documentation ONLY)
+AC_ARG_ENABLE([documentation],
+   [AS_HELP_STRING([--enable-documentation], [only build the documentation])],
+   [doc_only=${enableval}],
+   [doc_only=no])
+AC_MSG_RESULT($doc_only)
+if test "x$doc_only" = "xyes"
+then
+  AM_CONDITIONAL([DOC_ONLY],true)
+  AC_DEFINE([DOC_ONLY],[1],[Building the documentation])
+else
+  AM_CONDITIONAL([DOC_ONLY],false)
+  AC_DEFINE([DOC_ONLY],[0],[Canonical compilation])
+fi
+
 # should the build process be restricted to the code required
 # for GNU Taler wallets?
 AC_MSG_CHECKING(whether to compile GNU Taler Wallet library ONLY)
@@ -1128,45 +1163,6 @@ AC_SUBST(SUDO_BINARY)
 AM_CONDITIONAL([HAVE_SUDO], [test "x$SUDO_BINARY" != "x" -o -w /])
 
 
-# test for nssdir
-AC_MSG_CHECKING(with nssdir)
-AC_ARG_WITH(nssdir,
-  [  --with-nssdir=PATH       where to install NSS plugins],
-  [AC_MSG_RESULT("$with_nssdir")
-   case $with_nssdir in
-   no)
-     NSS_DIR=
-     install_nss=0
-     ;;
-   yes)
-     NSS_DIR="/lib"
-     install_nss=1
-     ;;
-   *)
-     NSS_DIR=$with_nssdir
-     install_nss=1
-    ;;
-   esac
-  ],
-  [
-# This test is inappropriate when installation with DESTDIR is
-# run much later and uid will be root when needed. Enabling this
-# code breaks the gnunet.ebuild for gentoo.
-#
-#  if test "x$SUDO_BINARY" != "x" -o -w /
-#  then
-     NSS_DIR="/lib"
-     install_nss=1
-     AC_MSG_RESULT([yes, to /lib])
-#  else
-#    NSS_DIR=
-#    install_nss=0
-#    AC_MSG_RESULT([no])
-#  fi
-  ])
-AC_SUBST(NSS_DIR)
-AM_CONDITIONAL([INSTALL_NSS], [test "x$install_nss" != "x0"])
-
 # test for gnunetdns group name
 GNUNETDNS_GROUP=gnunetdns
 AC_MSG_CHECKING(for gnunetdns group name)
@@ -1560,6 +1556,7 @@ contrib/Makefile
 doc/Makefile
 doc/man/Makefile
 doc/doxygen/Makefile
+doc/documentation/Makefile
 m4/Makefile
 po/Makefile.in
 src/Makefile
@@ -1587,8 +1584,6 @@ src/dht/Makefile
 src/dht/dht.conf
 src/dns/Makefile
 src/dns/dns.conf
-src/dv/Makefile
-src/dv/dv.conf
 src/exit/Makefile
 src/fragmentation/Makefile
 src/fs/Makefile
@@ -1667,6 +1662,8 @@ src/vpn/vpn.conf
 src/zonemaster/Makefile
 src/zonemaster/zonemaster.conf
 src/rest/Makefile
+src/abe/Makefile
+src/identity-attribute/Makefile
 src/identity-provider/Makefile
 pkgconfig/Makefile
 pkgconfig/gnunetarm.pc
@@ -1807,14 +1804,6 @@ then
   AC_MSG_NOTICE([Mac OS X framework build enabled.])
 fi
 
-if test "x$install_nss" = "x0"
-then
-  AC_MSG_NOTICE([WARNING: Will not install GNS NSS library])
-else
-  AC_MSG_NOTICE([NOTICE: Will install GNS NSS library to $NSS_DIR])
-fi
-
-
 AC_MSG_NOTICE([********************************************
 Please make sure NOW that you have created a user and group 'gnunet'
 and additionally a group 'gnunetdns'. On Debian and Ubuntu GNU/Linux, type: