[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.3.2+dfsg-3
Severity: important
Tags: patch

Hi,

qtwebkit-opensource-src FTBFS on m68k due to 2 issues:

• double-conversion – fix included, but will no longer be
  needed once it uses the system-wide copy

• implicit alignment assumptions – fix included

Please apply the patches and forward them upstream as well.
The package builds with them applied; build log (for your
adjustment of the symbols files) attached too.

Thanks!

-- System Information:
Debian Release: 8.0
  APT prefers unreleased
  APT policy: (500, 'unreleased'), (500, 'unstable')
Architecture: m68k

Kernel: Linux 3.16.0-4-m68k
Locale: LANG=C, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/lksh
Init: sysvinit (via /sbin/init)

Attachment: qtwebkit-opensource-src_5.3.2+dfsg-3+m68k.2_m68k.build.xz
Description: application/xz

diff -Nru qtwebkit-opensource-src-5.3.2+dfsg/debian/changelog qtwebkit-opensource-src-5.3.2+dfsg/debian/changelog
--- qtwebkit-opensource-src-5.3.2+dfsg/debian/changelog	2014-10-17 07:06:32.000000000 +0200
+++ qtwebkit-opensource-src-5.3.2+dfsg/debian/changelog	2015-03-10 00:22:58.000000000 +0100
@@ -1,3 +1,10 @@
+qtwebkit-opensource-src (5.3.2+dfsg-3+m68k.2) unreleased; urgency=medium
+
+  * fix_double-conversion_for_m68k.diff: Fix dtoa for m68k (see #778644)
+  * fix_alignment.diff: Make implicit alignment assumptions explicit
+
+ -- Thorsten Glaser <tg@mirbsd.de>  Mon, 09 Mar 2015 23:21:54 +0000
+
 qtwebkit-opensource-src (5.3.2+dfsg-3) unstable; urgency=medium
 
   * Backport three patches to fix crashes:
diff -Nru qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/fix_alignment.diff qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/fix_alignment.diff
--- qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/fix_alignment.diff	1970-01-01 01:00:00.000000000 +0100
+++ qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/fix_alignment.diff	2015-03-08 00:09:33.000000000 +0100
@@ -0,0 +1,64 @@
+--- a/Source/WebCore/dom/ElementRareData.h
++++ b/Source/WebCore/dom/ElementRareData.h
+@@ -163,6 +163,8 @@ private:
+     unsigned m_childrenAffectedByBackwardPositionalRules : 1;
+ 
+     unsigned m_isInsideRegion : 1;
++    // the sum of all elements of this bitfield (all #if enabled) must be 32
++    unsigned m_unused : 16;
+     RegionOversetState m_regionOversetState;
+ 
+     LayoutSize m_minimumSizeForResizing;
+--- a/Source/WebCore/dom/NodeRareData.cpp
++++ b/Source/WebCore/dom/NodeRareData.cpp
+@@ -35,6 +35,8 @@ namespace WebCore {
+ 
+ struct SameSizeAsNodeRareData {
+     unsigned m_bitfields : 20;
++    // Must add to 32
++    unsigned m_padding : 12;
+     void* m_pointer[3];
+ #if ENABLE(MICRODATA)
+     void* m_microData;
+--- a/Source/WebCore/dom/NodeRareData.h
++++ b/Source/WebCore/dom/NodeRareData.h
+@@ -341,6 +341,8 @@ protected:
+ 
+ private:
+     unsigned m_connectedFrameCount : 10; // Must fit Page::maxNumberOfFrames.
++    // Must add to 32
++    unsigned m_padding : 22;
+ 
+     OwnPtr<NodeListsNodeData> m_nodeLists;
+     OwnPtr<NodeMutationObserverData> m_mutationObserverData;
+--- a/Source/WebCore/rendering/style/RenderStyle.h
++++ b/Source/WebCore/rendering/style/RenderStyle.h
+@@ -211,6 +211,7 @@ protected:
+         // CSS Text Layout Module Level 3: Vertical writing support
+         unsigned m_writingMode : 2; // WritingMode
+         // 45 bits
++	unsigned m_padding : 19; // pad to 64 bits
+     } inherited_flags;
+ 
+ // don't inherit
+--- a/Source/WebCore/rendering/style/StyleBoxData.h
++++ b/Source/WebCore/rendering/style/StyleBoxData.h
+@@ -85,6 +85,7 @@ private:
+ #if ENABLE(CSS_BOX_DECORATION_BREAK)
+     unsigned m_boxDecorationBreak : 1; // EBoxDecorationBreak
+ #endif
++    unsigned m_padding : 29; // pad to 32 bit
+ };
+ 
+ } // namespace WebCore
+--- a/Source/WebCore/rendering/style/StyleRareInheritedData.h
++++ b/Source/WebCore/rendering/style/StyleRareInheritedData.h
+@@ -121,6 +121,8 @@ public:
+     unsigned m_textAlignLast : 3; // TextAlignLast
+     unsigned m_textJustify : 3; // TextJustify
+     unsigned m_textUnderlinePosition : 3; // TextUnderlinePosition
++#else
++    unsigned m_padding : 9; // fix alignment on m68k
+ #endif // CSS3_TEXT
+     unsigned m_rubyPosition : 1; // RubyPosition
+ 
diff -Nru qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/fix_double-conversion_for_m68k.diff qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/fix_double-conversion_for_m68k.diff
--- qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/fix_double-conversion_for_m68k.diff	1970-01-01 01:00:00.000000000 +0100
+++ qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/fix_double-conversion_for_m68k.diff	2015-02-19 18:50:22.000000000 +0100
@@ -0,0 +1,12 @@
+--- a/Source/WTF/wtf/dtoa/utils.h
++++ b/Source/WTF/wtf/dtoa/utils.h
+@@ -58,6 +58,9 @@ defined(_MIPS_ARCH_MIPS32R2)
+ #else
+ #undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS
+ #endif  // _WIN32
++#elif defined(__m68k__)
++// The MC68881 also uses an 80bit wide floating point stack.
++#undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS
+ #else
+ #error Target architecture was not detected as supported by Double-Conversion.
+ #endif
diff -Nru qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/series qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/series
--- qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/series	2014-10-14 20:52:18.000000000 +0200
+++ qtwebkit-opensource-src-5.3.2+dfsg/debian/patches/series	2015-03-10 00:21:37.000000000 +0100
@@ -11,3 +11,5 @@
 hurd.diff
 webkit_qt_hide_symbols.diff
 fix_nonlinux_glibc_linkage.diff
+fix_double-conversion_for_m68k.diff
+fix_alignment.diff

Reply to: