[Webkit-unassigned] [Bug 113638] webkitgtk 2.0.0 fails to build on OpenBSD (and maybe others) powerpc/mips64el/sparc64

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Nov 13 08:18:06 PST 2013


https://bugs.webkit.org/show_bug.cgi?id=113638


Thomas De Schampheleire <patrickdepinguin at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |patrickdepinguin at gmail.com




--- Comment #10 from Thomas De Schampheleire <patrickdepinguin at gmail.com>  2013-11-13 08:16:46 PST ---
(In reply to comment #9)
> (In reply to comment #8)
> > (In reply to comment #0)
[..]
> 
> Fwiw, here's what i've ended up to fix the build :
> 
>  /* Yet Another Regex Runtime - turned on by default for JIT enabled ports. */
> -#if !defined(ENABLE_YARR_JIT) && (ENABLE(JIT) || ENABLE(LLINT_C_LOOP)) && !(OS(QNX) && PLATFORM(QT))
> +#if !defined(ENABLE_YARR_JIT) && (ENABLE(JIT)) && !(OS(QNX) && PLATFORM(QT))
>  #define ENABLE_YARR_JIT 1

For most cases this will still set YARR_JIT to 1, because the last clause is almost always true: not QNX and QT. Instead, I have been trying the following change (on a different version):

-#if !defined(ENABLE_YARR_JIT) && (ENABLE(JIT) || ENABLE(LLINT_C_LOOP)) && !(OS(QNX) && PLATFORM(QT))
+#if !defined(ENABLE_YARR_JIT) && (ENABLE(JIT) && !(OS(QNX) && PLATFORM(QT)))

(so moving the platform check together with JIT, meaning that if JIT is not enabled, YARR JIT won't be either).

I'm not 100% sure if this is correct, as I'm in no way a webkit expert.

> 
>  /* Setting this flag compares JIT results with interpreter results. */
> @@ -863,7 +874,7 @@
> 
>  /* If either the JIT or the RegExp JIT is enabled, then the Assembler must be
>     enabled as well: */
> -#if ENABLE(JIT) || ENABLE(YARR_JIT)
> +#if ENABLE(JIT)
>  #if defined(ENABLE_ASSEMBLER) && !ENABLE_ASSEMBLER
>  #error "Cannot enable the JIT or RegExp JIT without enabling the Assembler"
>  #else

This does not seem correct. It makes sense that you need the assembler for all types of JIT (both JIT as YARR_JIT).


With the mentioned change in Platform.h, and the Double2Ints fix from comment #1, I can compile much further (I'm building webkit 1.11.5 for a 32-bit powerpc target).
However, eventually I get a link problem, but I don't know if it's related to the above problem:

./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::tag() const'
./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::decode(long long)'
./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::payload() const'
./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::asCell() const'
./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::JSValue(int, int)'
./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::JSValue()'
collect2: ld returned 1 exit status
./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::tag() const'
./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::decode(long long)'
./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::payload() const'
./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::asCell() const'
./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::JSValue(int, int)'
./.libs/libjavascriptcoregtk-1.0.so: undefined reference to `JSC::JSValue::JSValue()'
collect2: ld returned 1 exit status
make[2]: *** [Programs/jsc-1] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [Programs/minidom] Error 1
make[2]: Leaving directory `/home/tdescham/repo/contrib/buildroot-webkit/output/build/webkit-1.11.5'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/tdescham/repo/contrib/buildroot-webkit/output/build/webkit-1.11.5'

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list