Browse Source

Only use -levent when checking functions if we will use it to link.

Fixes 19904; bugfix on b62abf9f21499ab; patch from Rubiate.
Nick Mathewson 7 years ago
parent
commit
6055bba8cc
2 changed files with 12 additions and 7 deletions
  1. 4 0
      changes/bug19904
  2. 8 7
      configure.ac

+ 4 - 0
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.

+ 8 - 7
configure.ac

@@ -490,21 +490,17 @@ 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"
+
+LIBS="$STATIC_LIBEVENT_FLAGS $TOR_LIB_WS32 $save_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"
-
 if test "$enable_static_libevent" = "yes"; then
    if test "$tor_cv_library_libevent_dir" = "(system)"; then
      AC_MSG_ERROR("You must specify an explicit --with-libevent-dir=x option when using --enable-static-libevent")
@@ -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"