[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#725651: qtwebkit failed to build on mips64el



On Wed, Oct 9, 2013 at 10:30 PM, Lisandro Damián Nicanor Pérez Meyer
<perezmeyer@gmail.com> wrote:
> On Tuesday 08 October 2013 13:58:43 YunQiang Su wrote:
>> On Mon, Oct 7, 2013 at 9:46 PM, Lisandro Damián Nicanor Pérez Meyer
>>
>> <perezmeyer@gmail.com> wrote:
>> > On Monday 07 October 2013 09:32:12 YunQiang Su wrote:
>> >> Package: qtwebkit
>> >> Version: 2.2.1-6
>> >>
>> >> On mips64el, qtwebkit has the same problem like qt4.
>> >> The attachment is the patch.
>> >>
>> >> Or where should I apply it to upstream?
>> >
>> > Hi YunQiang! As a rule of thumb, if it's something that does not involve
>> > packaging, pushing the patchs upstream is normally the best idea. An
>> > exception could be a patch that introduces something that is very
>> > Debian-related, but most of the time this can also be pushed upstream
>> > somehow.
>>
>> Thanks, I see.
>> I am wondering about which component should it involve to qt?
>> I have pushed this patch to qt/qt4/qtscripts.
>
> If the problem is in qtwebkit, then push it to qtwebkit. If in doubt, join
> upstream's irc #qt on freenode and ask.
As you noticed, I pushed it the qt4 in Qt's gerrit.
The new version of patch is

>
> Kinds regards, Lisandro.
>
> --
>
> Lisandro Damián Nicanor Pérez Meyer
> http://perezmeyer.com.ar/
> http://perezmeyer.blogspot.com/



-- 
YunQiang Su
Index: qtwebkit/Source/JavaScriptCore/wtf/Platform.h
===================================================================
--- qtwebkit.orig/Source/JavaScriptCore/wtf/Platform.h	2013-10-18 22:01:22.865876822 +0800
+++ qtwebkit/Source/JavaScriptCore/wtf/Platform.h	2013-10-18 22:02:56.689577225 +0800
@@ -144,10 +144,9 @@
 #endif
 #endif
 
-/* CPU(MIPS) - MIPS 32-bit */
-/* Note: Only O32 ABI is tested, so we enable it for O32 ABI for now.  */
-#if (defined(mips) || defined(__mips__) || defined(MIPS) || defined(_MIPS_)) \
-    && defined(_ABIO32)
+/* CPU(MIPS) - MIPS O32/N32/N64 */
+#if (defined(mips) || defined(__mips__) || defined(MIPS) || defined(_MIPS_))
+#include <sgidefs.h>
 #define WTF_CPU_MIPS 1
 #if defined(__MIPSEB__)
 #define WTF_CPU_BIG_ENDIAN 1
@@ -162,6 +161,22 @@
 #define WTF_MIPS_FP64 (defined __mips_fpr && __mips_fpr == 64)
 /* MIPS requires allocators to use aligned memory */
 #define WTF_USE_ARENA_ALLOC_ALIGNMENT_INTEGER 1
+
+/* CPU(MIPS64) - MIPS 64-bit both BIG and LITTLE endian */
+#if defined(_MIPS_SIM_ABI64) && (_MIPS_SIM == _MIPS_SIM_ABI64)
+#define WTF_CPU_MIPS64 1
+#endif
+
+/* CPU(MIPSN32) - MIPS N32 ABI both BIG and LITTLE endian */
+#if defined(_MIPS_SIM_ABIN32) && (_MIPS_SIM == _MIPS_SIM_ABIN32)
+#define WTF_CPU_MIPSN32 1
+#endif
+
+/* CPU(MIPS32) - MIPS O32 ABI both BIG and LITTLE endian */
+#if defined(_MIPS_SIM_ABI32) && (_MIPS_SIM == _MIPS_SIM_ABI32)
+#define WTF_CPU_MIPS32 1
+#endif
+
 #endif /* MIPS */
 
 /* CPU(PPC) - PowerPC 32-bit */
@@ -998,7 +1013,8 @@
     || CPU(ALPHA) \
     || CPU(SPARC64) \
     || CPU(S390X) \
-    || CPU(PPC64)
+    || CPU(PPC64) \
+    || CPU(MIPS64)
 #define WTF_USE_JSVALUE64 1
 #else
 #define WTF_USE_JSVALUE32_64 1
@@ -1024,9 +1040,9 @@
 #define ENABLE_JIT 0
 #endif
 
-/* The JIT is enabled by default on all x86, x64-64, ARM & MIPS platforms. */
+/* The JIT is enabled by default on all x86, x64-64, ARM & MIPS O32 platforms. */
 #if !defined(ENABLE_JIT) \
-    && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(MIPS)) \
+    && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(MIPS32)) \
     && (OS(DARWIN) || !COMPILER(GCC) || GCC_VERSION_AT_LEAST(4, 1, 0)) \
     && !OS(WINCE) \
     && !OS(QNX)

Reply to: