1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
Accepted upstream as: https://github.com/zeromq/libzmq/pull/2625
From 88487e7da3e0412abde30af2855a667ab973f9fc Mon Sep 17 00:00:00 2001
From: Sergei Trofimovich <slyfox@gentoo.org>
Date: Fri, 14 Jul 2017 21:44:30 +0100
Subject: [PATCH] configure.ac: allow user to disable libunwind discovery via
--disable-libunwind
on ia64 architecture libunwind comes with gcc. Unfortunately
libunwind is not directly usable as-is and fails at link time:
```
ia64-unknown-linux-gnu-g++ -o perf/.libs/local_lat perf/local_lat.o src/.libs/libzmq.so -lsodium -lrt -lpthread -ldl
src/.libs/libzmq.so: undefined reference to `_ULia64_step'
```
The change adds --{enable,disable}-libunwind flag to control
automatic dependency. The default is unchanged: use if available.
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
---
configure.ac | 32 ++++++++++++++++++++++----------
1 file changed, 22 insertions(+), 10 deletions(-)
diff --git a/configure.ac b/configure.ac
index c10f8445..ad193871 100644
--- a/configure.ac
+++ b/configure.ac
@@ -721,16 +721,28 @@ else
AC_SUBST(pkg_config_defines, "")
fi
-PKG_CHECK_MODULES(LIBUNWIND, [libunwind],
- [
- AC_DEFINE(HAVE_LIBUNWIND, 1, [The libunwind library is to be used])
- AC_SUBST([LIBUNWIND_CFLAGS])
- AC_SUBST([LIBUNWIND_LIBS])
- AC_CHECK_LIB([dl], [dladdr])
- ],
- [
- AC_MSG_WARN([Cannot find libunwind])
- ])
+AC_ARG_ENABLE([libunwind],
+ [AS_HELP_STRING([--enable-libunwind],
+ [enable libunwind [default=auto]])],
+ [enable_libunwind=$enableval],
+ [enable_libunwind="auto"])
+
+if test "x$enable_libunwind" != "xno"; then
+ PKG_CHECK_MODULES(LIBUNWIND, [libunwind],
+ [
+ AC_DEFINE(HAVE_LIBUNWIND, 1, [The libunwind library is to be used])
+ AC_SUBST([LIBUNWIND_CFLAGS])
+ AC_SUBST([LIBUNWIND_LIBS])
+ AC_CHECK_LIB([dl], [dladdr])
+ ],
+ [
+ if test "x$enable_libunwind" = "xyes"; then
+ AC_MSG_ERROR([Cannot find libunwind])
+ else
+ AC_MSG_WARN([Cannot find libunwind])
+ fi
+ ])
+fi
# Subst LIBZMQ_EXTRA_CFLAGS & CXXFLAGS & LDFLAGS
AC_SUBST(LIBZMQ_EXTRA_CFLAGS)
--
2.13.3
|