mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-23 20:03:31 +01:00
Detect Libevent version at configure time when using bufferevents
This commit is contained in:
parent
b7ae108e18
commit
21e5f3c431
43
configure.in
43
configure.in
@ -325,13 +325,50 @@ else
|
||||
fi
|
||||
AC_SUBST(TOR_LIBEVENT_LIBS)
|
||||
|
||||
|
||||
dnl This isn't the best test for Libevent 2.0.3-alpha. Once it's released,
|
||||
dnl we can do much better.
|
||||
if test "$enable_bufferevents" = "yes" && test "$ac_cv_header_event2_bufferevent_ssl_h" != "yes" ; then
|
||||
AC_MSG_ERROR([You've asked for bufferevent support, but you're using a version of Libevent without SSL support. This won't work. We need Libevent 2.0.3-alpha or later. If it isn't released yet, use Libevent from SVN, and talk to Nick.])
|
||||
if test "$enable_bufferevents" = "yes" ; then
|
||||
if test "$ac_cv_header_event2_bufferevent_ssl_h" != "yes" ; then
|
||||
AC_MSG_ERROR([You've asked for bufferevent support, but you're using a version of Libevent without SSL support. This won't work. We need Libevent 2.0.7-rc or later, and you don't seem to even have Libevent 2.0.3-alpha.])
|
||||
else
|
||||
|
||||
CPPFLAGS="$CPPFLAGS $TOR_CPPFLAGS_libevent"
|
||||
|
||||
# Check for the right version. First see if version detection works.
|
||||
AC_MSG_CHECKING([whether we can detect the Libevent version])
|
||||
AC_COMPILE_IFELSE([
|
||||
#include <event2/event.h>
|
||||
#if !defined(LIBEVENT_VERSION_NUMBER) || LIBEVENT_VERSION_NUMBER < 10
|
||||
#error
|
||||
int x = y(zz);
|
||||
#else
|
||||
int x = 1;
|
||||
#endif
|
||||
], [event_version_number_works=yes; AC_MSG_RESULT([yes]) ],
|
||||
[event_version_number_works=no; AC_MSG_RESULT([no])])
|
||||
if test "$event_version_number_works" != 'yes'; then
|
||||
AC_MSG_WARN([Version detection on Libevent seems broken. Your Libevent installation is probably screwed up or very old.])
|
||||
else
|
||||
AC_MSG_CHECKING([whether Libevent is new enough for bufferevents])
|
||||
AC_COMPILE_IFELSE([
|
||||
#include <event2/event.h>
|
||||
#if !defined(LIBEVENT_VERSION_NUMBER) || LIBEVENT_VERSION_NUMBER < 0x02000700
|
||||
#error
|
||||
int x = y(zz);
|
||||
#else
|
||||
int x = 1;
|
||||
#endif
|
||||
], [ AC_MSG_RESULT([yes]) ],
|
||||
[ AC_MSG_RESULT([no])
|
||||
AC_MSG_ERROR([Libevent does not seem new enough to support bufferevents. We require 2.0.7-rc or later]) ] )
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
LIBS="$save_LIBS"
|
||||
LDFLAGS="$save_LDFLAGS"
|
||||
CPPFLAGS="$save_CPPFLAGS"
|
||||
|
||||
AM_CONDITIONAL(USE_BUFFEREVENTS, test "$enable_bufferevents" = "yes")
|
||||
if test "$enable_bufferevents" = "yes"; then
|
||||
AC_DEFINE(USE_BUFFEREVENTS, 1, [Defined if we're going to use Libevent's buffered IO API])
|
||||
|
Loading…
Reference in New Issue
Block a user