From 40aaaa64e86ba6710bbeb31c4615a6ce80e75e11 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 28 Apr 2021 20:21:43 +0100 Subject: gentoo resync : 28.04.2021 --- dev-qt/Manifest.gz | Bin 10361 -> 10365 bytes dev-qt/qtwebengine/Manifest | 5 + .../files/qtwebengine-5.15.2_p20210406-gcc11.patch | 126 ++++++++++++++ .../qtwebengine-5.15.2_p20210406-glibc-2.33.patch | 141 +++++++++++++++ .../files/qtwebengine-5.15.2_p20210406-icu69.patch | 92 ++++++++++ .../qtwebengine-5.15.2_p20210406.ebuild | 190 +++++++++++++++++++++ dev-qt/qtwebkit/Manifest | 4 +- .../qtwebkit-5.212.0_pre20200309-glib-2.68.patch | 28 +++ .../qtwebkit-5.212.0_pre20200309-python-3.9.patch | 27 +++ .../qtwebkit-5.212.0_pre20200309-r1.ebuild | 6 +- 10 files changed, 616 insertions(+), 3 deletions(-) create mode 100644 dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-gcc11.patch create mode 100644 dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-glibc-2.33.patch create mode 100644 dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-icu69.patch create mode 100644 dev-qt/qtwebengine/qtwebengine-5.15.2_p20210406.ebuild create mode 100644 dev-qt/qtwebkit/files/qtwebkit-5.212.0_pre20200309-glib-2.68.patch create mode 100644 dev-qt/qtwebkit/files/qtwebkit-5.212.0_pre20200309-python-3.9.patch (limited to 'dev-qt') diff --git a/dev-qt/Manifest.gz b/dev-qt/Manifest.gz index aaecb4de9799..bae2dc2b5e3d 100644 Binary files a/dev-qt/Manifest.gz and b/dev-qt/Manifest.gz differ diff --git a/dev-qt/qtwebengine/Manifest b/dev-qt/qtwebengine/Manifest index 14421f643cd8..75b75b3305fb 100644 --- a/dev-qt/qtwebengine/Manifest +++ b/dev-qt/qtwebengine/Manifest @@ -3,7 +3,12 @@ AUX qtwebengine-5.15.2-enable-ppc64.patch 1249 BLAKE2B b8b9957bbf848ee8b19e4a7d4 AUX qtwebengine-5.15.2_p20210224-chromium-87-v8-icu68.patch 7361 BLAKE2B 0a5ab9077982df3afea7d156e0dbaf11384d7b9ab6ea70ef4dc0b82f1690e455144318734cb50b7bf2349a95b99325e67bbfcbdf5c88f55f3ecc65c7e593c468 SHA512 585dab11bf6cf811b657831292d5b6b90dd01d9e4c1fa4b6a446d0eb66f436c46a6fcd4851e9c6b6b0bda8a41cbea57fe74ca5ecca4e40cb35f85d7c2f5265e7 AUX qtwebengine-5.15.2_p20210224-disable-git.patch 501 BLAKE2B a295e5061830da6bfaf0c0ae6db832c86f797fa2426ec29e244133e862c0998a03373c11a2a31944bc09e0a20bf30c0a0a91eb06b1f8a9fdcdd9762f5ba7c542 SHA512 b795328058be945e7a323ea50f01cd5c11b130bc1204c8274fec920e04cce1643d8f9313e975f451dbb7dfecd6214f9ff9ea0aec87ad29237b6e9bb1b4114c5f AUX qtwebengine-5.15.2_p20210224-fix-crash-w-app-locales.patch 5278 BLAKE2B 3dce18cb5af9f0b0209e1a37c8ad149882feee324d5c061ab2523f8cc6d17f6adbbdac9a54210764fd3bc244b06d2061deb62edd5048b6f3ef927326c8018b8e SHA512 d0350befaa76ca83742fec69c0f6efd6b601a5775963b39f1d69602515bd2a4aeb4447239d0ee2658d281cf9e9098f8e52cf582ce51e95c7a300fbc418f46466 +AUX qtwebengine-5.15.2_p20210406-gcc11.patch 5995 BLAKE2B eb2a24020240c0fb87169c1a90769c085fe8fe676ddd4d7344aacc03c18f30921e2236399c3d3f34f5a86041a7bf623000823f56c552d9c6f5e0ee0e22451a44 SHA512 6290ffe2b229d1a6fcb9ce99617b7609a8a96080637464db635852d262b6b83c8dcbed1262315dcad6cbc891ddd7f66afec0e8cdb181accc1ee515da21ebb953 +AUX qtwebengine-5.15.2_p20210406-glibc-2.33.patch 5361 BLAKE2B 92ead1bfe2be883e7438813441091e23466d060f278bb150f1d8f24e65cd847202142ed6a70a2d2bc683d2af90966ce25555f0d62bde1f3125fdf8a5343ed56f SHA512 827866ea1363273a8efc20793205ec20762ab4bd951fb837510d1cdd0a5df499958a1fb89566e4028f7781b48e439ed41dcfb127882475fc5fde4f82dcf78891 +AUX qtwebengine-5.15.2_p20210406-icu69.patch 3299 BLAKE2B 0b1eaf1c86adc9f95195c1dde4d6a58e66394144f4d4052120748c7560f58b60dabf5b18b5957b8ab7a9777207266669408f4015448409d23a5fdada73e459aa SHA512 4ebfc3307a1ea3ef2297945369682620fdb6c6035590c23c33bc349d5485fbd52e0f046a33d4093a6ada3426cf893e2e7e5b8b9cb28bb9e77e07e605caf0e303 DIST qtwebengine-5.15.2-chromium87-ppc64le.tar.xz 28536 BLAKE2B 98f8e01e7026d9df1d30ae453d4394d3c4ad04c0620a2496235d45f5f1080c2280e040826cde7f72d9771bfc80d0c3df56c9dcbe4f763cec432ad56de37d64c5 SHA512 c90a76f44a9d720624016fd082ab3036f12e13b9789e869ebaf5e4774afca7d4187faf187f365f696d1a7eda05ca75516556ee9d291cdb3408d57cc4b23e2654 DIST qtwebengine-5.15.2_p20210224.tar.xz 320052028 BLAKE2B a1ebaae7cf114041576f4920de1e484bea70c715a470e83e7c47bd8ff95480fc4e408bba173990480732bd464a9eb07d304f4afdb90d943c0a8cbe1e8299df84 SHA512 939292511703f3a6d758d38f1c860ffacd003be65761b19f23e8817bf1121cb9e6351216f737126d8defb1c97ca877e1c6f352e7cfee8e9289274d0793348b51 +DIST qtwebengine-5.15.2_p20210406.tar.xz 320144324 BLAKE2B 45aafc32f4642fee5525f0504d61ed47c3085d5eff566271701805942ce5fcb2233655111592059775991da5b89dc1702031373f6ff171722ed163265d894daa SHA512 c4a0d5fec3247c04acc447c1c819d1e5dcb1d3c0cbb57a87a5cfa5c0c2b765e82c9f75a7297ba57303df5e1004d75dc554ffd70e24ecb8655126136672f38fdb EBUILD qtwebengine-5.15.2_p20210224.ebuild 6069 BLAKE2B a718532bfafc9190988ea17046d78856ab9c2e272adb053f271347171444447d5735786b70ec217b1dde33135e50cd38a2689174ed2c4d9ce2cc2e1134f7cd6d SHA512 9c38e5017a75fd4654cb6fa02f3a28fc04bfe58c09fd0dc605bae2cc684518cba542485caac5ed2d7ef106125b6843408b017062a95d7f33c121c3d5bd825667 +EBUILD qtwebengine-5.15.2_p20210406.ebuild 6189 BLAKE2B 8eb34399ff626fcff3a4b88a6cdf6455e0b9e9ee94320d656c4bc3fdbbe8d08b65b29438019a50dc79530ff9ab905107d5c000030eb835fb77977ab880388700 SHA512 a6c5897c3747c0d4398247016389932986d42327ed6cd85f0b4e062a91d5bf8c1f1d4d602fc66b0caf571d4f7e3285a4983a4891c3d16a22180419b99434090a MISC metadata.xml 1269 BLAKE2B f95392929bcecbce9334108e3446d631e2a91d1aceb0fa6347496d2d0eeaff8cff55e08b7c3bb39fb8b51667988a6cc2b8e500143f2ebe0d78e6985a6f7af3c1 SHA512 7949854cf55f26750ded6787ce295762af7fd16600f8b251b25e1c9dd4d643338ed4c3b2a8a3405a2c427ed8b5a9ad13a8566a640161768d4dbf6db7e54811a3 diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-gcc11.patch b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-gcc11.patch new file mode 100644 index 000000000000..7411567e74f0 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-gcc11.patch @@ -0,0 +1,126 @@ +diff --git a/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp b/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp +index 013f1dfb2..3ce63c192 100644 +--- a/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp ++++ b/src/3rdparty/chromium/third_party/angle/src/libANGLE/HandleAllocator.cpp +@@ -9,6 +9,7 @@ + + #include "libANGLE/HandleAllocator.h" + ++#include + #include + #include + +diff --git a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc +index fd651958f..1e8d0606c 100644 +--- a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc ++++ b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/containers/string_pool.cc +@@ -14,9 +14,9 @@ + * limitations under the License. + */ + ++#include + #include "src/trace_processor/containers/string_pool.h" + +-#include + + #include "perfetto/base/logging.h" + #include "perfetto/ext/base/utils.h" +diff --git a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc +index 00496b335..0dccfeb8a 100644 +--- a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc ++++ b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/db/column.cc +@@ -14,6 +14,7 @@ + * limitations under the License. + */ + ++#include + #include "src/trace_processor/db/column.h" + + #include "src/trace_processor/db/compare.h" +diff --git a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc +index 837bfeba9..cdd56817d 100644 +--- a/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc ++++ b/src/3rdparty/chromium/third_party/perfetto/src/trace_processor/types/variadic.cc +@@ -14,6 +14,7 @@ + * limitations under the License. + */ + ++#include + #include "src/trace_processor/types/variadic.h" + + namespace perfetto { +diff --git a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc +index be91def6b..73f202356 100644 +--- a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc ++++ b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_atk_hyperlink.cc +@@ -245,7 +245,7 @@ static void AXPlatformAtkHyperlinkInit(AXPlatformAtkHyperlink* self, gpointer) { + } + + GType ax_platform_atk_hyperlink_get_type() { +- static volatile gsize type_volatile = 0; ++ static gsize type_volatile = 0; + + AXPlatformNodeAuraLinux::EnsureGTypeInit(); + +diff --git a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc +index 04125c6fd..6c64e5d8e 100644 +--- a/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc ++++ b/src/3rdparty/chromium/ui/accessibility/platform/ax_platform_node_auralinux.cc +@@ -2274,7 +2274,7 @@ void ClassInit(gpointer class_pointer, gpointer /* class_data */) { + GType GetType() { + AXPlatformNodeAuraLinux::EnsureGTypeInit(); + +- static volatile gsize type_volatile = 0; ++ static gsize type_volatile = 0; + if (g_once_init_enter(&type_volatile)) { + static const GTypeInfo type_info = { + sizeof(AXPlatformNodeAuraLinuxClass), // class_size +diff --git a/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc b/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc +index c663a2074..38a342484 100644 +--- a/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc ++++ b/src/3rdparty/chromium/ui/gtk/gtk_key_bindings_handler.cc +@@ -141,7 +141,7 @@ void GtkKeyBindingsHandler::HandlerClassInit(HandlerClass* klass) { + } + + GType GtkKeyBindingsHandler::HandlerGetType() { +- static volatile gsize type_id_volatile = 0; ++ static gsize type_id_volatile = 0; + if (g_once_init_enter(&type_id_volatile)) { + GType type_id = g_type_register_static_simple( + GTK_TYPE_TEXT_VIEW, g_intern_static_string("GtkKeyBindingsHandler"), +--- a/src/3rdparty/chromium/components/bookmarks/browser/bookmark_expanded_state_tracker.cc ++++ b/src/3rdparty/chromium/components/bookmarks/browser/bookmark_expanded_state_tracker.cc +@@ -2,6 +2,7 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include + #include "components/bookmarks/browser/bookmark_expanded_state_tracker.h" + + #include +diff --git a/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc b/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc +index 657a3c96b..ad641a082 100644 +--- a/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc ++++ b/src/3rdparty/chromium/components/bookmarks/browser/base_bookmark_model_observer.cc +@@ -2,6 +2,8 @@ + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + ++#include ++ + #include "components/bookmarks/browser/base_bookmark_model_observer.h" + + namespace bookmarks { +diff --git a/src/3rdparty/chromium/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc b/src/3rdparty/chromium/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +index 19f9aab5b..27fec2168 100644 +--- a/src/3rdparty/chromium/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc ++++ b/src/3rdparty/chromium/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +@@ -37,6 +37,7 @@ + + #include + #include ++#include + #include "absl/base/internal/hide_ptr.h" + #include "absl/base/internal/raw_logging.h" + #include "absl/base/internal/spinlock.h" + diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-glibc-2.33.patch b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-glibc-2.33.patch new file mode 100644 index 000000000000..cb90428e8d49 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-glibc-2.33.patch @@ -0,0 +1,141 @@ +diff -up b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc +--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc ++++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc +@@ -257,6 +257,18 @@ ResultExpr EvaluateSyscallImpl(int fs_de + return RestrictKillTarget(current_pid, sysno); + } + ++#if defined(__NR_newfstatat) ++ if (sysno == __NR_newfstatat) { ++ return RewriteFstatatSIGSYS(); ++ } ++#endif ++ ++#if defined(__NR_fstatat64) ++ if (sysno == __NR_fstatat64) { ++ return RewriteFstatatSIGSYS(); ++ } ++#endif ++ + if (SyscallSets::IsFileSystem(sysno) || + SyscallSets::IsCurrentDirectory(sysno)) { + return Error(fs_denied_errno); +diff -up b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc +--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc ++++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc +@@ -6,6 +6,8 @@ + + #include "sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h" + ++#include ++#include + #include + #include + #include +@@ -355,6 +357,35 @@ intptr_t SIGSYSSchedHandler(const struct + return -ENOSYS; + } + ++intptr_t SIGSYSFstatatHandler(const struct arch_seccomp_data& args, ++ void* aux) { ++ switch (args.nr) { ++#if defined(__NR_newfstatat) ++ case __NR_newfstatat: ++#endif ++#if defined(__NR_fstatat64) ++ case __NR_fstatat64: ++#endif ++#if defined(__NR_newfstatat) || defined(__NR_fstatat64) ++ if (*reinterpret_cast(args.args[1]) == '\0' ++ && args.args[3] == static_cast(AT_EMPTY_PATH)) { ++ return sandbox::sys_fstat64(static_cast(args.args[0]), ++ reinterpret_cast(args.args[2])); ++ } else { ++ errno = EACCES; ++ return -1; ++ } ++ break; ++#endif ++ } ++ ++ CrashSIGSYS_Handler(args, aux); ++ ++ // Should never be reached. ++ RAW_CHECK(false); ++ return -ENOSYS; ++} ++ + bpf_dsl::ResultExpr CrashSIGSYS() { + return bpf_dsl::Trap(CrashSIGSYS_Handler, NULL); + } +@@ -387,6 +418,10 @@ bpf_dsl::ResultExpr RewriteSchedSIGSYS() + return bpf_dsl::Trap(SIGSYSSchedHandler, NULL); + } + ++bpf_dsl::ResultExpr RewriteFstatatSIGSYS() { ++ return bpf_dsl::Trap(SIGSYSFstatatHandler, NULL); ++} ++ + void AllocateCrashKeys() { + #if !defined(OS_NACL_NONSFI) + if (seccomp_crash_key) +diff -up b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h +--- a/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h ++++ b/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h +@@ -62,6 +62,10 @@ SANDBOX_EXPORT intptr_t SIGSYSPtraceFail + // sched_setparam(), sched_setscheduler() + SANDBOX_EXPORT intptr_t SIGSYSSchedHandler(const arch_seccomp_data& args, + void* aux); ++// If the fstatat syscall is actually a disguised fstat, calls the regular fstat ++// syscall, otherwise, crashes in the same way as CrashSIGSYS_Handler. ++SANDBOX_EXPORT intptr_t SIGSYSFstatatHandler(const struct arch_seccomp_data& args, ++ void* aux); + + // Variants of the above functions for use with bpf_dsl. + SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYS(); +@@ -72,6 +76,7 @@ SANDBOX_EXPORT bpf_dsl::ResultExpr Crash + SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSFutex(); + SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSPtrace(); + SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteSchedSIGSYS(); ++SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteFstatatSIGSYS(); + + // Allocates a crash key so that Seccomp information can be recorded. + void AllocateCrashKeys(); +diff -up b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc +--- a/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc ++++ b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.cc +@@ -261,4 +261,13 @@ int sys_sigaction(int signum, + + #endif // defined(MEMORY_SANITIZER) + ++SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf) ++{ ++#if defined(__NR_fstat64) ++ return syscall(__NR_fstat64, fd, buf); ++#else ++ return syscall(__NR_fstat, fd, buf); ++#endif ++} ++ + } // namespace sandbox +diff -up b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h +--- a/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h ++++ b/src/3rdparty/chromium/sandbox/linux/services/syscall_wrappers.h +@@ -17,6 +17,7 @@ struct sock_fprog; + struct rlimit64; + struct cap_hdr; + struct cap_data; ++struct stat64; + + namespace sandbox { + +@@ -84,6 +85,9 @@ SANDBOX_EXPORT int sys_sigaction(int sig + const struct sigaction* act, + struct sigaction* oldact); + ++// Recent glibc rewrites fstat to fstatat. ++SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf); ++ + } // namespace sandbox + + #endif // SANDBOX_LINUX_SERVICES_SYSCALL_WRAPPERS_H_ diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-icu69.patch b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-icu69.patch new file mode 100644 index 000000000000..457953671a47 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.15.2_p20210406-icu69.patch @@ -0,0 +1,92 @@ +From 035c305ce7761f51328b45f1bd83e26aef267c9d Mon Sep 17 00:00:00 2001 +From: Frank Tang +Date: Thu, 15 Oct 2020 22:44:27 -0700 +Subject: [PATCH] [Intl] call new ListFormatter::createInstance + +The one we currently using is now marked as internal and to be removed +for 68. Migrating to the style which already avaiable in ICU 67-1. + +Bug: v8:11031 +Change-Id: I668382a2e1b8602ddca02bf231c5008a6c92bf2d +Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2477751 +Reviewed-by: Jakob Kummerow +Commit-Queue: Frank Tang +Cr-Commit-Position: refs/heads/master@{#70638} +--- + +diff --git a/src/3rdparty/chromium/v8/src/objects/js-list-format.cc b/src/3rdparty/chromium/v8/src/objects/js-list-format.cc +index b17d38c..e48a387 100644 +--- a/src/3rdparty/chromium/v8/src/objects/js-list-format.cc ++++ b/src/3rdparty/chromium/v8/src/objects/js-list-format.cc +@@ -29,46 +29,27 @@ + namespace internal { + + namespace { +-const char* kStandard = "standard"; +-const char* kOr = "or"; +-const char* kUnit = "unit"; +-const char* kStandardShort = "standard-short"; +-const char* kOrShort = "or-short"; +-const char* kUnitShort = "unit-short"; +-const char* kStandardNarrow = "standard-narrow"; +-const char* kOrNarrow = "or-narrow"; +-const char* kUnitNarrow = "unit-narrow"; + +-const char* GetIcuStyleString(JSListFormat::Style style, +- JSListFormat::Type type) { ++UListFormatterWidth GetIcuWidth(JSListFormat::Style style) { ++ switch (style) { ++ case JSListFormat::Style::LONG: ++ return ULISTFMT_WIDTH_WIDE; ++ case JSListFormat::Style::SHORT: ++ return ULISTFMT_WIDTH_SHORT; ++ case JSListFormat::Style::NARROW: ++ return ULISTFMT_WIDTH_NARROW; ++ } ++ UNREACHABLE(); ++} ++ ++UListFormatterType GetIcuType(JSListFormat::Type type) { + switch (type) { + case JSListFormat::Type::CONJUNCTION: +- switch (style) { +- case JSListFormat::Style::LONG: +- return kStandard; +- case JSListFormat::Style::SHORT: +- return kStandardShort; +- case JSListFormat::Style::NARROW: +- return kStandardNarrow; +- } ++ return ULISTFMT_TYPE_AND; + case JSListFormat::Type::DISJUNCTION: +- switch (style) { +- case JSListFormat::Style::LONG: +- return kOr; +- case JSListFormat::Style::SHORT: +- return kOrShort; +- case JSListFormat::Style::NARROW: +- return kOrNarrow; +- } ++ return ULISTFMT_TYPE_OR; + case JSListFormat::Type::UNIT: +- switch (style) { +- case JSListFormat::Style::LONG: +- return kUnit; +- case JSListFormat::Style::SHORT: +- return kUnitShort; +- case JSListFormat::Style::NARROW: +- return kUnitNarrow; +- } ++ return ULISTFMT_TYPE_UNITS; + } + UNREACHABLE(); + } +@@ -143,7 +124,7 @@ + icu::Locale icu_locale = r.icu_locale; + UErrorCode status = U_ZERO_ERROR; + icu::ListFormatter* formatter = icu::ListFormatter::createInstance( +- icu_locale, GetIcuStyleString(style_enum, type_enum), status); ++ icu_locale, GetIcuType(type_enum), GetIcuWidth(style_enum), status); + if (U_FAILURE(status) || formatter == nullptr) { + delete formatter; + THROW_NEW_ERROR(isolate, NewRangeError(MessageTemplate::kIcuError), diff --git a/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210406.ebuild b/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210406.ebuild new file mode 100644 index 000000000000..8e61171efc8b --- /dev/null +++ b/dev-qt/qtwebengine/qtwebengine-5.15.2_p20210406.ebuild @@ -0,0 +1,190 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python2_7 ) +QTVER=$(ver_cut 1-3) +inherit multiprocessing python-any-r1 qt5-build + +DESCRIPTION="Library for rendering dynamic web content in Qt5 C++ and QML applications" + +if [[ ${QT5_BUILD_TYPE} == release ]]; then + KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + if [[ ${PV} == ${QTVER}_p* ]]; then + SRC_URI="https://dev.gentoo.org/~asturm/distfiles/${P}.tar.xz" + S="${WORKDIR}/${P}" + QT5_BUILD_DIR="${S}_build" + fi +fi + +# patchset based on https://github.com/chromium-ppc64le releases +SRC_URI+=" ppc64? ( https://dev.gentoo.org/~gyakovlev/distfiles/${PN}-5.15.2-chromium87-ppc64le.tar.xz )" + +IUSE="alsa bindist designer geolocation +jumbo-build kerberos pulseaudio +system-ffmpeg +system-icu widgets" +REQUIRED_USE="designer? ( widgets )" + +RDEPEND=" + app-arch/snappy:= + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + dev-libs/expat + dev-libs/libevent:= + dev-libs/libxml2[icu] + dev-libs/libxslt + dev-libs/re2:= + ~dev-qt/qtcore-${QTVER} + ~dev-qt/qtdeclarative-${QTVER} + ~dev-qt/qtgui-${QTVER} + ~dev-qt/qtnetwork-${QTVER} + ~dev-qt/qtprintsupport-${QTVER} + ~dev-qt/qtwebchannel-${QTVER}[qml] + media-libs/fontconfig + media-libs/freetype + media-libs/harfbuzz:= + media-libs/lcms:2 + media-libs/libjpeg-turbo:= + media-libs/libpng:0= + >=media-libs/libvpx-1.5:=[svc(+)] + media-libs/libwebp:= + media-libs/mesa[egl,X(+)] + media-libs/opus + sys-apps/dbus + sys-apps/pciutils + sys-libs/zlib[minizip] + virtual/libudev + x11-libs/libdrm + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXScrnSaver + x11-libs/libXtst + alsa? ( media-libs/alsa-lib ) + designer? ( ~dev-qt/designer-${QTVER} ) + geolocation? ( ~dev-qt/qtpositioning-${QTVER} ) + kerberos? ( virtual/krb5 ) + pulseaudio? ( media-sound/pulseaudio:= ) + system-ffmpeg? ( media-video/ffmpeg:0= ) + system-icu? ( >=dev-libs/icu-68.2:= ) + widgets? ( + ~dev-qt/qtdeclarative-${QTVER}[widgets] + ~dev-qt/qtwidgets-${QTVER} + ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + ${PYTHON_DEPS} + dev-util/gperf + dev-util/ninja + dev-util/re2c + net-libs/nodejs[ssl] + sys-devel/bison +" + +PATCHES=( + "${FILESDIR}/${PN}-5.15.0-disable-fatal-warnings.patch" # bug 695446 + "${FILESDIR}/${PN}-5.15.2_p20210224-chromium-87-v8-icu68.patch" # downstream, bug 757606 + "${FILESDIR}/${PN}-5.15.2_p20210224-disable-git.patch" # downstream snapshot fix + "${FILESDIR}/${P}-glibc-2.33.patch" # by Fedora, bug 769989 + "${FILESDIR}/${P}-gcc11.patch" # by Fedora, bug 768261 + "${FILESDIR}/${P}-icu69.patch" # bug 781236 +) + +src_prepare() { + if [[ ${PV} == ${QTVER}_p* ]]; then + # This is made from git, and for some reason will fail w/o .git directories. + mkdir -p .git src/3rdparty/chromium/.git || die + + # We need to make sure this integrates well into Qt 5.15.2 installation. + # Otherwise revdeps fail w/o heavy changes. This is the simplest way to do it. + sed -e "/^MODULE_VERSION/s/5.*/${QTVER}/" -i .qmake.conf || die + fi + + # QTBUG-88657 - jumbo-build could still make trouble + if ! use jumbo-build; then + sed -i -e 's|use_jumbo_build=true|use_jumbo_build=false|' \ + src/buildtools/config/common.pri || die + fi + + # bug 630834 - pass appropriate options to ninja when building GN + sed -e "s/\['ninja'/&, '-j$(makeopts_jobs)', '-l$(makeopts_loadavg "${MAKEOPTS}" 0)', '-v'/" \ + -i src/3rdparty/chromium/tools/gn/bootstrap/bootstrap.py || die + + # bug 620444 - ensure local headers are used + find "${S}" -type f -name "*.pr[fio]" | \ + xargs sed -i -e 's|INCLUDEPATH += |&$${QTWEBENGINE_ROOT}_build/include $${QTWEBENGINE_ROOT}/include |' || die + + if use system-icu; then + # Sanity check to ensure that bundled copy of ICU is not used. + # Whole src/3rdparty/chromium/third_party/icu directory cannot be deleted because + # src/3rdparty/chromium/third_party/icu/BUILD.gn is used by build system. + # If usage of headers of bundled copy of ICU occurs, then lists of shim headers in + # shim_headers("icui18n_shim") and shim_headers("icuuc_shim") in + # src/3rdparty/chromium/third_party/icu/BUILD.gn should be updated. + local file + while read file; do + echo "#error This file should not be used!" > "${file}" || die + done < <(find src/3rdparty/chromium/third_party/icu -type f "(" -name "*.c" -o -name "*.cpp" -o -name "*.h" ")" 2>/dev/null) + fi + + qt_use_disable_config alsa webengine-alsa src/buildtools/config/linux.pri + qt_use_disable_config pulseaudio webengine-pulseaudio src/buildtools/config/linux.pri + + qt_use_disable_mod designer webenginewidgets src/plugins/plugins.pro + + qt_use_disable_mod widgets widgets src/src.pro + + qt5-build_src_prepare + + # we need to generate ppc64 stuff because upstream does not ship it yet + if use ppc64; then + einfo "Patching for ppc64le and generating build files" + eapply "${FILESDIR}/qtwebengine-5.15.2-enable-ppc64.patch" + pushd src/3rdparty/chromium > /dev/null || die + eapply -p0 "${WORKDIR}/${PN}-ppc64le" + popd > /dev/null || die + pushd src/3rdparty/chromium/third_party/libvpx > /dev/null || die + mkdir -vp source/config/linux/ppc64 || die + mkdir -p source/libvpx/test || die + touch source/libvpx/test/test.mk || die + ./generate_gni.sh || die + popd >/dev/null || die + fi +} + +src_configure() { + export NINJA_PATH=/usr/bin/ninja + export NINJAFLAGS="${NINJAFLAGS:--j$(makeopts_jobs) -l$(makeopts_loadavg "${MAKEOPTS}" 0) -v}" + + local myqmakeargs=( + -- + -no-build-qtpdf + -printing-and-pdf + -system-opus + -system-webp + $(usex alsa '-alsa' '-no-alsa') + $(usex bindist '-no-proprietary-codecs' '-proprietary-codecs') + $(usex geolocation '-webengine-geolocation' '-no-webengine-geolocation') + $(usex kerberos '-webengine-kerberos' '-no-webengine-kerberos') + $(usex pulseaudio '-pulseaudio' '-no-pulseaudio') + $(usex system-ffmpeg '-system-ffmpeg' '-qt-ffmpeg') + $(usex system-icu '-webengine-icu' '-no-webengine-icu') + ) + qt5-build_src_configure +} + +src_install() { + qt5-build_src_install + + # bug 601472 + if [[ ! -f ${D}${QT5_LIBDIR}/libQt5WebEngine.so ]]; then + die "${CATEGORY}/${PF} failed to build anything. Please report to https://bugs.gentoo.org/" + fi +} diff --git a/dev-qt/qtwebkit/Manifest b/dev-qt/qtwebkit/Manifest index d17ea458f5e7..e3491ab1a862 100644 --- a/dev-qt/qtwebkit/Manifest +++ b/dev-qt/qtwebkit/Manifest @@ -1,5 +1,7 @@ AUX qtwebkit-5.212.0_pre20200309-bison-3.7.patch 1613 BLAKE2B 0d2d173b5575ed5e1c52a07c5ceb14210bfb0a91e50a064df1e293451d64708822eb54d65947413efb13711d4c0c8e01441869248a4461446bd2bc122f07746b SHA512 cf21eff51e1026f4e506724a512b9925d4619909f5924bf01055244817ec9594e9d3ce105b510cd28ecce4772d122d1393fb7273501e20e16749f43282a3200b +AUX qtwebkit-5.212.0_pre20200309-glib-2.68.patch 887 BLAKE2B 1a191fd47693d70bc6ddbafcc8031bdd511c3be63121c1014471a93ebf3f1326a922277c42520a878192e0db4bb679cc007f27451ffac1aecdd86032b9d383c2 SHA512 7948ab8d40e954bfcafaceb69ea51991f45a684d8875d542bdf39af46266f5c312581662ea591a8199aa5e3583a6e3612e175f73a75b66ffd094e304aa7d67a9 AUX qtwebkit-5.212.0_pre20200309-icu-68.patch 4981 BLAKE2B c031aa8ec816749fa35e3876d007a02d60a3a5ff0fc57a2774a13fc23559b39cc5bfeec6fedd96cb36d7eed5d1b388049d190673afbe5b0fd2f0343f8afd5344 SHA512 b1cf2a5c07e4876e74913687417ffd751e6dcb3fa783c545ba50064d31c9a4bb1515ce9c26b399f2b9b53b588791e4e6f571ad7cfe631087ecd3709bce675a9e +AUX qtwebkit-5.212.0_pre20200309-python-3.9.patch 1100 BLAKE2B 2b44f8614a81141fd372d97cec2661b712e3cc68a01d5ed83d89c778eacc218a95a3273b7f464bbcd5380806859a40598cc166a8473fb30e76ca7e6b002b460f SHA512 9bcb07cfa61684d154f9b80b231c32423a8b80820445372634ef620c11a9267e98ae0318e143e6358f0668b10f90a44b163f0eeeee5476a0b5fbd31af5c4bf9a DIST qtwebkit-5.212.0-alpha4.tar.xz 12528508 BLAKE2B 72d7444f270f47b62044cf683ed306803660bfbafe1450440ea29e43e3c0e6e841b6e860dfa8affc1b32b7c539448f04e22a7ae38cce055d37905dfb3240aab0 SHA512 33f11270bd030599beff9c1983a6c5ff2d61f407cc8a6825f7f405d46f9184c720fc7f60c7359f08f828db96a2170092875066a0d5c0a21ff09bc48a2603fbf6 -EBUILD qtwebkit-5.212.0_pre20200309-r1.ebuild 3979 BLAKE2B 118627c78f8bb95e1b80bd003617290d29c7bab09ddf8c3dd91ab7f41997ba900c7fac833a2b05b5eaf392b1831390fdf5760a8105edc983fa4df8e799b0a3d1 SHA512 7dea49d3dbc4725c603963deeaf4936defc5fd7505baf68711897fd21dcf9cc7da0a848b8e5f3386d7eded1060afd554374ebb8b59b3ddefb619399cd0e7e5ff +EBUILD qtwebkit-5.212.0_pre20200309-r1.ebuild 4080 BLAKE2B ea006e78af9e3bbe63f7581377aeb006977ab5a6e4b1d5ee1d0930d95f98c44b56c44861422b245ef3e83318a4f6e3088f28e4e0a383b53b23c5c5e18e4c264a SHA512 b1f3b4ca60b6f6cfdb81a6194c8669304b3a84c9f06a4a741103ed3ad72804a03516577d8d94e3aa888c4da67d29ffccf15c2c825702a3a8b4508be0d5b4803c MISC metadata.xml 1152 BLAKE2B 6291c4643d29dd68af56e6054c4db1ebb307fdf2097012182dc77a2754e51bca84c1f53ae7c9f6305ead35cc47334a9e0ca605871aac899ce06482d983c8406f SHA512 28146a11931ab5b106d7bfa08dd3cb38ed3ae1fec003ca27f3f3234887bc9d65a82c76e5ab50334e94de02c3b6455a228acec2574c551e218e53e2005becc6c6 diff --git a/dev-qt/qtwebkit/files/qtwebkit-5.212.0_pre20200309-glib-2.68.patch b/dev-qt/qtwebkit/files/qtwebkit-5.212.0_pre20200309-glib-2.68.patch new file mode 100644 index 000000000000..f377a311362c --- /dev/null +++ b/dev-qt/qtwebkit/files/qtwebkit-5.212.0_pre20200309-glib-2.68.patch @@ -0,0 +1,28 @@ +https://github.com/qtwebkit/qtwebkit/pull/1058 + +From 5b698ba3faffd4e198a45be9fe74f53307395e4b Mon Sep 17 00:00:00 2001 +From: Fabian Vogt +Date: Wed, 7 Apr 2021 13:38:09 +0200 +Subject: [PATCH] Remove invalid g_object declarations to fix build with glib + >= 2.68 + +g_object_ref_sink is defined as a macro meanwhile and so the build fails. +Just remove the declarations, glib.h is included anyway. +--- + Source/WTF/wtf/glib/GRefPtr.h | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/Source/WTF/wtf/glib/GRefPtr.h b/Source/WTF/wtf/glib/GRefPtr.h +index 06133d82cb35..d9a1d2f145f5 100644 +--- a/Source/WTF/wtf/glib/GRefPtr.h ++++ b/Source/WTF/wtf/glib/GRefPtr.h +@@ -29,9 +29,6 @@ + #include + #include + +-extern "C" void g_object_unref(gpointer); +-extern "C" gpointer g_object_ref_sink(gpointer); +- + namespace WTF { + + enum GRefPtrAdoptType { GRefPtrAdopt }; diff --git a/dev-qt/qtwebkit/files/qtwebkit-5.212.0_pre20200309-python-3.9.patch b/dev-qt/qtwebkit/files/qtwebkit-5.212.0_pre20200309-python-3.9.patch new file mode 100644 index 000000000000..a3b677b779b1 --- /dev/null +++ b/dev-qt/qtwebkit/files/qtwebkit-5.212.0_pre20200309-python-3.9.patch @@ -0,0 +1,27 @@ +From 78360c01c796b6260bf828bc9c8a0ef73c5132fd Mon Sep 17 00:00:00 2001 +From: Konstantin Tokarev +Date: Wed, 3 Jun 2020 15:01:42 +0300 +Subject: [PATCH] Fix compilation with Python 3.9: avoid passing encoding to + json.load() + +In Python 2.7 UTF-8 is assumed by default, while in Python 3 this argument +is not supported. + +Change-Id: Ic459d60a6b20bc1838d8771bc36ac41614fe61a9 +--- + Source/JavaScriptCore/generate-bytecode-files | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Source/JavaScriptCore/generate-bytecode-files b/Source/JavaScriptCore/generate-bytecode-files +index c5dab429c7b0..af3431275ecf 100644 +--- a/Source/JavaScriptCore/generate-bytecode-files ++++ b/Source/JavaScriptCore/generate-bytecode-files +@@ -163,7 +163,7 @@ if __name__ == "__main__": + initBytecodesFile = openOrExit(initASMFileName, "w") + + try: +- bytecodeSections = json.load(bytecodeFile, encoding = "utf-8") ++ bytecodeSections = json.load(bytecodeFile) + except: + print("Unexpected error parsing {0}: {1}".format(bytecodeJSONFile, sys.exc_info())) + diff --git a/dev-qt/qtwebkit/qtwebkit-5.212.0_pre20200309-r1.ebuild b/dev-qt/qtwebkit/qtwebkit-5.212.0_pre20200309-r1.ebuild index d6744c8a4054..f2e91b79caf5 100644 --- a/dev-qt/qtwebkit/qtwebkit-5.212.0_pre20200309-r1.ebuild +++ b/dev-qt/qtwebkit/qtwebkit-5.212.0_pre20200309-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -13,7 +13,7 @@ else KEYWORDS="amd64 arm arm64 ppc64 x86" S="${WORKDIR}/${MY_P}" fi -PYTHON_COMPAT=( python3_{7,8} ) +PYTHON_COMPAT=( python3_{7,8,9} ) USE_RUBY="ruby25 ruby26 ruby27" inherit check-reqs cmake flag-o-matic python-any-r1 qmake-utils ruby-single toolchain-funcs @@ -86,6 +86,8 @@ CHECKREQS_DISK_BUILD="16G" # bug 417307 PATCHES=( "${FILESDIR}/${P}-bison-3.7.patch" # bug 736499 "${FILESDIR}/${P}-icu-68.patch" # bug 753260 + "${FILESDIR}/${P}-python-3.9.patch" # bug 766303 + "${FILESDIR}/${P}-glib-2.68.patch" # bug 777759 ) _check_reqs() { -- cgit v1.2.3