summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <holger@moiji-mobile.com>2014-04-17 23:19:10 +0200
committerHolger Hans Peter Freyther <holger@moiji-mobile.com>2014-04-17 23:19:10 +0200
commitc2c042dfd796dae243d84b32e56e01ea5484ad21 (patch)
tree26dedd86a3cb584757422032427e1736dfc74f5d
parent0c50b17a2636a4a9d471ebbaf2cdb9396390e4cd (diff)
backtrace: Speculative fix for FreeBSD10.0 and execinfo.h
FreeBSD 10.0 ships an execinfo.h but one needs to link to an additional library for the backtrace functions. Check if there is a backtrace symbol in libexecinfo and if so link to that library.
-rw-r--r--configure.ac3
-rw-r--r--src/Makefile.am3
2 files changed, 5 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index fbc83f39..eaaab503 100644
--- a/configure.ac
+++ b/configure.ac
@@ -36,6 +36,9 @@ AC_CHECK_HEADERS(execinfo.h sys/select.h sys/socket.h syslog.h ctype.h)
AC_FUNC_ALLOCA
AC_SEARCH_LIBS([dlopen], [dl dld], [LIBRARY_DL="$LIBS";LIBS=""])
AC_SUBST(LIBRARY_DL)
+# for src/backtrace.c
+AC_CHECK_LIB(execinfo, backtrace, BACKTRACE_LIB=-lexecinfo, BACKTRACE_LIB=)
+AC_SUBST(BACKTRACE_LIB)
AC_PATH_PROG(DOXYGEN,doxygen,false)
AM_CONDITIONAL(HAVE_DOXYGEN, test $DOXYGEN != false)
diff --git a/src/Makefile.am b/src/Makefile.am
index e85f3e30..e68c29ac 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -6,6 +6,7 @@ AM_CFLAGS = -Wall $(all_includes) -I$(top_srcdir)/include -I$(top_builddir)/incl
lib_LTLIBRARIES = libosmocore.la
+libosmocore_la_LIBADD = $(BACKTRACE_LIB)
libosmocore_la_SOURCES = timer.c select.c signal.c msgb.c bits.c \
bitvec.c statistics.c \
write_queue.c utils.c socket.c \
@@ -26,7 +27,7 @@ endif
if ENABLE_TALLOC
libosmocore_la_SOURCES += talloc.c
else
-libosmocore_la_LIBADD = -ltalloc
+libosmocore_la_LIBADD += -ltalloc
endif
if ENABLE_MSGFILE