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

Bug#780430: qtwebkit-opensource-src: port to m68k



Source: qtwebkit-opensource-src
Version: 5.9.1+dfsg-5
Followup-For: Bug #780430
User: debian-68k@lists.debian.org
Usertags: m68k

Hi!

Attaching an updated patch for 5.9.1+dfsg-5, please apply.

I will try to upstream everything next week.

Thanks,
Adrian

--
  .''`.  John Paul Adrian Glaubitz
 : :' :  Debian Developer - glaubitz@debian.org
 `. `'   Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
   `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
Description: Add support for m68k
 This patch adds the necessary cmake and platform definitions
 for m68k as well as a missing patch from double-conversion
 upstream for m68k support.  Furthermore, several COMPILE_ASSERT()
 statements are relaxed such that they also allow smaller struct
 sizes which often occur on m68k to the native alignment there
 being 16-bit despite being a 32-bit platform.
 .
Author: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Last-Update: 2017-11-04

--- qtwebkit-opensource-src-5.212.0~alpha2.orig/CMakeLists.txt
+++ qtwebkit-opensource-src-5.212.0~alpha2/CMakeLists.txt
@@ -69,6 +69,8 @@ elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR
     set(WTF_CPU_X86_64 1)
 elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "(i[3-6]86|x86)")
     set(WTF_CPU_X86 1)
+elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "m68k")
+    set(WTF_CPU_M68K 1)
 elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "ppc")
     set(WTF_CPU_PPC 1)
 elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64")
--- qtwebkit-opensource-src-5.212.0~alpha2.orig/Source/JavaScriptCore/CMakeLists.txt
+++ qtwebkit-opensource-src-5.212.0~alpha2/Source/JavaScriptCore/CMakeLists.txt
@@ -1280,6 +1280,7 @@ endif ()
 if (WTF_CPU_ARM)
 elseif (WTF_CPU_ARM64)
 elseif (WTF_CPU_HPPA)
+elseif (WTF_CPU_M68K)
 elseif (WTF_CPU_PPC)
 elseif (WTF_CPU_PPC64)
 elseif (WTF_CPU_PPC64LE)
--- qtwebkit-opensource-src-5.212.0~alpha2.orig/Source/WTF/wtf/Platform.h
+++ qtwebkit-opensource-src-5.212.0~alpha2/Source/WTF/wtf/Platform.h
@@ -80,6 +80,12 @@
 #endif
 #endif
 
+/* CPU(M68K) - Motorola M68k */
+#if defined(__m68k__)
+#define WTF_CPU_M68K 1
+#define WTF_CPU_BIG_ENDIAN 1
+#endif
+
 /* CPU(MIPS) - MIPS 32-bit and 64-bit */
 #if (defined(mips) || defined(__mips__) || defined(MIPS) || defined(_MIPS_) || defined(__mips64))
 #if defined(_ABI64) && (_MIPS_SIM == _ABI64)
--- qtwebkit-opensource-src-5.212.0~alpha2.orig/Source/WTF/wtf/dtoa/utils.h
+++ qtwebkit-opensource-src-5.212.0~alpha2/Source/WTF/wtf/dtoa/utils.h
@@ -58,6 +58,8 @@ defined(_MIPS_ARCH_MIPS32R2)
 #else
 #undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS
 #endif  // _WIN32
+#elif defined(__m68k__)
+#undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS
 #else
 #error Target architecture was not detected as supported by Double-Conversion.
 #endif
--- qtwebkit-opensource-src-5.212.0~alpha2.orig/Source/WebCore/css/CSSProperty.cpp
+++ qtwebkit-opensource-src-5.212.0~alpha2/Source/WebCore/css/CSSProperty.cpp
@@ -35,7 +35,7 @@ struct SameSizeAsCSSProperty {
     void* value;
 };
 
-COMPILE_ASSERT(sizeof(CSSProperty) == sizeof(SameSizeAsCSSProperty), CSSProperty_should_stay_small);
+COMPILE_ASSERT(sizeof(CSSProperty) <= sizeof(SameSizeAsCSSProperty), CSSProperty_should_stay_small);
 
 CSSPropertyID StylePropertyMetadata::shorthandID() const
 {
--- qtwebkit-opensource-src-5.212.0~alpha2.orig/Source/WebCore/css/RuleSet.h
+++ qtwebkit-opensource-src-5.212.0~alpha2/Source/WebCore/css/RuleSet.h
@@ -143,7 +143,7 @@ struct SameSizeAsRuleData {
     unsigned d[4];
 };
 
-COMPILE_ASSERT(sizeof(RuleData) == sizeof(SameSizeAsRuleData), RuleData_should_stay_small);
+COMPILE_ASSERT(sizeof(RuleData) <= sizeof(SameSizeAsRuleData), RuleData_should_stay_small);
 
 class RuleSet {
     WTF_MAKE_NONCOPYABLE(RuleSet); WTF_MAKE_FAST_ALLOCATED;
--- qtwebkit-opensource-src-5.212.0~alpha2.orig/Source/WebCore/dom/ElementRareData.cpp
+++ qtwebkit-opensource-src-5.212.0~alpha2/Source/WebCore/dom/ElementRareData.cpp
@@ -42,6 +42,6 @@ struct SameSizeAsElementRareData : NodeR
     void* pointers[7];
 };
 
-static_assert(sizeof(ElementRareData) == sizeof(SameSizeAsElementRareData), "ElementRareData should stay small");
+static_assert(sizeof(ElementRareData) <= sizeof(SameSizeAsElementRareData), "ElementRareData should stay small");
 
 } // namespace WebCore
