WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
188862
[GTK] [2.22.0] Fails to build in armel
https://bugs.webkit.org/show_bug.cgi?id=188862
Summary
[GTK] [2.22.0] Fails to build in armel
Alberto Garcia
Reported
2018-08-22 13:53:25 PDT
Here's the error message: [ 33%] Generating ../../DerivedSources/JavaScriptCore/LLIntAssembly.h cd webkit2gtk-2.21.91/obj-arm-linux-gnueabi/DerivedSources/JavaScriptCore && /usr/bin/ruby webkit2gtk-2.21.91/Source/JavaScriptCore/offlineasm/asm.rb -Iwebkit2gtk-2.21.91/obj-arm-linux-gnueabi/DerivedSources/JavaScriptCore/ webkit2gtk-2.21.91/Source/JavaScriptCore/llint/LowLevelInterpreter.asm webkit2gtk-2.21.91/obj-arm-linux-gnueabi/bin/LLIntOffsetsExtractor webkit2gtk-2.21.91/obj-arm-linux-gnueabi/DerivedSources/JavaScriptCore/LLIntAssembly.h offlineasm: No magic values found. Skipping assembly file generation. make[2]: *** [Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/build.make:110: DerivedSources/JavaScriptCore/LLIntAssembly.h] Error 1
Attachments
Patch
(24 bytes, patch)
2018-11-25 14:49 PST
,
Alberto Garcia
no flags
Details
Formatted Diff
Diff
Patch
(1.17 KB, patch)
2018-11-25 14:50 PST
,
Alberto Garcia
mcatanzaro
: review+
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Alberto Garcia
Comment 1
2018-09-03 04:36:12 PDT
Still happening with 2.22.0
Alberto Garcia
Comment 2
2018-09-04 04:46:43 PDT
Building with -DENABLE_JIT=OFF works around that problem, but the build ultimately fails when generating the documentation: gtkdoc-fixxref --module=webkit2gtk-4.0 --module-dir=html/webkit2gtk-4.0 --extra-dir=/usr/share/gtk-doc/html/libsoup-2.4 --extra-dir=/usr/share/gtk-doc/html/gtk3 --extra-dir=/usr/share/gtk-doc/html/gdk3 --extra-dir=/usr/share/gtk-doc/html/gdk-pixbuf --extra-dir=/usr/share/gtk-doc/html/glib --extra-dir=/usr/share/gtk-doc/html/gobject --extra-dir=/usr/share/gtk-doc/html/gio --extra-dir=/home/user/webkit2gtk-2.22.0/obj-arm-linux-gnueabi/Documentation/webkitdomgtk-4.0/html --extra-dir=/home/user/webkit2gtk-2.22.0/obj-arm-linux-gnueabi/Documentation/jsc-glib-4.0/html Traceback (most recent call last): File "/usr/bin/gtkdoc-fixxref", line 57, in <module> fixxref.Run(options) File "/usr/share/gtk-doc/python/gtkdoc/fixxref.py", line 64, in Run FixCrossReferences(options.module_dir, options.module, options.src_lang) File "/usr/share/gtk-doc/python/gtkdoc/fixxref.py", line 224, in FixCrossReferences FixHTMLFile(src_lang, module, full_entry) File "/usr/share/gtk-doc/python/gtkdoc/fixxref.py", line 247, in FixHTMLFile repl_func, content, flags=re.DOTALL) File "/usr/lib/python2.7/re.py", line 155, in sub return _compile(pattern, flags).sub(repl, string, count) File "/usr/share/gtk-doc/python/gtkdoc/fixxref.py", line 244, in repl_func return HighlightSource(src_lang, m.group(1), m.group(2)) File "/usr/share/gtk-doc/python/gtkdoc/fixxref.py", line 354, in HighlightSource [config.highlight] + shlex.split(highlight_options) + [temp_source_file]).decode('utf-8') File "/usr/lib/python2.7/subprocess.py", line 223, in check_output raise CalledProcessError(retcode, cmd, output=output) subprocess.CalledProcessError: Command '['/usr/bin/highlight', '--syntax=c', '--out-format=xhtml', '-f', '--class-name=gtkdoc', '/tmp/tmpjRU4NW.c']' returned non-zero exit status -4 But this is almost certainly not a webkit bug.
Alberto Garcia
Comment 3
2018-11-25 09:47:00 PST
I tried this again with WebKitGTK+ 2.23.1 I think this fails because OFFLINE_ASM_BACKEND is unset in Source/JavaScriptCore/CMakeLists.txt There's no ARMv7 (because the Debian armel port targets older CPUs) and there's no CLoop because it's disabled by default on ARM. I can fix this by passing ENABLE_C_LOOP=ON manually, but should the build system detect this scenario instead?
Michael Catanzaro
Comment 4
2018-11-25 09:56:32 PST
Per
https://lists.webkit.org/pipermail/webkit-dev/2018-October/030220.html
cloop should be enabled. This architecture check in WebKitFeatures.cmake is insufficient: if (WTF_CPU_ARM64 OR WTF_CPU_X86_64) set(ENABLE_JIT_DEFAULT ON) set(ENABLE_FTL_DEFAULT ON) set(USE_SYSTEM_MALLOC_DEFAULT OFF) set(ENABLE_C_LOOP_DEFAULT OFF) set(ENABLE_SAMPLING_PROFILER_DEFAULT ON) elseif (WTF_CPU_ARM AND WTF_OS_LINUX) set(ENABLE_JIT_DEFAULT ON) set(ENABLE_FTL_DEFAULT OFF) set(USE_SYSTEM_MALLOC_DEFAULT OFF) set(ENABLE_C_LOOP_DEFAULT OFF) set(ENABLE_SAMPLING_PROFILER_DEFAULT ON) else () set(ENABLE_JIT_DEFAULT OFF) set(ENABLE_FTL_DEFAULT OFF) set(USE_SYSTEM_MALLOC_DEFAULT ON) set(ENABLE_C_LOOP_DEFAULT ON) set(ENABLE_SAMPLING_PROFILER_DEFAULT OFF) endif () The WTF_CPU_ARM branch enables the JIT stuff, but this is no longer supported on your WTF_CPU_ARM board. So that branch is incorrect. More logic is needed to distinguish between ARMv7 + thumb and older ARM. Should look something like: elseif (WTF_CPU_ARM AND has thumb2 AND armv7 AND WTF_OS_LINUX)
Alberto Garcia
Comment 5
2018-11-25 11:48:16 PST
Yeah, something like that. I can give it a try and try to come up with a patch.
Alberto Garcia
Comment 6
2018-11-25 14:49:45 PST
Created
attachment 355607
[details]
Patch
Alberto Garcia
Comment 7
2018-11-25 14:50:57 PST
Created
attachment 355608
[details]
Patch This seems to be enough
Alberto Garcia
Comment 8
2018-11-26 00:54:26 PST
Committed
r238489
: <
https://trac.webkit.org/changeset/238489
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug