packages/admin/htop/patches/001-uClibc-friendly.patch

53 lines
1.4 KiB
Diff
Raw Normal View History

--- a/CRT.c
+++ b/CRT.c
@@ -11,7 +11,9 @@ in the source distribution for its full
#include <signal.h>
#include <stdlib.h>
#include <stdbool.h>
+#ifdef HAVE_EXECINFO_H
#include <execinfo.h>
+#endif
#include "String.h"
@@ -125,12 +127,14 @@ static void CRT_handleSIGSEGV(int sgn) {
CRT_done();
#if __linux
fprintf(stderr, "\n\nhtop " VERSION " aborting. Please report bug at http://htop.sf.net\n");
- #else
- fprintf(stderr, "\n\nhtop " VERSION " aborting. Unsupported platform.\n");
- #endif
+ #ifdef HAVE_EXECINFO_H
size_t size = backtrace(backtraceArray, sizeof(backtraceArray));
fprintf(stderr, "Backtrace: \n");
backtrace_symbols_fd(backtraceArray, size, 2);
+ #endif
+ #else
+ fprintf(stderr, "\n\nhtop " VERSION " aborting. Unsupported platform.\n");
+ #endif
abort();
}
--- a/CRT.h
+++ b/CRT.h
@@ -14,7 +14,9 @@ in the source distribution for its full
#include <signal.h>
#include <stdlib.h>
#include <stdbool.h>
+#ifdef HAVE_EXECINFO_H
#include <execinfo.h>
+#endif
#include "String.h"
--- a/configure.ac
+++ b/configure.ac
@@ -25,6 +25,7 @@ AC_HEADER_STDC
AC_CHECK_HEADERS([stdlib.h string.h strings.h sys/param.h sys/time.h unistd.h curses.h],[:],[
missing_headers="$missing_headers $ac_header"
])
+AC_CHECK_HEADERS([execinfo.h],[:],[:])
# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL