diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2017-09-28 10:37:19 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2017-09-28 10:40:07 +0000 |
commit | 468182e256345aed0fc640168b7a6bde5935fd6c (patch) | |
tree | b17fb98431de93d9cdace57a6ef1b5583dabeb48 /testing/tmate/0001-Fix-building-with-or-without-backtrace-3.patch | |
parent | ae7fb669b2b01c6039e0f8a3990a0f8989813f1f (diff) | |
download | aports-468182e256345aed0fc640168b7a6bde5935fd6c.tar.bz2 aports-468182e256345aed0fc640168b7a6bde5935fd6c.tar.xz |
testing/tmate: cleanup backtrace patch
sent upstream: https://github.com/tmate-io/tmate/pull/117
Diffstat (limited to 'testing/tmate/0001-Fix-building-with-or-without-backtrace-3.patch')
-rw-r--r-- | testing/tmate/0001-Fix-building-with-or-without-backtrace-3.patch | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/testing/tmate/0001-Fix-building-with-or-without-backtrace-3.patch b/testing/tmate/0001-Fix-building-with-or-without-backtrace-3.patch new file mode 100644 index 0000000000..bebb41a374 --- /dev/null +++ b/testing/tmate/0001-Fix-building-with-or-without-backtrace-3.patch @@ -0,0 +1,75 @@ +From c56f00dd22611274fd6ac7626d85ceca8692abf6 Mon Sep 17 00:00:00 2001 +From: Natanael Copa <ncopa@alpinelinux.org> +Date: Thu, 28 Sep 2017 10:28:42 +0000 +Subject: [PATCH] Fix building with or without backtrace(3) + +backtrace(3) and execinfo.h are GNU extensions and may or may not be +available, and they may be provided via libexecinfo. + +Fix detection of libexecinfo and allow building without any support of +backtrace, in which case we let kernel create core dump. + +Fixes #116 +--- + configure.ac | 5 +++++ + tmate-debug.c | 10 ++++++++++ + 2 files changed, 15 insertions(+) + +diff --git a/configure.ac b/configure.ac +index 02d2872b..05c1c482 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -102,6 +102,7 @@ AC_CHECK_HEADERS( + bitstring.h \ + curses.h \ + dirent.h \ ++ execinfo.h \ + fcntl.h \ + inttypes.h \ + libutil.h \ +@@ -121,9 +122,13 @@ AC_CHECK_HEADERS( + # Look for library needed for flock. + AC_SEARCH_LIBS(flock, bsd) + ++# Look for library needed for backtrace ++AC_SEARCH_LIBS(backtrace, execinfo) ++ + # Check for some functions that are replaced or omitted. + AC_CHECK_FUNCS( + [ \ ++ backtrace \ + dirfd \ + flock \ + setproctitle \ +diff --git a/tmate-debug.c b/tmate-debug.c +index f1fd971f..f58efe0e 100644 +--- a/tmate-debug.c ++++ b/tmate-debug.c +@@ -1,10 +1,19 @@ ++#ifdef HAVE_EXECINFO_H + #include <execinfo.h> ++#endif + #include <stdio.h> + #include <stdlib.h> + #include <regex.h> + #include <signal.h> + #include "tmate.h" + ++#ifndef HAVE_BACKTRACE ++ ++void tmate_print_stack_trace(void) {} ++void tmate_catch_sigsegv(void) {} ++ ++#else ++ + #if DEBUG + + static int print_resolved_stack_frame(const char *frame) +@@ -88,3 +97,4 @@ void tmate_catch_sigsegv(void) + { + signal(SIGSEGV, handle_sigsegv); + } ++#endif +-- +2.14.1 + |