FreeBSD Bugzilla – Attachment 193836 Details for
Bug 228603
www/qt5-webengine: fix build on arm
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
patch
www_qt5-webengine.patch (text/plain), 11.74 KB, created by
Mikael Urankar
on 2018-05-30 09:48:34 UTC
(
hide
)
Description:
patch
Filename:
MIME Type:
Creator:
Mikael Urankar
Created:
2018-05-30 09:48:34 UTC
Size:
11.74 KB
patch
obsolete
>Index: www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn >=================================================================== >--- www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn (revision 471039) >+++ www/qt5-webengine/files/patch-src_3rdparty_chromium_build_config_compiler_BUILD.gn (working copy) >@@ -1,6 +1,6 @@ >---- src/3rdparty/chromium/build/config/compiler/BUILD.gn.orig 2017-01-26 00:49:07 UTC >+--- src/3rdparty/chromium/build/config/compiler/BUILD.gn.orig 2018-01-15 11:39:43 UTC > +++ src/3rdparty/chromium/build/config/compiler/BUILD.gn >-@@ -150,7 +150,7 @@ config("compiler") { >+@@ -156,7 +156,7 @@ config("compiler") { > configs += [ "//build/config/win:compiler" ] > } else if (is_android) { > configs += [ "//build/config/android:compiler" ] >@@ -9,7 +9,7 @@ > configs += [ "//build/config/linux:compiler" ] > } else if (is_nacl) { > configs += [ "//build/config/nacl:compiler" ] >-@@ -277,7 +277,7 @@ config("compiler") { >+@@ -290,7 +290,7 @@ config("compiler") { > > # Linux/Android common flags setup. > # --------------------------------- >@@ -18,7 +18,7 @@ > cflags += [ > "-fPIC", > "-pipe", # Use pipes for communicating between sub-processes. Faster. >-@@ -401,14 +401,14 @@ config("compiler") { >+@@ -414,14 +414,14 @@ config("compiler") { > # clang-cl (used if is_win) doesn't expose this flag. > # Currently disabled for nacl since its toolchain lacks this flag (too old). > # TODO(zforman): Once nacl's toolchain is updated, remove check. >@@ -35,7 +35,7 @@ > # gnu++11 instead of c++11 is needed because some code uses typeof() (a > # GNU extension). > # TODO(thakis): Eventually switch this to c++11 instead, >-@@ -458,7 +458,7 @@ config("compiler") { >+@@ -475,7 +475,7 @@ config("compiler") { > ] > > # Apply a lower LTO optimization level as the default is too slow. >@@ -44,7 +44,7 @@ > if (use_lld) { > ldflags += [ "-Wl,--lto-O1" ] > } else { >-@@ -478,7 +478,7 @@ config("compiler") { >+@@ -495,7 +495,7 @@ config("compiler") { > # targeting ARM, without this flag, LTO produces a .text section that is > # larger than the maximum call displacement, preventing the linker from > # relocating calls (http://llvm.org/PR22999). >@@ -53,7 +53,30 @@ > ldflags += [ "-Wl,-plugin-opt,-function-sections" ] > } > } >-@@ -742,7 +742,7 @@ config("compiler_codegen") { >+@@ -541,11 +541,11 @@ config("compiler_cpu_abi") { >+ ] >+ } >+ } else if (current_cpu == "arm") { >+- if (is_clang && !is_android && !is_nacl) { >++ if (is_clang && !is_android && !is_nacl && !is_bsd) { >+ cflags += [ "--target=arm-linux-gnueabihf" ] >+ ldflags += [ "--target=arm-linux-gnueabihf" ] >+ } >+- if (!is_nacl) { >++ if (!is_nacl && !is_bsd) { >+ cflags += [ >+ "-march=$arm_arch", >+ "-mfloat-abi=$arm_float_abi", >+@@ -555,7 +555,7 @@ config("compiler_cpu_abi") { >+ cflags += [ "-mtune=$arm_tune" ] >+ } >+ } else if (current_cpu == "arm64") { >+- if (is_clang && !is_android && !is_nacl) { >++ if (is_clang && !is_android && !is_nacl && !is_bsd) { >+ cflags += [ "--target=aarch64-linux-gnu" ] >+ ldflags += [ "--target=aarch64-linux-gnu" ] >+ } >+@@ -758,7 +758,7 @@ config("compiler_codegen") { > # configs -= [ "//build/config/compiler:clang_stackrealign" ] > # See https://crbug.com/556393 for details of where it must be avoided. > config("clang_stackrealign") { >@@ -62,7 +85,7 @@ > cflags = [ > # Align the stack on 16-byte boundaries, http://crbug.com/418554. > "-mstack-alignment=16", >-@@ -788,7 +788,7 @@ config("runtime_library") { >+@@ -804,7 +804,7 @@ config("runtime_library") { > # smaller. > if (is_win) { > configs += [ "//build/config/win:runtime_library" ] >@@ -71,7 +94,7 @@ > configs += [ "//build/config/linux:runtime_library" ] > } else if (is_ios) { > configs += [ "//build/config/ios:runtime_library" ] >-@@ -1038,7 +1038,7 @@ config("default_warnings") { >+@@ -1054,7 +1054,7 @@ config("default_warnings") { > "-Wno-nonportable-include-path", > > # TODO(hans): https://crbug.com/637306 >@@ -80,7 +103,7 @@ > ] > } > } >-@@ -1070,7 +1070,7 @@ config("chromium_code") { >+@@ -1086,7 +1086,7 @@ config("chromium_code") { > ] > > if (!is_debug && !using_sanitizer && >@@ -89,7 +112,7 @@ > # _FORTIFY_SOURCE isn't really supported by Clang now, see > # http://llvm.org/bugs/show_bug.cgi?id=16821. > # It seems to work fine with Ubuntu 12 headers though, so use it in >-@@ -1128,7 +1128,7 @@ config("no_chromium_code") { >+@@ -1144,7 +1144,7 @@ config("no_chromium_code") { > ] > } > >Index: www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_include_openssl_cpu.h >=================================================================== >--- www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_include_openssl_cpu.h (nonexistent) >+++ www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_include_openssl_cpu.h (working copy) >@@ -0,0 +1,11 @@ >+--- src/3rdparty/chromium/third_party/boringssl/src/include/openssl/cpu.h.orig 2018-03-21 07:29:16 UTC >++++ src/3rdparty/chromium/third_party/boringssl/src/include/openssl/cpu.h >+@@ -95,7 +95,7 @@ extern uint32_t OPENSSL_ia32cap_P[4]; >+ >+ #if defined(OPENSSL_ARM) || defined(OPENSSL_AARCH64) >+ >+-#if defined(OPENSSL_APPLE) >++#if defined(OPENSSL_APPLE) || defined(__FreeBSD__) >+ /* iOS builds use the static ARM configuration. */ >+ #define OPENSSL_STATIC_ARMCAP >+ #endif > >Property changes on: www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_boringssl_src_include_openssl_cpu.h >___________________________________________________________________ >Added: fbsd:nokeywords >## -0,0 +1 ## >+yes >\ No newline at end of property >Added: svn:eol-style >## -0,0 +1 ## >+native >\ No newline at end of property >Added: svn:mime-type >## -0,0 +1 ## >+text/plain >\ No newline at end of property >Index: www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_arm_cpu-arm.cc >=================================================================== >--- www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_arm_cpu-arm.cc (nonexistent) >+++ www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_arm_cpu-arm.cc (working copy) >@@ -0,0 +1,23 @@ >+--- src/3rdparty/chromium/v8/src/arm/cpu-arm.cc.orig 2017-09-25 11:16:57 UTC >++++ src/3rdparty/chromium/v8/src/arm/cpu-arm.cc >+@@ -17,6 +17,11 @@ >+ #include "src/assembler.h" >+ #include "src/macro-assembler.h" >+ >++#if V8_OS_FREEBSD >++#include <sys/types.h> >++#include <machine/sysarch.h> >++#endif >++ >+ namespace v8 { >+ namespace internal { >+ >+@@ -24,6 +29,8 @@ void CpuFeatures::FlushICache(void* start, size_t size >+ #if !defined(USE_SIMULATOR) >+ #if V8_OS_QNX >+ msync(start, size, MS_SYNC | MS_INVALIDATE_ICACHE); >++#elif V8_OS_FREEBSD >++ __clear_cache(start, reinterpret_cast<char*>(start) + size); >+ #else >+ register uint32_t beg asm("r0") = reinterpret_cast<uint32_t>(start); >+ register uint32_t end asm("r1") = beg + size; > >Property changes on: www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_arm_cpu-arm.cc >___________________________________________________________________ >Added: fbsd:nokeywords >## -0,0 +1 ## >+yes >\ No newline at end of property >Added: svn:eol-style >## -0,0 +1 ## >+native >\ No newline at end of property >Added: svn:mime-type >## -0,0 +1 ## >+text/plain >\ No newline at end of property >Index: www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_base_cpu.cc >=================================================================== >--- www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_base_cpu.cc (nonexistent) >+++ www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_base_cpu.cc (working copy) >@@ -0,0 +1,19 @@ >+--- src/3rdparty/chromium/v8/src/base/cpu.cc.orig 2018-03-20 07:26:22 UTC >++++ src/3rdparty/chromium/v8/src/base/cpu.cc >+@@ -600,7 +600,7 @@ CPU::CPU() >+ #endif >+ >+ #elif V8_HOST_ARCH_ARM64 >+- >++#if V8_OS_LINUX >+ CPUInfo cpu_info; >+ >+ // Extract implementor from the "CPU implementer" field. >+@@ -634,6 +634,7 @@ CPU::CPU() >+ } >+ delete[] part; >+ } >++#endif // V8_OS_LINUX >+ >+ #elif V8_HOST_ARCH_PPC >+ > >Property changes on: www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_base_cpu.cc >___________________________________________________________________ >Added: fbsd:nokeywords >## -0,0 +1 ## >+yes >\ No newline at end of property >Added: svn:eol-style >## -0,0 +1 ## >+native >\ No newline at end of property >Added: svn:mime-type >## -0,0 +1 ## >+text/plain >\ No newline at end of property >Index: www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-freebsd.cc >=================================================================== >--- www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-freebsd.cc (nonexistent) >+++ www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-freebsd.cc (working copy) >@@ -0,0 +1,25 @@ >+--- src/3rdparty/chromium/v8/src/base/platform/platform-freebsd.cc.orig 2017-09-25 11:52:56 UTC >++++ src/3rdparty/chromium/v8/src/base/platform/platform-freebsd.cc >+@@ -36,6 +36,22 @@ namespace v8 { >+ namespace base { >+ >+ >++#ifdef __arm__ >++bool OS::ArmUsingHardFloat() { >++#if defined(__ARM_PCS_VFP) >++ return true; >++#elif defined(__ARM_PCS) || defined(__SOFTFP__) || defined(__SOFTFP) || \ >++ !defined(__VFP_FP__) >++ return false; >++#else >++#error "Your compiler does not report the FP ABI compiled for." \ >++ "Please report it on this issue" \ >++ "http://code.google.com/p/v8/issues/detail?id=2140" >++#endif >++} >++#endif >++ >++ >+ const char* OS::LocalTimezone(double time, TimezoneCache* cache) { >+ if (std::isnan(time)) return ""; >+ time_t tv = static_cast<time_t>(std::floor(time/msPerSecond)); > >Property changes on: www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_base_platform_platform-freebsd.cc >___________________________________________________________________ >Added: fbsd:nokeywords >## -0,0 +1 ## >+yes >\ No newline at end of property >Added: svn:eol-style >## -0,0 +1 ## >+native >\ No newline at end of property >Added: svn:mime-type >## -0,0 +1 ## >+text/plain >\ No newline at end of property >Index: www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_libsampler_sampler.cc >=================================================================== >--- www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_libsampler_sampler.cc (nonexistent) >+++ www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_libsampler_sampler.cc (working copy) >@@ -0,0 +1,15 @@ >+--- src/3rdparty/chromium/v8/src/libsampler/sampler.cc.orig 2018-03-20 07:19:58 UTC >++++ src/3rdparty/chromium/v8/src/libsampler/sampler.cc >+@@ -499,9 +499,9 @@ void SignalHandler::FillRegisterState(void* context, R >+ state->sp = reinterpret_cast<void*>(mcontext.mc_rsp); >+ state->fp = reinterpret_cast<void*>(mcontext.mc_rbp); >+ #elif V8_HOST_ARCH_ARM >+- state->pc = reinterpret_cast<void*>(mcontext.mc_r15); >+- state->sp = reinterpret_cast<void*>(mcontext.mc_r13); >+- state->fp = reinterpret_cast<void*>(mcontext.mc_r11); >++ state->pc = reinterpret_cast<void*>(mcontext.__gregs[_REG_PC]); >++ state->sp = reinterpret_cast<void*>(mcontext.__gregs[_REG_SP]); >++ state->fp = reinterpret_cast<void*>(mcontext.__gregs[_REG_FP]); >+ #endif // V8_HOST_ARCH_* >+ #elif V8_OS_NETBSD >+ #if V8_HOST_ARCH_IA32 > >Property changes on: www/qt5-webengine/files/patch-src_3rdparty_chromium_v8_src_libsampler_sampler.cc >___________________________________________________________________ >Added: fbsd:nokeywords >## -0,0 +1 ## >+yes >\ No newline at end of property >Added: svn:eol-style >## -0,0 +1 ## >+native >\ No newline at end of property >Added: svn:mime-type >## -0,0 +1 ## >+text/plain >\ No newline at end of property
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 228603
: 193836