From 6055bba8cc18f4d918fdd20f648e5e5deab37946 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Thu, 6 Oct 2016 09:16:21 -0400 Subject: [PATCH] Only use -levent when checking functions if we will use it to link. Fixes 19904; bugfix on b62abf9f21499ab; patch from Rubiate. --- changes/bug19904 | 4 ++++ configure.ac | 19 ++++++++++--------- 2 files changed, 14 insertions(+), 9 deletions(-) create mode 100644 changes/bug19904 diff --git a/changes/bug19904 b/changes/bug19904 new file mode 100644 index 0000000000..cdfb6feaac --- /dev/null +++ b/changes/bug19904 @@ -0,0 +1,4 @@ + o Minor bugfixes (compilation, OpenBSD): + - Detect Libevent2 functions correctly on systems that provide + libevent2, but where libevent1 is linked with -levent. Fixes bug + 19904; bugfix on 0.2.2.24-alpha. Patch from Rubiate. diff --git a/configure.ac b/configure.ac index f6edb3a513..23371d3b4b 100644 --- a/configure.ac +++ b/configure.ac @@ -490,20 +490,16 @@ void *event_init(void);], event_init(); ], [--with-libevent-dir], [/opt/libevent]) -dnl Now check for particular libevent functions. +dnl Determine the incantation needed to link libevent. save_LIBS="$LIBS" save_LDFLAGS="$LDFLAGS" save_CPPFLAGS="$CPPFLAGS" -LIBS="-levent $STATIC_LIBEVENT_FLAGS $TOR_LIB_WS32 $LIBS" -LDFLAGS="$TOR_LDFLAGS_libevent $LDFLAGS" -CPPFLAGS="$TOR_CPPFLAGS_libevent $CPPFLAGS" -AC_CHECK_FUNCS([evutil_secure_rng_set_urandom_device_file \ - evutil_secure_rng_add_bytes \ -]) - -AC_CHECK_HEADERS(event2/event.h event2/dns.h event2/bufferevent_ssl.h) LIBS="$STATIC_LIBEVENT_FLAGS $TOR_LIB_WS32 $save_LIBS" +LDFLAGS="$TOR_LDFLAGS_libevent $LDFLAGS" +CPPFLAGS="$TOR_CPPFLAGS_libevent $CPPFLAGS" + +AC_CHECK_HEADERS(event2/event.h event2/dns.h event2/bufferevent_ssl.h) if test "$enable_static_libevent" = "yes"; then if test "$tor_cv_library_libevent_dir" = "(system)"; then @@ -527,6 +523,11 @@ else fi fi +dnl Now check for particular libevent functions. +AC_CHECK_FUNCS([evutil_secure_rng_set_urandom_device_file \ + evutil_secure_rng_add_bytes \ +]) + LIBS="$save_LIBS" LDFLAGS="$save_LDFLAGS" CPPFLAGS="$save_CPPFLAGS"