--- qtwebkit-opensource-src-5.212.0~alpha2.orig/Source/WebCore/dom/NodeRareData.cpp
+++ qtwebkit-opensource-src-5.212.0~alpha2/Source/WebCore/dom/NodeRareData.cpp
@@ -38,6 +38,6 @@ struct SameSizeAsNodeRareData {
     void* m_pointer[3];
 };
 
-COMPILE_ASSERT(sizeof(NodeRareData) == sizeof(SameSizeAsNodeRareData), NodeRareDataShouldStaySmall);
+COMPILE_ASSERT(sizeof(NodeRareData) <= sizeof(SameSizeAsNodeRareData), NodeRareDataShouldStaySmall);
 
 } // namespace WebCore
--- qtwebkit-opensource-src-5.212.0~alpha2.orig/Source/WebCore/dom/ShadowRoot.cpp
+++ qtwebkit-opensource-src-5.212.0~alpha2/Source/WebCore/dom/ShadowRoot.cpp
@@ -49,7 +49,7 @@ struct SameSizeAsShadowRoot : public Doc
 #endif
 };
 
-COMPILE_ASSERT(sizeof(ShadowRoot) == sizeof(SameSizeAsShadowRoot), shadowroot_should_stay_small);
+COMPILE_ASSERT(sizeof(ShadowRoot) <= sizeof(SameSizeAsShadowRoot), shadowroot_should_stay_small);
 
 ShadowRoot::ShadowRoot(Document& document, Type type)
     : DocumentFragment(document, CreateShadowRoot)
--- qtwebkit-opensource-src-5.212.0~alpha2.orig/Source/WebCore/rendering/RenderTableCell.cpp
+++ qtwebkit-opensource-src-5.212.0~alpha2/Source/WebCore/rendering/RenderTableCell.cpp
@@ -52,7 +52,7 @@ struct SameSizeAsRenderTableCell : publi
 };
 
 COMPILE_ASSERT(sizeof(RenderTableCell) == sizeof(SameSizeAsRenderTableCell), RenderTableCell_should_stay_small);
-COMPILE_ASSERT(sizeof(CollapsedBorderValue) == 12, CollapsedBorderValue_should_stay_small);
+COMPILE_ASSERT(sizeof(CollapsedBorderValue) <= 12, CollapsedBorderValue_should_stay_small);
 
 RenderTableCell::RenderTableCell(Element& element, Ref<RenderStyle>&& style)
     : RenderBlockFlow(element, WTFMove(style))
--- qtwebkit-opensource-src-5.212.0~alpha2.orig/Source/WebCore/rendering/style/RenderStyle.cpp
+++ qtwebkit-opensource-src-5.212.0~alpha2/Source/WebCore/rendering/style/RenderStyle.cpp
@@ -66,7 +66,7 @@ struct SameSizeAsBorderValue {
     int m_restBits;
 };
 
-COMPILE_ASSERT(sizeof(BorderValue) == sizeof(SameSizeAsBorderValue), BorderValue_should_not_grow);
+COMPILE_ASSERT(sizeof(BorderValue) <= sizeof(SameSizeAsBorderValue), BorderValue_should_not_grow);
 
 struct SameSizeAsRenderStyle : public RefCounted<SameSizeAsRenderStyle> {
     void* dataRefs[7];
@@ -81,7 +81,7 @@ struct SameSizeAsRenderStyle : public Re
     } noninherited_flags;
 };
 
-COMPILE_ASSERT(sizeof(RenderStyle) == sizeof(SameSizeAsRenderStyle), RenderStyle_should_stay_small);
+COMPILE_ASSERT(sizeof(RenderStyle) <= sizeof(SameSizeAsRenderStyle), RenderStyle_should_stay_small);
 
 inline RenderStyle& defaultStyle()
 {
--- qtwebkit-opensource-src-5.212.0~alpha2.orig/Source/WebCore/rendering/style/StyleBoxData.cpp
+++ qtwebkit-opensource-src-5.212.0~alpha2/Source/WebCore/rendering/style/StyleBoxData.cpp
@@ -33,7 +33,7 @@ struct SameSizeAsStyleBoxData : public R
     uint32_t bitfields;
 };
 
-COMPILE_ASSERT(sizeof(StyleBoxData) == sizeof(SameSizeAsStyleBoxData), StyleBoxData_should_not_grow);
+COMPILE_ASSERT(sizeof(StyleBoxData) <= sizeof(SameSizeAsStyleBoxData), StyleBoxData_should_not_grow);
 
 StyleBoxData::StyleBoxData()
     : m_minWidth(RenderStyle::initialMinSize())

Reply to: