aboutsummaryrefslogtreecommitdiffstats
path: root/testing/tmate/0001-Fix-building-with-or-without-backtrace-3.patch
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2017-09-28 10:37:19 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2017-09-28 10:40:07 +0000
commit468182e256345aed0fc640168b7a6bde5935fd6c (patch)
treeb17fb98431de93d9cdace57a6ef1b5583dabeb48 /testing/tmate/0001-Fix-building-with-or-without-backtrace-3.patch
parentae7fb669b2b01c6039e0f8a3990a0f8989813f1f (diff)
downloadaports-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.patch75
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
+