From c4ceb318aa1064bfa677cdd800c52155eb1bed3a Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 23 Aug 2018 04:06:17 +0000
Subject: [PATCH] Fix build with non-glibc libc on musl

Need to ensure glibc features are not assumed to be linux-wide

Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 Source/JavaScriptCore/heap/MachineStackMarker.cpp         | 8 ++++----
 .../inspector/JSGlobalObjectInspectorController.cpp       | 2 ++
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/Source/JavaScriptCore/heap/MachineStackMarker.cpp b/Source/JavaScriptCore/heap/MachineStackMarker.cpp
index 883914fd3..ce4e8d331 100644
--- a/Source/JavaScriptCore/heap/MachineStackMarker.cpp
+++ b/Source/JavaScriptCore/heap/MachineStackMarker.cpp
@@ -566,7 +566,7 @@ void* MachineThreads::Thread::Registers::stackPointer() const
 #error Unknown Architecture
 #endif
 
-#elif defined(__GLIBC__) && ENABLE(JIT)
+#elif defined(__linux__) && ENABLE(JIT)
 
 #if CPU(X86)
     return reinterpret_cast<void*>((uintptr_t) regs.machineContext.gregs[REG_ESP]);
@@ -665,7 +665,7 @@ void* MachineThreads::Thread::Registers::framePointer() const
 #error Unknown Architecture
 #endif
 
-#elif defined(__GLIBC__)
+#elif defined(__linux__)
 
 // The following sequence depends on glibc's sys/ucontext.h.
 #if CPU(X86)
@@ -747,7 +747,7 @@ void* MachineThreads::Thread::Registers::instructionPointer() const
 #error Unknown Architecture
 #endif
 
-#elif defined(__GLIBC__)
+#elif defined(__linux__)
 
 // The following sequence depends on glibc's sys/ucontext.h.
 #if CPU(X86)
@@ -838,7 +838,7 @@ void* MachineThreads::Thread::Registers::llintPC() const
 #error Unknown Architecture
 #endif
 
-#elif defined(__GLIBC__)
+#elif defined(__linux__)
 
 // The following sequence depends on glibc's sys/ucontext.h.
 #if CPU(X86)
diff --git a/Source/JavaScriptCore/inspector/JSGlobalObjectInspectorController.cpp b/Source/JavaScriptCore/inspector/JSGlobalObjectInspectorController.cpp
index fd7f869d4..e95391b32 100644
--- a/Source/JavaScriptCore/inspector/JSGlobalObjectInspectorController.cpp
+++ b/Source/JavaScriptCore/inspector/JSGlobalObjectInspectorController.cpp
@@ -51,8 +51,10 @@
 #include <cxxabi.h>
 #if OS(DARWIN) || (OS(LINUX) && !PLATFORM(GTK))
 #include <dlfcn.h>
+#if defined(__GLIBC__)
 #include <execinfo.h>
 #endif
+#endif
 
 #if ENABLE(REMOTE_INSPECTOR)
 #include "JSGlobalObjectDebuggable.h"
