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
Still happening with 2.22.0
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.
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?
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)
Yeah, something like that. I can give it a try and try to come up with a patch.
Created attachment 355607 [details] Patch
Created attachment 355608 [details] Patch This seems to be enough
Committed r238489: <https://trac.webkit.org/changeset/238489>