From 8719f4fcc1685a320e648166cf6720c3e33f0434 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Tue, 30 Apr 2019 20:46:17 +0200 Subject: Make gnurl and curl mutually exclusive. This prevents issues when both curl and gnurl are available, but one of them is outdated. To get curl.h, we also now just include gnunet_curl_lib.h instead of writing the preprocessor conditionals manually. Fixes #5707 --- configure.ac | 50 +++++++++++++++++--------------------------------- 1 file changed, 17 insertions(+), 33 deletions(-) (limited to 'configure.ac') diff --git a/configure.ac b/configure.ac index a9845d202..e00b8ae1b 100644 --- a/configure.ac +++ b/configure.ac @@ -763,14 +763,6 @@ fi # libgnurl LIBGNURL_CHECK_CONFIG(,7.34.0,gnurl=1,gnurl=0) -if test "$gnurl" = 1 -then - AM_CONDITIONAL(HAVE_LIBGNURL, true) - AC_DEFINE([HAVE_LIBGNURL],[1],[Have libgnurl]) -else - AM_CONDITIONAL(HAVE_LIBGNURL, false) - AC_DEFINE([HAVE_LIBGNURL],[0],[Lacking libgnurl]) -fi SAVE_CPPFLAGS=$CPPFLAGS CPPFLAGS="$LIBGNURL_CPPFLAGS $LIBCURL_CPPFLAGS $CPPFLAGS" @@ -780,38 +772,30 @@ LIBS="$LIBGNURL $LIBCURL $LIBS" LIBCURL_CHECK_CONFIG(,7.34.0,[curl=true],[curl=false]) if test "x$curl" = xtrue then - - AC_CHECK_HEADERS([curl/curl.h], + AC_CHECK_HEADER([curl/curl.h], AC_CHECK_DECLS(CURLINFO_TLS_SESSION,[curl=true],[curl=false],[[#include ]]), [curl=false]) - AC_CHECK_HEADERS([gnurl/curl.h], - AC_CHECK_DECLS(CURLINFO_TLS_SESSION,[curl=true],,[[#include ]])) # need libcurl-gnutls.so, everything else is not acceptable AC_CHECK_LIB([curl-gnutls],[curl_easy_getinfo],,[curl=false]) # cURL must support CURLINFO_TLS_SESSION, version >= 7.34 fi -# Check for curl/curl.h and gnurl/curl.h so we can use #ifdef -# HAVE_CURL_CURL_H later (the above LIBCURL_CHECK_CONFIG accepted -# *either* header set). -AC_CHECK_HEADERS([curl/curl.h],, - curl=false - AC_CHECK_HEADERS([gnurl/curl.h],, - gnurl=false)) - - - -if test x$curl = xfalse -then - AM_CONDITIONAL(HAVE_LIBCURL, false) -if test "$gnurl" = 0 -then - AC_MSG_WARN([ERROR: GNUnet requires libcurl-gnutls or gnurl >= 7.34]) -fi -else - AM_CONDITIONAL(HAVE_LIBCURL, true) - AC_DEFINE([HAVE_LIBCURL],[1],[Have CURL]) -fi +# 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])], + [AS_IF([test "$curl" = true], + [AM_CONDITIONAL(HAVE_LIBGNURL, false) + AC_DEFINE([HAVE_LIBGNURL],[0],[Lacking libgnurl]) + AM_CONDITIONAL(HAVE_LIBCURL, true) + AC_DEFINE([HAVE_LIBCURL],[1],[Have libcurl])], + [AC_MSG_WARN([ERROR: GNUnet requires libcurl-gnutls or gnurl >= 7.34]) + AM_CONDITIONAL(HAVE_LIBGNURL, false) + AC_DEFINE([HAVE_LIBGNURL],[0],[Lacking libgnurl]) + AM_CONDITIONAL(HAVE_LIBCURL, false) + AC_DEFINE([HAVE_LIBCURL],[0],[Lacking libcurl])])]) AC_SEARCH_LIBS(__atomic_load_8, atomic, [have_libatomic=1 AC_DEFINE(HAVE_LIBATOMIC,1,[external libatomic])]) AM_CONDITIONAL(HAVE_LIBATOMIC, [test "$have_libatomic" = 1]) -- cgit v1.2.3