diff options
author | leot <leot@pkgsrc.org> | 2018-11-13 20:11:38 +0000 |
---|---|---|
committer | leot <leot@pkgsrc.org> | 2018-11-13 20:11:38 +0000 |
commit | 23055440c4698aa368a44778958db7bfafbd0738 (patch) | |
tree | c4867e3073926d4f1b936a310372d96b5edd520a /www | |
parent | b676064106c4b60f5c2ab5e9986dedbb787cb10a (diff) | |
download | pkgsrc-23055440c4698aa368a44778958db7bfafbd0738.tar.gz |
webkit-gtk: Add patches to fix the build on aarch64
Import/adapt patches from FreeBSD to fix the build on aarch64.
Thanks to <jakllsch>!
XXX: (There is a compiler warning about m_compareRegister bitfield
XXX: that's probably needs XXX: further investigation the `: 6' should
XXX: be probably `: 7')
Diffstat (limited to 'www')
3 files changed, 38 insertions, 1 deletions
diff --git a/www/webkit-gtk/distinfo b/www/webkit-gtk/distinfo index a474ee697b4..455edf5c5e7 100644 --- a/www/webkit-gtk/distinfo +++ b/www/webkit-gtk/distinfo @@ -1,14 +1,16 @@ -$NetBSD: distinfo,v 1.109 2018/10/29 11:54:11 leot Exp $ +$NetBSD: distinfo,v 1.110 2018/11/13 20:11:38 leot Exp $ SHA1 (webkitgtk-2.22.3.tar.xz) = c16129f4098b35597457255e63e60126ff3e6daa RMD160 (webkitgtk-2.22.3.tar.xz) = dbba6df5cc3129ef498980f8e9eadfb6b2e0f652 SHA512 (webkitgtk-2.22.3.tar.xz) = 987c49d924be307d13ffba16d72d57c9aad5b2c540fe8e7120802ebc5a418aa0359e37bd2d2ea6f67af7fee3c585e2b53bc7e5940bf7cfd795be231b65b4931b Size (webkitgtk-2.22.3.tar.xz) = 16753248 bytes SHA1 (patch-CMakeLists.txt) = 2f05f3682bda601c99544dafd8e79bd622dfc5a5 +SHA1 (patch-Source_JavaScriptCore_assembler_ARM64Assembler.h) = 7479e5933df6f8d1670e362ae68c253362eda9e9 SHA1 (patch-Source_JavaScriptCore_assembler_ARMAssembler.h) = bae08310572c2e23c69cbf6aa9760a67345dcfe3 SHA1 (patch-Source_JavaScriptCore_assembler_MacroAssemblerARM.cpp) = ab75ef8714e5071fcd094735717a2f5d0321c747 SHA1 (patch-Source_JavaScriptCore_heap_MarkedSpace.cpp) = e6a23d5ef22bddd0a9606fb0e472960e4cf5673e SHA1 (patch-Source_JavaScriptCore_jit_ExecutableAllocator.cpp) = 36d29a5db03c2413ae93224ac391f3ff248983e8 +SHA1 (patch-Source_JavaScriptCore_offlineasm_arm64.rb) = 784baf6f3baba2986fbcb7aa10e7abed8f8c6336 SHA1 (patch-Source_JavaScriptCore_runtime_MachineContext.h) = 23bc86a389f8009ec829c3ee0fe3effe3f20b012 SHA1 (patch-Source_ThirdParty_gtest_include_gtest_internal_gtest-port.h) = f1eee7f9d3012edee1915234c837cff820f97092 SHA1 (patch-Source_WTF_wtf_Platform.h) = 5cf36cf7cca8a39d75a788ca988758927b421d95 diff --git a/www/webkit-gtk/patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h b/www/webkit-gtk/patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h new file mode 100644 index 00000000000..1cad580635b --- /dev/null +++ b/www/webkit-gtk/patches/patch-Source_JavaScriptCore_assembler_ARM64Assembler.h @@ -0,0 +1,18 @@ +$NetBSD: patch-Source_JavaScriptCore_assembler_ARM64Assembler.h,v 1.1 2018/11/13 20:11:38 leot Exp $ + +Add support for FreeBSD and NetBSD. + +Based on patch from FreeBSD ports but using __builtin___clear_cache() +instead of __clear_cache() (the former is also available in gcc). + +--- Source/JavaScriptCore/assembler/ARM64Assembler.h.orig 2018-10-27 21:20:55.000000000 +0000 ++++ Source/JavaScriptCore/assembler/ARM64Assembler.h +@@ -2863,6 +2863,8 @@ public: + { + #if OS(IOS) + sys_cache_control(kCacheFunctionPrepareForExecution, code, size); ++#elif OS(FREEBSD) || OS(NETBSD) ++ __builtin___clear_cache(code, reinterpret_cast<char*>(code) + size); + #elif OS(FUCHSIA) + zx_cache_flush(code, size, ZX_CACHE_FLUSH_INSN); + #elif OS(LINUX) diff --git a/www/webkit-gtk/patches/patch-Source_JavaScriptCore_offlineasm_arm64.rb b/www/webkit-gtk/patches/patch-Source_JavaScriptCore_offlineasm_arm64.rb new file mode 100644 index 00000000000..29cbfcd9819 --- /dev/null +++ b/www/webkit-gtk/patches/patch-Source_JavaScriptCore_offlineasm_arm64.rb @@ -0,0 +1,17 @@ +$NetBSD: patch-Source_JavaScriptCore_offlineasm_arm64.rb,v 1.1 2018/11/13 20:11:38 leot Exp $ + +Add support for FreeBSD and NetBSD. + +From FreeBSD ports. + +--- Source/JavaScriptCore/offlineasm/arm64.rb.orig 2018-10-27 21:20:55.000000000 +0000 ++++ Source/JavaScriptCore/offlineasm/arm64.rb +@@ -938,7 +938,7 @@ class Instruction + $asm.puts "ldr #{operands[1].arm64Operand(:ptr)}, [#{operands[1].arm64Operand(:ptr)}, #{operands[0].asmLabel}@GOTPAGEOFF]" + + # On Linux, use ELF GOT relocation specifiers. +- $asm.putStr("#elif OS(LINUX)") ++ $asm.putStr("#elif OS(LINUX) || OS(FREEBSD) || OS(NETBSD)") + $asm.puts "adrp #{operands[1].arm64Operand(:ptr)}, :got:#{operands[0].asmLabel}" + $asm.puts "ldr #{operands[1].arm64Operand(:ptr)}, [#{operands[1].arm64Operand(:ptr)}, :got_lo12:#{operands[0].asmLabel}]" + |