diff options
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 129 |
1 files changed, 61 insertions, 68 deletions
diff --git a/configure.ac b/configure.ac index 96c368c6b..c4abeaa19 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ # Process this file with autoconf to produce a configure script. # # This file is part of TALER -# Copyright (C) 2014-2023 Taler Systems SA +# Copyright (C) 2014-2024 Taler Systems SA # # TALER is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software @@ -17,7 +17,7 @@ # # AC_PREREQ([2.69]) -AC_INIT([taler-exchange],[0.9.2],[taler-bug@gnunet.org]) +AC_INIT([taler-exchange],[0.11.0],[taler-bug@gnunet.org]) AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_SRCDIR([src/util/util.c]) AC_CONFIG_HEADERS([taler_config.h]) @@ -128,6 +128,42 @@ fd = epoll_create1(EPOLL_CLOEXEC);]])], AC_DEFINE([[HAVE_EPOLL_CREATE1]], [[1]], [Define if you have epoll_create1 function.])])) +# check for libmicrohttpd +AC_MSG_CHECKING([for microhttpd]) +AC_ARG_WITH([microhttpd], + [AS_HELP_STRING([--with-microhttpd=PFX], [base of microhttpd installation])], + [AC_MSG_RESULT([given as $with_microhttpd])], + [AC_MSG_RESULT([not given]) + with_microhttpd=yes]) +AS_CASE([$with_microhttpd], + [yes], [], + [no], [AC_MSG_ERROR([--with-microhttpd is required])], + [LDFLAGS="-L$with_microhttpd/lib $LDFLAGS" + CPPFLAGS="-I$with_microhttpd/include $CPPFLAGS"]) +MHD_VERSION_AT_LEAST([0.9.71]) + +# check for libjansson (Jansson JSON library) +jansson=0 +AC_MSG_CHECKING([for jansson]) +AC_ARG_WITH([jansson], + [AS_HELP_STRING([--with-jansson=PFX], [base of jansson installation])], + [AC_MSG_RESULT([given as $with_jansson])], + [AC_MSG_RESULT([not given]) + with_jansson=yes]) +AS_CASE([$with_jansson], + [yes], [], + [no], [AC_MSG_ERROR([--with-jansson is required])], + [LDFLAGS="-L$with_jansson/lib $LDFLAGS" + CPPFLAGS="-I$with_jansson/include $CPPFLAGS"]) +AC_CHECK_LIB(jansson,json_dumpb, + [AC_CHECK_HEADER([jansson.h],[jansson=1])]) +AS_IF([test $jansson = 0], + [AC_MSG_ERROR([[ +*** +*** You need libjansson >= 2.10 to build this program. +*** ]])]) + + # Check for GNUnet's libgnunetutil. libgnunetutil=0 AC_MSG_CHECKING([for libgnunetutil]) @@ -146,7 +182,7 @@ AC_CHECK_HEADERS([gnunet/gnunet_util_lib.h], AS_IF([test $libgnunetutil != 1], [AC_MSG_ERROR([[ *** -*** You need libgnunetutil >= 0.19.0 to build this program. +*** You need libgnunetutil >= 0.21.1 to build this program. *** This library is part of GNUnet, available at *** https://gnunet.org *** ]])]) @@ -180,14 +216,12 @@ AM_GNU_GETTEXT([external]) AM_GNU_GETTEXT_VERSION([0.19.8]) -# Save before checking libgnurl/libcurl +# Save before checking libcurl CFLAGS_SAVE=$CFLAGS LDFLAGS_SAVE=$LDFLAGS LIBS_SAVE=$LIBS -# check for libgnurl -# libgnurl -LIBGNURL_CHECK_CONFIG(,7.34.0,gnurl=1,gnurl=0) +# check for libcurl LIBCURL_CHECK_CONFIG(,7.34.0,[curl=1],[curl=0]) # cURL must support CURLINFO_TLS_SESSION, version >= 7.34 @@ -198,22 +232,14 @@ AS_IF([test "x$curl" = x1],[ ]) -# libcurl and libgnurl should be mutually exclusive -AS_IF([test "$gnurl" = 1], - [AM_CONDITIONAL(HAVE_LIBGNURL, true) - AC_DEFINE([HAVE_LIBGNURL],[1],[Have libgnurl]) - AM_CONDITIONAL(HAVE_LIBCURL, false) - AC_DEFINE([HAVE_LIBCURL],[0],[Lacking libcurl]) - [LIBGNURLCURL_LIBS="-lgnurl"]], - [AS_IF([test "$curl" = 1], - [AM_CONDITIONAL(HAVE_LIBGNURL, false) - AC_DEFINE([HAVE_LIBGNURL],[0],[Lacking libgnurl]) - AM_CONDITIONAL(HAVE_LIBCURL, true) - AC_DEFINE([HAVE_LIBCURL],[1],[Have libcurl]) - [LIBGNURLCURL_LIBS="-lcurl"]], - [AC_MSG_ERROR([FATAL: No libgnurl/libcurl])])]) +# libcurl should be mutually exclusive +AS_IF([test "$curl" = 1], + AM_CONDITIONAL(HAVE_LIBCURL, true) + AC_DEFINE([HAVE_LIBCURL],[1],[Have libcurl]) + [LIBCURL_LIBS="-lcurl"], + [AC_MSG_ERROR([FATAL: No libcurl])]) -AC_SUBST([LIBGNURLCURL_LIBS]) +AC_SUBST([LIBCURL_LIBS]) # Check for GNUnet's libgnunetcurl. libgnunetcurl=0 @@ -234,18 +260,18 @@ AS_IF([test $libgnunetcurl != 1], [AC_MSG_ERROR([[ *** *** You need libgnunetcurl to build this program. -*** Make sure you have libcurl or libgnurl installed while +*** Make sure you have libcurl installed while *** building GNUnet. *** ]])]) -# Restore after gnurl/curl checks messed up these values +# Restore after curl checks messed up these values CFLAGS=$CFLAGS_SAVE LDFLAGS=$LDFLAGS_SAVE LIBS=$LIBS_SAVE # test for postgres -AX_LIB_POSTGRESQL([13.0]) +AX_LIB_POSTGRESQL([15.0]) AS_IF([test "x$found_postgresql" = "xyes"], [SAVE_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$POSTGRES_CPPFLAGS $CPPFLAGS" @@ -253,7 +279,7 @@ AS_IF([test "x$found_postgresql" = "xyes"], AS_IF([test "x$postgres" != "x1"], [AC_MSG_ERROR([[ *** -*** You need libpq(-dev) >= 13.0 to build this program. +*** You need libpq(-dev) >= 15.0 to build this program. *** ]])]) AM_CONDITIONAL([HAVE_POSTGRESQL], [test "x$postgres" = "x1"]) AC_DEFINE_UNQUOTED([HAVE_POSTGRESQL], [$postgres], @@ -274,14 +300,13 @@ AS_CASE([$with_gnunet], CPPFLAGS="-I$with_gnunet/include ${CPPFLAGS}"]) CPPFLAGS="${CPPFLAGS} ${POSTGRESQL_CPPFLAGS}" AC_CHECK_HEADERS([gnunet/gnunet_pq_lib.h], - [AC_CHECK_LIB([gnunetpq], [GNUNET_PQ_result_spec_string], libgnunetpq=1)]) + [AC_CHECK_LIB([gnunetpq], [GNUNET_PQ_query_param_int64], libgnunetpq=1)]) AS_IF([test $libgnunetpq != 1], [AC_MSG_ERROR([[ *** -*** You need libgnunetpq to build this program. +*** You need libgnunetpq version >= 6:0:1 to build this program. *** Make sure you have Postgres installed while -*** building GNUnet (and that your GNUnet version -*** is recent!) +*** building GNUnet (and that your GNUnet version is recent!) *** ]])]) CFLAGS_SAVE=$CFLAGS @@ -295,42 +320,6 @@ AC_CHECK_HEADERS([gnunet/gnunet_sq_lib.h], [AC_CHECK_LIB([gnunetsq], [GNUNET_SQ_result_spec_string], libgnunetsq=1)]) -# check for libmicrohttpd -AC_MSG_CHECKING([for microhttpd]) -AC_ARG_WITH([microhttpd], - [AS_HELP_STRING([--with-microhttpd=PFX], [base of microhttpd installation])], - [AC_MSG_RESULT([given as $with_microhttpd])], - [AC_MSG_RESULT([not given]) - with_microhttpd=yes]) -AS_CASE([$with_microhttpd], - [yes], [], - [no], [AC_MSG_ERROR([--with-microhttpd is required])], - [LDFLAGS="-L$with_microhttpd/lib $LDFLAGS" - CPPFLAGS="-I$with_microhttpd/include $CPPFLAGS"]) -MHD_VERSION_AT_LEAST([0.9.71]) - -# check for libjansson (Jansson JSON library) -jansson=0 -AC_MSG_CHECKING([for jansson]) -AC_ARG_WITH([jansson], - [AS_HELP_STRING([--with-jansson=PFX], [base of jansson installation])], - [AC_MSG_RESULT([given as $with_jansson])], - [AC_MSG_RESULT([not given]) - with_jansson=yes]) -AS_CASE([$with_jansson], - [yes], [], - [no], [AC_MSG_ERROR([--with-jansson is required])], - [LDFLAGS="-L$with_jansson/lib $LDFLAGS" - CPPFLAGS="-I$with_jansson/include $CPPFLAGS"]) -AC_CHECK_LIB(jansson,json_dumpb, - [AC_CHECK_HEADER([jansson.h],[jansson=1])]) -AS_IF([test $jansson = 0], - [AC_MSG_ERROR([[ -*** -*** You need libjansson >= 2.10 to build this program. -*** ]])]) - - CFLAGS=$CFLAGS_SAVE LDFLAGS=$LDFLAGS_SAVE @@ -397,6 +386,11 @@ AS_IF([test "x$enableval" = "xno"], [enable_dev=0]) AC_CHECK_DECL([MHD_OPTION_NOTIFY_CONNECTION],,[enable_dev=0],[[#include <microhttpd.h>]]) AC_DEFINE_UNQUOTED([HAVE_DEVELOPER],[$enable_dev],[1 if developer logic is enabled, 0 otherwise]) +AC_PATH_PROG([JQ], [jq], [no]) +if test "$JQ" = "no"; then + AC_MSG_ERROR([jq is required but not found. Please install jq.]) +fi + # Adam shostack suggests the following for Windows: @@ -450,7 +444,7 @@ AC_MSG_CHECKING(for source being under a VCS) git_version= AS_IF([test ! "X$gitcommand" = "X"], [ - git_version=$(cd $srcdir ; git rev-list --full-history --all --abbrev-commit | head -n 1 2>/dev/null) + git_version=$(cd $srcdir ; git rev-list -n 1 --abbrev-commit HEAD 2>/dev/null) ]) AS_IF([test "X$git_version" = "X"], [ @@ -497,7 +491,6 @@ AM_CONDITIONAL([MHD_HAVE_EPOLL], [false]) AM_CONDITIONAL([HAVE_POSTGRESQL], [false]) AM_CONDITIONAL([HAVE_SQLITE], [false]) AM_CONDITIONAL([HAVE_LIBCURL], [false]) -AM_CONDITIONAL([HAVE_LIBGNURL], [false]) AM_CONDITIONAL([HAVE_DEVELOPER], [false]) AM_CONDITIONAL([USE_COVERAGE], [false]) AM_CONDITIONAL([ENABLE_DOC], [true]) |