summaryrefslogtreecommitdiffstats
path: root/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-non-glibc-libraries-on-linux.patch
blob: 77ebf37efacb03a2f9acd66f702f6c9b6be83ef6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
From 30e2ef302a329850ba55c7c458c98cbf396186ec Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 31 Dec 2015 21:47:34 +0000
Subject: [PATCH] Fix build with non-glibc libraries on linux

qualify isnan() calls with std namespace
malloc_trim is glibc specific API so guard it with __GLIBC__
let ctype be used on non-glibc ( musl ) C library

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
Upstream-Status: Accepted

 Source/JavaScriptCore/runtime/Options.cpp                    | 2 +-
 Source/WTF/wtf/DisallowCType.h                               | 2 +-
 Source/WebCore/platform/linux/MemoryPressureHandlerLinux.cpp | 2 ++
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/Source/JavaScriptCore/runtime/Options.cpp b/Source/JavaScriptCore/runtime/Options.cpp
index fe830b4..c49aade 100644
--- a/Source/JavaScriptCore/runtime/Options.cpp
+++ b/Source/JavaScriptCore/runtime/Options.cpp
@@ -610,7 +610,7 @@ bool Option::operator==(const Option& other) const
     case Options::Type::unsignedType:
         return m_entry.unsignedVal == other.m_entry.unsignedVal;
     case Options::Type::doubleType:
-        return (m_entry.doubleVal == other.m_entry.doubleVal) || (isnan(m_entry.doubleVal) && isnan(other.m_entry.doubleVal));
+        return (m_entry.doubleVal == other.m_entry.doubleVal) || (std::isnan(m_entry.doubleVal) && std::isnan(other.m_entry.doubleVal));
     case Options::Type::int32Type:
         return m_entry.int32Val == other.m_entry.int32Val;
     case Options::Type::optionRangeType:
diff --git a/Source/WTF/wtf/DisallowCType.h b/Source/WTF/wtf/DisallowCType.h
index d85e767..dc6bcab 100644
--- a/Source/WTF/wtf/DisallowCType.h
+++ b/Source/WTF/wtf/DisallowCType.h
@@ -40,7 +40,7 @@
 // are used from wx headers. On GTK+ for Mac many GTK+ files include <libintl.h>
 // or <glib/gi18n-lib.h>, which in turn include <xlocale/_ctype.h> which uses
 // isacii(). 
-#if !(OS(DARWIN) && PLATFORM(GTK)) && !PLATFORM(EFL) && !defined(_LIBCPP_VERSION)
+#if !(OS(DARWIN) && PLATFORM(GTK)) && !PLATFORM(EFL) && !defined(_LIBCPP_VERSION) && defined(__GLIBC__)
 
 #include <ctype.h>
 
diff --git a/Source/WebCore/platform/linux/MemoryPressureHandlerLinux.cpp b/Source/WebCore/platform/linux/MemoryPressureHandlerLinux.cpp
index ea61909..1495642 100644
--- a/Source/WebCore/platform/linux/MemoryPressureHandlerLinux.cpp
+++ b/Source/WebCore/platform/linux/MemoryPressureHandlerLinux.cpp
@@ -202,7 +202,9 @@ void MemoryPressureHandler::respondToMemoryPressure(Critical critical, Synchrono
 void MemoryPressureHandler::platformReleaseMemory(Critical)
 {
     ReliefLogger log("Run malloc_trim");
+#ifdef __GLIBC__
     malloc_trim(0);
+#endif
 }
 
 void MemoryPressureHandler::ReliefLogger::platformLog()
-- 
2.6.4