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
|
fi
|
||||||
AC_SUBST(TOR_LIBEVENT_LIBS)
|
AC_SUBST(TOR_LIBEVENT_LIBS)
|
||||||
|
|
||||||
|
|
||||||
dnl This isn't the best test for Libevent 2.0.3-alpha. Once it's released,
|
dnl This isn't the best test for Libevent 2.0.3-alpha. Once it's released,
|
||||||
dnl we can do much better.
|
dnl we can do much better.
|
||||||
if test "$enable_bufferevents" = "yes" && test "$ac_cv_header_event2_bufferevent_ssl_h" != "yes" ; then
|
if test "$enable_bufferevents" = "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 "$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
|
fi
|
||||||
|
|
||||||
|
LIBS="$save_LIBS"
|
||||||
|
LDFLAGS="$save_LDFLAGS"
|
||||||
|
CPPFLAGS="$save_CPPFLAGS"
|
||||||
|
|
||||||
AM_CONDITIONAL(USE_BUFFEREVENTS, test "$enable_bufferevents" = "yes")
|
AM_CONDITIONAL(USE_BUFFEREVENTS, test "$enable_bufferevents" = "yes")
|
||||||
if test "$enable_bufferevents" = "yes"; then
|
if test "$enable_bufferevents" = "yes"; then
|
||||||
AC_DEFINE(USE_BUFFEREVENTS, 1, [Defined if we're going to use Libevent's buffered IO API])
|
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