From 5d5f61912d4352e58d58fe8cf5fe1dd58b04b9e5 Mon Sep 17 00:00:00 2001 From: BogDan Vatra <bogdan@kde.org> Date: Tue, 26 Mar 2013 19:33:38 +0200 Subject: [PATCH] Fix compile on Android Change-Id: Ide8d4a50169de13e9743f3b2304af2b23c3ce694 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> --- .../JavaScriptCore/assembler/MacroAssemblerARM.cpp | 14 ++++++++++++-- .../javascriptcore/JavaScriptCore/wtf/Platform.h | 9 ++++++--- .../javascriptcore/JavaScriptCore/wtf/Threading.h | 4 ++-- 3 files changed, 20 insertions(+), 7 deletions(-) diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/assembler/MacroAssemblerARM.cpp b/src/3rdparty/javascriptcore/JavaScriptCore/assembler/MacroAssemblerARM.cpp index b5b20fa0..efdd7773 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/assembler/MacroAssemblerARM.cpp +++ b/src/3rdparty/javascriptcore/JavaScriptCore/assembler/MacroAssemblerARM.cpp @@ -36,7 +36,18 @@ #include <fcntl.h> #include <unistd.h> #include <elf.h> -#include <asm/hwcap.h> +#if !OS(ANDROID) && !PLATFORM(QT) +# include <asm/hwcap.h> +# else +typedef struct +{ + uint32_t a_type; + union + { + uint32_t a_val; + } a_un; +} Elf32_auxv_t; +# endif #endif namespace JSC { @@ -56,7 +67,6 @@ static bool isVFPPresent() close(fd); } #endif - return false; } diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h index 17c06bf4..d4838063 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h +++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h @@ -452,6 +452,7 @@ || defined(__unix) \ || defined(__unix__) #define WTF_OS_UNIX 1 + #endif /* Operating environments */ @@ -643,16 +644,18 @@ #endif #if PLATFORM(ANDROID) +#if !PLATFORM(QT) #define WTF_USE_PTHREADS 1 +#define ENABLE_MAC_JAVA_BRIDGE 1 +#define ENABLE_JAVASCRIPT_DEBUGGER 0 +#endif /* !PLATFORM(QT) */ #define WTF_PLATFORM_SGL 1 #define USE_SYSTEM_MALLOC 1 -#define ENABLE_MAC_JAVA_BRIDGE 1 #define LOG_DISABLED 1 /* Prevents Webkit from drawing the caret in textfields and textareas This prevents unnecessary invals. */ #define ENABLE_TEXT_CARET 1 -#define ENABLE_JAVASCRIPT_DEBUGGER 0 -#endif +#endif /* PLATFORM(ANDROID) */ #if PLATFORM(WIN) #define WTF_USE_WININET 1 diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h index 8b76c0f5..d1944a57 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h +++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h @@ -73,7 +73,7 @@ #include <windows.h> #elif OS(DARWIN) #include <libkern/OSAtomic.h> -#elif OS(ANDROID) +#elif OS(ANDROID) && !PLATFORM(QT) #include <cutils/atomic.h> #elif OS(QNX) #include <atomic.h> @@ -236,7 +236,7 @@ inline int atomicDecrement(int volatile* addend) { return InterlockedDecrement(r inline int atomicIncrement(int volatile* addend) { return OSAtomicIncrement32Barrier(const_cast<int*>(addend)); } inline int atomicDecrement(int volatile* addend) { return OSAtomicDecrement32Barrier(const_cast<int*>(addend)); } -#elif OS(ANDROID) +#elif OS(ANDROID) && !PLATFORM(QT) inline int atomicIncrement(int volatile* addend) { return android_atomic_inc(addend); } inline int atomicDecrement(int volatile* addend) { return android_atomic_dec(addend); } -- GitLab