Bug#696236: libproxy B-D on webkitgtk

Andreas Schwab schwab at linux-m68k.org
Tue Jan 5 02:12:07 UTC 2016


Thorsten Glaser <tg at mirbsd.de> writes:

> John Paul Adrian Glaubitz dixit:
>
>>Unfortunately, this seems to be impossible at the moment since libproxy
>>has a build dependency on webkitgtk which takes huge amounts of memory
>>to compile and eventually fails:
>
> It needs porting anyway (at least to m68k)

This works for me, and when adding -g0 to CFLAGS/CXXFLAGS this is good
enough for building it in aranym with FastRAM = 2304 (but it takes a
week to build).

Index: webkitgtk-2.4.4/Source/WTF/wtf/Platform.h
===================================================================
--- webkitgtk-2.4.4.orig/Source/WTF/wtf/Platform.h
+++ webkitgtk-2.4.4/Source/WTF/wtf/Platform.h
@@ -331,6 +331,12 @@
 #endif
 #endif
 
+/* CPU(M68K) - m68k */
+#if defined(__mc68000__)
+#define WTF_CPU_M68K 1
+#define WTF_CPU_BIG_ENDIAN 1
+#endif
+
 /* ==== OS() - underlying operating system; only to be used for mandated low-level services like 
    virtual memory, not to choose a GUI toolkit ==== */
 
@@ -822,7 +828,7 @@
 #define ENABLE_REGEXP_TRACING 0
 
 /* Yet Another Regex Runtime - turned on by default for JIT enabled ports. */
-#if !defined(ENABLE_YARR_JIT) && (ENABLE(JIT) || ENABLE(LLINT_C_LOOP)) && !CPU(AARCH64) && !CPU(PPC)
+#if !defined(ENABLE_YARR_JIT) && (ENABLE(JIT) || ENABLE(LLINT_C_LOOP)) && !CPU(AARCH64) && !CPU(PPC) && !CPU(M68K)
 #define ENABLE_YARR_JIT 1
 
 /* Setting this flag compares JIT results with interpreter results. */
Index: webkitgtk-2.4.4/Source/WTF/wtf/dtoa/utils.h
===================================================================
--- webkitgtk-2.4.4.orig/Source/WTF/wtf/dtoa/utils.h
+++ webkitgtk-2.4.4/Source/WTF/wtf/dtoa/utils.h
@@ -60,6 +60,8 @@ defined(_MIPS_ARCH_MIPS32R2)
 #endif  // _WIN32
 #elif defined(WINCE) || defined(_WIN32_WCE)
 #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
+#elif defined(__mc68000__)
+#undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS
 #else
 #error Target architecture was not detected as supported by Double-Conversion.
 #endif
Index: webkitgtk-2.4.4/Source/WebCore/css/CSSProperty.cpp
===================================================================
--- webkitgtk-2.4.4.orig/Source/WebCore/css/CSSProperty.cpp
+++ webkitgtk-2.4.4/Source/WebCore/css/CSSProperty.cpp
@@ -34,7 +34,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
 {
Index: webkitgtk-2.4.4/Source/WebCore/dom/ElementRareData.cpp
===================================================================
--- webkitgtk-2.4.4.orig/Source/WebCore/dom/ElementRareData.cpp
+++ webkitgtk-2.4.4/Source/WebCore/dom/ElementRareData.cpp
@@ -42,6 +42,6 @@ struct SameSizeAsElementRareData : NodeR
     void* pointers[7];
 };
 
-COMPILE_ASSERT(sizeof(ElementRareData) == sizeof(SameSizeAsElementRareData), ElementRareDataShouldStaySmall);
+COMPILE_ASSERT(sizeof(ElementRareData) <= sizeof(SameSizeAsElementRareData), ElementRareDataShouldStaySmall);
 
 } // namespace WebCore
Index: webkitgtk-2.4.4/Source/WebCore/dom/NodeRareData.cpp
===================================================================
--- webkitgtk-2.4.4.orig/Source/WebCore/dom/NodeRareData.cpp
+++ webkitgtk-2.4.4/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
Index: webkitgtk-2.4.4/Source/WebCore/dom/ShadowRoot.cpp
===================================================================
--- webkitgtk-2.4.4.orig/Source/WebCore/dom/ShadowRoot.cpp
+++ webkitgtk-2.4.4/Source/WebCore/dom/ShadowRoot.cpp
@@ -43,7 +43,7 @@ struct SameSizeAsShadowRoot : public Doc
     void* host;
 };
 
-COMPILE_ASSERT(sizeof(ShadowRoot) == sizeof(SameSizeAsShadowRoot), shadowroot_should_stay_small);
+COMPILE_ASSERT(sizeof(ShadowRoot) <= sizeof(SameSizeAsShadowRoot), shadowroot_should_stay_small);
 
 enum ShadowRootUsageOriginType {
     ShadowRootUsageOriginWeb = 0,
Index: webkitgtk-2.4.4/Source/WebCore/rendering/style/RenderStyle.cpp
===================================================================
--- webkitgtk-2.4.4.orig/Source/WebCore/rendering/style/RenderStyle.cpp
+++ webkitgtk-2.4.4/Source/WebCore/rendering/style/RenderStyle.cpp
@@ -58,7 +58,7 @@ struct SameSizeAsBorderValue {
     unsigned m_width;
 };
 
-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];
@@ -75,7 +75,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()
 {
Index: webkitgtk-2.4.4/Source/WebCore/rendering/style/StyleBoxData.cpp
===================================================================
--- webkitgtk-2.4.4.orig/Source/WebCore/rendering/style/StyleBoxData.cpp
+++ webkitgtk-2.4.4/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())

Andreas.

-- 
Andreas Schwab, schwab at linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."



More information about the Pkg-webkit-maintainers mailing list