--- base/debug/stack_trace_posix.cc.orig +++ base/debug/stack_trace_posix.cc @@ -26,7 +26,7 @@ #if !defined(USE_SYMBOLIZE) #include #endif -#if !defined(__UCLIBC__) +#if defined(__GLIBC__) #include #endif @@ -80,7 +80,7 @@ // Note: code in this function is NOT async-signal safe (std::string uses // malloc internally). -#if !defined(__UCLIBC__) +#if defined(__GLIBC__) std::string::size_type search_from = 0; while (search_from < text->size()) { @@ -116,7 +116,7 @@ search_from = mangled_start + 2; } } -#endif // !defined(__UCLIBC__) +#endif // defined(__GLIBC__) } #endif // !defined(USE_SYMBOLIZE) @@ -128,7 +128,7 @@ virtual ~BacktraceOutputHandler() {} }; -#if !defined(__UCLIBC__) +#if defined(__GLIBC__) void OutputPointer(void* pointer, BacktraceOutputHandler* handler) { // This should be more than enough to store a 64-bit number in hex: // 16 hex digits + 1 for null-terminator. @@ -205,7 +205,7 @@ } #endif // defined(USE_SYMBOLIZE) } -#endif // !defined(__UCLIBC__) +#endif // defined(__GLIBC__) void PrintToStderr(const char* output) { // NOTE: This code MUST be async-signal safe (it's used by in-process @@ -722,7 +722,7 @@ // NOTE: This code MUST be async-signal safe (it's used by in-process // stack dumping signal handler). NO malloc or stdio is allowed here. -#if !defined(__UCLIBC__) +#if defined(__GLIBC__) count = std::min(arraysize(trace_), count); // Though the backtrace API man page does not list any possible negative @@ -737,13 +737,13 @@ // NOTE: This code MUST be async-signal safe (it's used by in-process // stack dumping signal handler). NO malloc or stdio is allowed here. -#if !defined(__UCLIBC__) +#if defined(__GLIBC__) PrintBacktraceOutputHandler handler; ProcessBacktrace(trace_, count_, &handler); #endif } -#if !defined(__UCLIBC__) +#if defined(__GLIBC__) void StackTrace::OutputToStream(std::ostream* os) const { StreamBacktraceOutputHandler handler(os); ProcessBacktrace(trace_, count_, &handler); --- third_party/WebKit/Source/wtf/Assertions.cpp.orig 2016-12-02 00:02:32.000000000 +0100 +++ third_party/WebKit/Source/platform/wtf/Assertions.cpp @@ -60,7 +60,7 @@ #include #endif -#if OS(MACOSX) || (OS(LINUX) && !defined(__UCLIBC__)) +#if OS(MACOSX) || (OS(LINUX) && defined(__GLIBC__)) #include #include #include @@ -215,7 +215,7 @@ }; FrameToNameScope::FrameToNameScope(void* addr) : m_name(0), m_cxaDemangled(0) { -#if OS(MACOSX) || (OS(LINUX) && !defined(__UCLIBC__)) +#if OS(MACOSX) || (OS(LINUX) && defined(__GLIBC__)) Dl_info info; if (!dladdr(addr, &info) || !info.dli_sname) return; --- third_party/webrtc/base/checks.cc.orig 2016-05-08 08:03:04.398461275 +0200 +++ third_party/webrtc/base/checks.cc 2016-05-08 08:03:24.254431362 +0200 @@ -16,7 +16,7 @@ #include #include -#if defined(__GLIBCXX__) && !defined(__UCLIBC__) +#if defined(__GLIBCXX__) && defined(__GLIBC__) #include #include #endif @@ -55,7 +55,7 @@ void PrintError(const char* format, ...) // to get usable symbols on Linux. This is copied from V8. Chromium has a more // advanced stace trace system; also more difficult to copy. void DumpBacktrace() { -#if defined(__GLIBCXX__) && !defined(__UCLIBC__) +#if defined(__GLIBCXX__) && defined(__GLIBC__) void* trace[100]; int size = backtrace(trace, sizeof(trace) / sizeof(*trace)); char** symbols = backtrace_symbols(trace, size);