This commit is contained in:
Mario Fetka
2026-04-14 20:15:00 +02:00
parent b2512a9cad
commit 05f2bfed14
177 changed files with 7129 additions and 3 deletions

View File

@@ -4,10 +4,26 @@ AUX qtwebengine-5.15.13_p20240510-gcc15.patch 1308 BLAKE2B d206c6df9b88f706ade2f
AUX qtwebengine-5.15.14_p20240510-gcc15-cstdint.patch 5506 BLAKE2B 2e31854e3beef5f25300a9b12158e9eabb674d54c07b563a4a7ffafe5c06dabdd808a776d4155f23ee7f0a917970d614f9060428ba8613d6cf15228bfc9d6b4c SHA512 e536d79f8841816858b5bd92adba6a862bce7149cc66c010885b82c8c92502a81e3fdb0038b21eafbdf046432a3b2c4c95b0352a608c0a99d0868813d56f00aa
AUX qtwebengine-5.15.14_p20240510-gcc15-template-id-cdtor.patch 3299 BLAKE2B 2809e25858ac17f776bd20fdcbc4c8b658b7f2587390dfbce133939ddd11134a71b6f139f39b9bf46a5e99a7d8335d5242d3a2caad832e6252d817504b6e6e12 SHA512 cbef06092de6337b4559d44443947e9578d127f4d319027550de7c4289665e0d516e5229cc0f9a0855691ceb62cdd32fb5a5fb88ff6cfbe28e1985aae9828ed7
AUX qtwebengine-5.15.14_p20240510-icu-75.patch 5107 BLAKE2B fc61801f5bbf5583610afe5af8ed60a90f94a248c0aa16b94f6df96e239e9c1cfe1fc40da487d3a25fc600a798b33c5bf8384c6d6cfcd0ff9446c20aae5f8f84 SHA512 b812dc26e6135cd69df9ef3b9049509be9888e012394af3c496b03666e80c63f4c827916398d94f7499f73739ca70829108b60705d5b2329f3134dd695a029eb
AUX qtwebengine-5.15.14_p20240510-patchset/001-disable-fatal-warnings.patch 442 BLAKE2B d2f303f03f817c1e10d0c3c64deaefce773cb63852e8a37ba1c4611e26e850c5722e708425525a6fbfe170ce757a7fcb89e0324e3ea41f4ddeafd4bc15cc5c3b SHA512 79503e9278b50b5ac799852958850c54027c329f32242747514bbc7253192893c9ce5b9c6feeae7918f9e0f4047526adfb1c9ac9c0c5dcc625fe7b1507a93d23
AUX qtwebengine-5.15.14_p20240510-patchset/002-extra-gn.patch 458 BLAKE2B 0595f06d31fd83a04cc0ef9fb7567374c28c4d09c8774e6584d288aa18c2386efe699bd1d155fdee96f5960d3575baff6a6aa7a694d0c953401f80add9daf6c3 SHA512 81498f04c1ad4d73e888bba31fb1129e24990bcddb1d68111b004bba2e4fdab91698b3fe1d01bd94a0bf904e52f614cddc4ba6f70ffaf6a1d45e37a53e583629
AUX qtwebengine-5.15.14_p20240510-patchset/003-chromium-87-v8-icu68.patch 7361 BLAKE2B 0a5ab9077982df3afea7d156e0dbaf11384d7b9ab6ea70ef4dc0b82f1690e455144318734cb50b7bf2349a95b99325e67bbfcbdf5c88f55f3ecc65c7e593c468 SHA512 585dab11bf6cf811b657831292d5b6b90dd01d9e4c1fa4b6a446d0eb66f436c46a6fcd4851e9c6b6b0bda8a41cbea57fe74ca5ecca4e40cb35f85d7c2f5265e7
AUX qtwebengine-5.15.14_p20240510-patchset/004-disable-git.patch 501 BLAKE2B a295e5061830da6bfaf0c0ae6db832c86f797fa2426ec29e244133e862c0998a03373c11a2a31944bc09e0a20bf30c0a0a91eb06b1f8a9fdcdd9762f5ba7c542 SHA512 b795328058be945e7a323ea50f01cd5c11b130bc1204c8274fec920e04cce1643d8f9313e975f451dbb7dfecd6214f9ff9ea0aec87ad29237b6e9bb1b4114c5f
AUX qtwebengine-5.15.14_p20240510-patchset/005-pdfium-system-lcms2.patch 2182 BLAKE2B cc19cc0c1242f7193f62a550ceb6358e43fcbdf6f95ddee373a3a775448908d6d0a661c6406e6c7578013a32ae280198263a94804e76c87e99db064dc972db7c SHA512 8890ab95300c148e21315a201ac56d04aca1ccc402e464b6ec1b90a69127a4fa02398893007f98eb40ea78d0abe56d459c34eba3c5cdd1521d4ab567225bced1
AUX qtwebengine-5.15.14_p20240510-patchset/006-clang14.patch 1883 BLAKE2B 9f4afae3ea240841f8b009df0cc71f9f23361f5205a3ced968b6ddaaf36b16fb880baffe4f4eb0def9d45fa267a7a4e43dcccacc47ea474e0914f4159877ee56 SHA512 8de250760738386799523b3ad29dfae37120a69d4d469274e96d80ade8b26afad39f54651ec80b8a17ac5b2083193283b167a0ed0438b1d926e45ff69f067a14
AUX qtwebengine-5.15.14_p20240510-patchset/007-gcc12-includes.patch 1139 BLAKE2B ba451fcef0dd235f6044622913197581fe2d2f3de8b6342fd9dc0f6706c28a16d8d6b6ad5429f6f2ea3a211a3cd01b730a1b36fd1f34e61b4391d19e0db1ae91 SHA512 7104313aec55fc8eede53cc966833f8e2632d175e4206dd90da2fa42807795152a01010e2cce7bacd57f30cd3fdbbfef32624d5763210d08362beda77a5724cd
AUX qtwebengine-5.15.14_p20240510-patchset/008-jumbo-build.patch 10385 BLAKE2B 388a99f50bfa6dcd6cd27711f654e2696f0059082e17979ffaca43f92bd1097648677562de8599212c18caaf6e11c9a454b0d3721fad1b8af1e5bd27d485b7a9 SHA512 db0a0af59bf4282df89a26a4233352ea4997b70e174c1f14abaf307a738dbd5cb88b346ab3265a5fdc2fd262f6dcde4bb6c09b4e28fe6225a755aea54e6e65dd
AUX qtwebengine-5.15.14_p20240510-patchset/009-port-to-pipewire-0.3.patch 65037 BLAKE2B e26087f781de07cf0d87d41eb02894dd2ad54326e780890788d62a8dda32d81be7b1f844a0a49676b86e61c99e8d303515f9b747d6ea82ef5cf2bd8a84b1f449 SHA512 efa9835abe8820d8cf7a26c77ff6469c77d1e5f614e326bb69ccf26221502efa6517a16ab1ed4c1457858cfa37cd8e6c205ddfa611ebe44a145f2429787e02aa
AUX qtwebengine-5.15.14_p20240510-patchset/010-widevine.patch 4482 BLAKE2B 25cb06e27d51011df57b63053bc97f20bf0062167d0915b2d4da5b5b7164b5f35ef66b19da69acd3fac16bf9264e85e5d69987a6c38284033c77058b9146ea20 SHA512 f05969ce3355ca23cdaad822e052f4a12350598cd9a5bf5af72f9f10e1cf43bbbc86f2af3b5e27cd6a9198bd025a7afddb4db35444542d57c9963f3f47a6de97
AUX qtwebengine-5.15.14_p20240510-patchset/011-clang16.patch 594 BLAKE2B bedc481394382d3ba80f3788993653b94e7c08c2339defaf71252fc2406212bf2eebaaf6c4ff1a66cc5988f40cb837ce305ad416b500de075c301fef11597f04 SHA512 8a6adb43a09c5ca919da87176b617d29fb94cde4b3f30e156215ba41e93c48fb0afab2c52af5d928713d85cba6b3d7e0ba54ef7bd233071874a7d2afb8bd7cdb
AUX qtwebengine-5.15.14_p20240510-patchset/012-python3.12-dubious-imp.patch 807 BLAKE2B 7409c2c30f40e68c285b13e63543a6171f26cc4add3b5ee4a13c4e15880f6d0ce68b93705dfa80efb54a3e8dbdfc295e413d158832b185b15bec5d1766ae5ff8 SHA512 d2823242bbb764704ec8dc2e22ba7c5abc098ea18fba255e5aed2e77eb38a3b7b2baed20b2013486c48a934123a0cfa105498236a80ddbac0eb12dbb390795e7
AUX qtwebengine-5.15.14_p20240510-patchset/013-python3.12-fix-six.patch 1842 BLAKE2B ccc04adf5b497c5ab24b03247772818335edd66ceaf114d6e93b47559910dc1d1c076f0f9a0c3ef4fd29bd3d452c139b74aab4f41c6b4cbaf39a876ac4b132dc SHA512 4d6b5eda2ce9be44cc9c7bfdb3fd41ffa87ac260d37d30e7af6f4ff7d5ebbf10b17b6119729bbf51f6405494189f82602c657daa139338526b49db89fb8ec682
AUX qtwebengine-5.15.14_p20240510-patchset/patchseries 613 BLAKE2B b3063fa3624454255e52538df098d411a5ff812472adc919781d5548c91b630d10d61fc32389464062404a4821aa6c52133649becafb73efa032f57b72e52d3d SHA512 261125054f4591fe63f7af9b17660b26924a68d03cbd9e1b3dbdbd0287fa974033533bee7930bdc02aec2f9bd82899b4dd499ead7f4b7f97697cab3f83693aae
AUX qtwebengine-5.15.14_p20240510-re2.patch 915 BLAKE2B a29abbec923f78dd7baafdc36b42ed9e0467885ecc04349cbbcec6727628627e84e0172f01e24b34c231d437b75f992b7a173532695085773d899dc94085c66b SHA512 45af510bafc1c838fe273652813d4130ecdef30152f57506b5b6580131cdbcf510acc5ae7bb8d44ac90072c8be7d75b4e0c187240a6522e184db8a11a204f2fc
AUX qtwebengine-5.15.16_p20241115-py3.13-pipes.patch 848 BLAKE2B 7696eaf565511adcac5e74f7788633d1e83a88079548f1069c840da40e3ec5fef5fbfa0c019234a40dde14f6f43249792ad1bfc3d2ee8e5669d7fde7234a7ad2 SHA512 79588891105d8dce27e273d4113c31352c6b1035762ea6b1211be5f58299d9e2852b0b98bad34492d9af85e3ae1ca87407ffbf190159d64b0c6d7ba49e842bf8
AUX qtwebengine-5.15.17-py3.13-pipes.patch 848 BLAKE2B 7696eaf565511adcac5e74f7788633d1e83a88079548f1069c840da40e3ec5fef5fbfa0c019234a40dde14f6f43249792ad1bfc3d2ee8e5669d7fde7234a7ad2 SHA512 79588891105d8dce27e273d4113c31352c6b1035762ea6b1211be5f58299d9e2852b0b98bad34492d9af85e3ae1ca87407ffbf190159d64b0c6d7ba49e842bf8
AUX qtwebengine-5.15.17-spellcheck.patch 1970 BLAKE2B 19774d51af538e9a6bd11fb02ed0ddb73184a87596ca7e6a4102126b54398d581787ec2081602e3f7b9e8e456a5da816226384bc599379eb4ccc0c7a91a12d3b SHA512 e8166ed62b63eb49bdd1ebb91408a81bec7d9251e6a05fefbf857f690f660b8ec58a6459b8cad278e630124dd11b26f67f6f496118085da9ed219314d4c13c86
AUX qtwebengine-5.15.2_p20210521-clang-libc++.patch 358 BLAKE2B a03de632ac4e01cf56c52af3a3bd5ff5bcfd525c67bf2e5d960904a9f3b53e1fa18f0e0df380c0cf84f17914fb313a028e26efaefe6ab5057f0d9a9cf2f6f0fd SHA512 6dc3864064d6084e70d4696fda744701c293ee62e9c9088e3247988ffb8085f30c632e94ac19aef715cbd211b21dfcb98691d5809e21cffd9f04bbb8b04cf0da
DIST qtwebengine-5.15.14_p20240510-patchset.tar.xz 20780 BLAKE2B 516d4c628c4b027ab3a7159da006a57173be91de3eb4b7f308029953d4fd19fb3e790ca38e79d17fef75d8d9b392676650acb9285d5913f9ebecaa4136575c47 SHA512 492979d118d6bd9165ee194724e38b627d19c89dbe1daa6b2f55e4a8fc7676748a1eacb9623ee05e09140c2c4a2ac82ddafaef5c45630a117ce0ed14b240a474
DIST qtwebengine-everywhere-opensource-src-5.15.18.tar.xz 319649100 BLAKE2B 61bc11d0932e714400ca19f6ae8c8aa32bb1d4667020481c6b8fb1cc46021cd7bec3f6af476378ffbb1e26318a02a810e1bc339fbf645968a8ffd1d98760aa0c SHA512 731e9b01746efa0696bc89299fa4847157077bd21567a9d3358006d6bb7dddbadea5c085f9dfae12279e41619b4751d1d0009bfd0ee4f9ceab3bd1a567831ed2
EBUILD qtwebengine-5.15.18.ebuild 8200 BLAKE2B 976ef7d8ee0af723841d63c7099015259084ce6ca53507decf279df9e02c01a7234b147334ffb573923acfe3f6fa85c5621b1629bcfc2d055820dbdb9ac4ccfb SHA512 7e74b86a483071229b63a4fbb261570da9382f83b39ca102abdd7f3d77696732ca9494304f74c368688b5dc9bc183e22285dc80eb54f5ab2af2598b619f26135
MISC metadata.xml 993 BLAKE2B 03a08f6ed6f77a285209f4876e976678462be7b00ddfe6becec4a4294eb3a14598438ca3d4b617036f136fdd88d0a144b1d02f9a6d9f30a16ae329564929f715 SHA512 309e9ab4ee9426b547030f5df41c0053f3e7f399bad963f1c404180feefd3b73e3aeaffd6d1ecfc79c9a1941d046c5060ef2089a5e5deef40df887f9776d989e

View File

@@ -0,0 +1,12 @@
diff --git a/src/buildtools/config/common.pri b/src/buildtools/config/common.pri
index cf990c79..910a88ca 100644
--- a/src/buildtools/config/common.pri
+++ b/src/buildtools/config/common.pri
@@ -26,6 +26,7 @@ gn_args += \
skia_use_dawn=false \
toolkit_views=false \
treat_warnings_as_errors=false \
+ fatal_linker_warnings=false \
use_allocator_shim=false \
use_allocator=\"none\" \
use_custom_libcxx=false \

View File

@@ -0,0 +1,10 @@
--- a/src/core/gn_run.pro
+++ b/src/core/gn_run.pro
@@ -64,6 +64,7 @@
}
} else {
gn_args+= "qtwebengine_target=\"$$system_path($$OUT_PWD/$$getConfigDir()):QtWebEngineCore\""
+ gn_args += $$(EXTRA_GN)
gn_args = $$system_quote($$gn_args)
gn_build_root = $$system_quote($$system_path($$OUT_PWD/$$getConfigDir()))
gn_run = $$gn_binary gen $$gn_build_root $$gn_python --args=$$gn_args --root=$$gn_src_root

View File

@@ -0,0 +1,192 @@
From b0a7f5691113534c2cf771f2dd3cece5e93bc7d4 Mon Sep 17 00:00:00 2001
From: Frank Tang <ftang@chromium.org>
Date: Tue, 03 Nov 2020 23:20:37 -0800
Subject: [PATCH] Update to ICU68-1
ICU68-1 change the output skeleton format. So we need to change
resolvedOptions code for 68 migration.
Chromium roll
https://chromium-review.googlesource.com/c/chromium/src/+/2474093
Bug: v8:10945
Change-Id: I3b2c7fbe8abb22df8fa51287c498ca3245b8c55b
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2477431
Commit-Queue: Frank Tang <ftang@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#70972}
(ported to work with <ICU-68.1 and rebased chromium)
---
diff --git a/src/3rdparty/chromium/v8/src/objects/js-number-format.cc b/src/3rdparty/chromium/v8/src/objects/js-number-format.cc
index 45b0eab..d18b133 100644
--- a/src/3rdparty/chromium/v8/src/objects/js-number-format.cc
+++ b/src/3rdparty/chromium/v8/src/objects/js-number-format.cc
@@ -389,17 +389,20 @@ Handle<String> CurrencySignString(Isolate* isolate,
Handle<String> UnitDisplayString(Isolate* isolate,
const icu::UnicodeString& skeleton) {
// Ex: skeleton as
- // "measure-unit/length-meter .### rounding-mode-half-up unit-width-full-name"
+ // <ICU-68.1: "measure-unit/length-meter .### rounding-mode-half-up unit-width-full-name".
+ // >=ICU-68.1: "unit/length-meter .### rounding-mode-half-up unit-width-full-name"
if (skeleton.indexOf("unit-width-full-name") >= 0) {
return ReadOnlyRoots(isolate).long_string_handle();
}
// Ex: skeleton as
- // "measure-unit/length-meter .### rounding-mode-half-up unit-width-narrow".
+ // <ICU-68.1: "measure-unit/length-meter .### rounding-mode-half-up unit-width-narrow".
+ // >=ICU-68.1: "unit/length-meter .### rounding-mode-half-up unit-width-narrow".
if (skeleton.indexOf("unit-width-narrow") >= 0) {
return ReadOnlyRoots(isolate).narrow_string_handle();
}
// Ex: skeleton as
- // "measure-unit/length-foot .### rounding-mode-half-up"
+ // <ICU-68.1: "measure-unit/length-foot .### rounding-mode-half-up"
+ // >=ICU-68.1: "unit/length-foot .### rounding-mode-half-up"
return ReadOnlyRoots(isolate).short_string_handle();
}
@@ -422,7 +425,8 @@ Notation NotationFromSkeleton(const icu::UnicodeString& skeleton) {
return Notation::COMPACT;
}
// Ex: skeleton as
- // "measure-unit/length-foot .### rounding-mode-half-up"
+ // <ICU-68.1: "measure-unit/length-foot .### rounding-mode-half-up"
+ // >=ICU-68.1: "unit/length-foot .### rounding-mode-half-up"
return Notation::STANDARD;
}
@@ -562,14 +566,23 @@ namespace {
// Ex: percent .### rounding-mode-half-up
// Special case for "percent"
-// Ex: "measure-unit/length-kilometer per-measure-unit/duration-hour .###
-// rounding-mode-half-up" should return "kilometer-per-unit".
-// Ex: "measure-unit/duration-year .### rounding-mode-half-up" should return
-// "year".
+// <ICU-68.1:
+// Ex: "measure-unit/length-kilometer per-measure-unit/duration-hour .###
+// rounding-mode-half-up" should return "kilometer-per-unit".
+// Ex: "measure-unit/duration-year .### rounding-mode-half-up" should return
+// >=ICU-68.1:
+// Ex: "unit/milliliter-per-acre .### rounding-mode-half-up"
+// should return "milliliter-per-acre".
+// Ex: "unit/year .### rounding-mode-half-up" should return
+// "year".
std::string UnitFromSkeleton(const icu::UnicodeString& skeleton) {
std::string str;
str = skeleton.toUTF8String<std::string>(str);
+#if U_ICU_VERSION_MAJOR_NUM < 68
std::string search("measure-unit/");
+#else
+ std::string search("unit/");
+#endif
size_t begin = str.find(search);
if (begin == str.npos) {
// Special case for "percent".
@@ -578,20 +591,41 @@ std::string UnitFromSkeleton(const icu::UnicodeString& skeleton) {
}
return "";
}
+#if U_ICU_VERSION_MAJOR_NUM < 68
// Skip the type (ex: "length").
// "measure-unit/length-kilometer per-measure-unit/duration-hour"
// b
begin = str.find("-", begin + search.size());
+#else
+ // Ex:
+ // "unit/acre .### rounding-mode-half-up"
+ // b
+ // Ex:
+ // "unit/milliliter-per-acre .### rounding-mode-half-up"
+ // b
+ begin += search.size();
+#endif
if (begin == str.npos) {
return "";
}
+#if U_ICU_VERSION_MAJOR_NUM < 68
begin++; // Skip the '-'.
+#endif
// Find the end of the subtype.
size_t end = str.find(" ", begin);
- // "measure-unit/length-kilometer per-measure-unit/duration-hour"
- // b e
+ // <ICU-68.1:
+ // "measure-unit/length-kilometer per-measure-unit/duration-hour"
+ // b e
+ // >=ICU-68.1:
+ // Ex:
+ // "unit/acre .### rounding-mode-half-up"
+ // b e
+ // Ex:
+ // "unit/milliliter-per-acre .### rounding-mode-half-up"
+ // b e
if (end == str.npos) {
end = str.size();
+#if U_ICU_VERSION_MAJOR_NUM < 68
return str.substr(begin, end - begin);
}
// "measure-unit/length-kilometer per-measure-unit/duration-hour"
@@ -625,17 +659,36 @@ std::string UnitFromSkeleton(const icu::UnicodeString& skeleton) {
// "measure-unit/length-kilometer per-measure-unit/duration-hour"
// [result ] b e
return result + "-per-" + str.substr(begin, end - begin);
+#else
+ }
+ return str.substr(begin, end - begin);
+#endif
}
Style StyleFromSkeleton(const icu::UnicodeString& skeleton) {
if (skeleton.indexOf("currency/") >= 0) {
return Style::CURRENCY;
}
+#if U_ICU_VERSION_MAJOR_NUM < 68
if (skeleton.indexOf("measure-unit/") >= 0) {
if (skeleton.indexOf("scale/100") >= 0 &&
skeleton.indexOf("measure-unit/concentr-percent") >= 0) {
+#else
+ if (skeleton.indexOf("percent") >= 0) {
+ // percent precision-integer rounding-mode-half-up scale/100
+ if (skeleton.indexOf("scale/100") >= 0) {
+#endif
return Style::PERCENT;
+#if U_ICU_VERSION_MAJOR_NUM >= 68
+ } else {
+ return Style::UNIT;
+#endif
}
+#if U_ICU_VERSION_MAJOR_NUM >= 68
+ }
+ // Before ICU68: "measure-unit/", since ICU68 "unit/"
+ if (skeleton.indexOf("unit/") >= 0) {
+#endif
return Style::UNIT;
}
return Style::DECIMAL;
diff --git a/src/3rdparty/chromium/v8/src/objects/js-relative-time-format.cc b/src/3rdparty/chromium/v8/src/objects/js-relative-time-format.cc
index 267343aaae..64d56a1c12 100644
--- a/src/3rdparty/chromium/v8/src/objects/js-relative-time-format.cc
+++ b/src/3rdparty/chromium/v8/src/objects/js-relative-time-format.cc
@@ -195,9 +195,18 @@ MaybeHandle<JSRelativeTimeFormat> JSRelativeTimeFormat::New(
}
}
+#if U_ICU_VERSION_MAJOR_NUM < 68
icu::DecimalFormat* decimal_format =
static_cast<icu::DecimalFormat*>(number_format);
decimal_format->setMinimumGroupingDigits(-2);
+#else
+ if (number_format->getDynamicClassID() ==
+ icu::DecimalFormat::getStaticClassID()) {
+ icu::DecimalFormat* decimal_format =
+ static_cast<icu::DecimalFormat*>(number_format);
+ decimal_format->setMinimumGroupingDigits(-2);
+ }
+#endif
// Change UDISPCTX_CAPITALIZATION_NONE to other values if
// ECMA402 later include option to change capitalization.

View File

@@ -0,0 +1,15 @@
generate_gni.sh: update_readme() runs git at the end of process, prevent it.
Thanks-to: Georgy Yakovlev <gyakovlev@gentoo.org>
--- a/src/3rdparty/chromium/third_party/libvpx/generate_gni.sh 2021-02-07 12:51:49.438514897 +0100
+++ b/src/3rdparty/chromium/third_party/libvpx/generate_gni.sh 2021-02-21 16:23:38.375724515 +0100
@@ -519,8 +519,3 @@
gn format --in-place $BASE_DIR/BUILD.gn
gn format --in-place $BASE_DIR/libvpx_srcs.gni
-
-cd $BASE_DIR/$LIBVPX_SRC_DIR
-update_readme
-
-cd $BASE_DIR

View File

@@ -0,0 +1,79 @@
Description: Use system lcms2
Author: Sandro Knauß <hefee@debian.org>
Origin: Debian
Forwarded: https://bugreports.qt.io/browse/QTBUG-61746
Reviewed-by: Sandro Knauß <hefee@debian.org>
Last-Update: 2021-03-08
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/src/3rdparty/chromium/third_party/pdfium/third_party/BUILD.gn
+++ b/src/3rdparty/chromium/third_party/pdfium/third_party/BUILD.gn
@@ -239,58 +239,19 @@ if (!pdf_use_skia && !pdf_use_skia_paths
}
}
-config("fx_lcms2_warnings") {
- visibility = [ ":*" ]
- if (is_clang) {
- cflags = [
- # cmslut.cc is sloppy with aggregate initialization. Version 2.7 of this
- # library doesn't appear to have this problem.
- "-Wno-missing-braces",
- ]
- }
+import("//build/shim_headers.gni")
+
+shim_headers("lcms2_shim") {
+ root_path = "lcms/include"
+ headers = [
+ "lcms2.h",
+ "lcms2_plugin.h",
+ ]
}
source_set("fx_lcms2") {
- configs -= [ "//build/config/compiler:chromium_code" ]
- configs += [
- "//build/config/compiler:no_chromium_code",
- "//build/config/sanitizers:cfi_icall_generalize_pointers",
- ":pdfium_third_party_config",
-
- # Must be after no_chromium_code for warning flags to be ordered correctly.
- ":fx_lcms2_warnings",
- ]
- sources = [
- "lcms/include/lcms2.h",
- "lcms/include/lcms2_plugin.h",
- "lcms/src/cmsalpha.c",
- "lcms/src/cmscam02.c",
- "lcms/src/cmscgats.c",
- "lcms/src/cmscnvrt.c",
- "lcms/src/cmserr.c",
- "lcms/src/cmsgamma.c",
- "lcms/src/cmsgmt.c",
- "lcms/src/cmshalf.c",
- "lcms/src/cmsintrp.c",
- "lcms/src/cmsio0.c",
- "lcms/src/cmsio1.c",
- "lcms/src/cmslut.c",
- "lcms/src/cmsmd5.c",
- "lcms/src/cmsmtrx.c",
- "lcms/src/cmsnamed.c",
- "lcms/src/cmsopt.c",
- "lcms/src/cmspack.c",
- "lcms/src/cmspcs.c",
- "lcms/src/cmsplugin.c",
- "lcms/src/cmsps2.c",
- "lcms/src/cmssamp.c",
- "lcms/src/cmssm.c",
- "lcms/src/cmstypes.c",
- "lcms/src/cmsvirt.c",
- "lcms/src/cmswtpnt.c",
- "lcms/src/cmsxform.c",
- ]
- deps = [ "../core/fxcrt" ]
+ deps = [ ":lcms2_shim" ]
+ libs = ["lcms2"]
}
if (!build_with_chromium) {

View File

@@ -0,0 +1,42 @@
From 0825e7bc64e47d87e1f1026cc80c933550f114f5 Mon Sep 17 00:00:00 2001
From: Dimitry Andric <dim@FreeBSD.org>
Date: Mon, 14 Feb 2022 13:55:25 +0100
Subject: www/qt5-webengine: fix build with clang 14
Fixes compile error:
In file included from gen/third_party/blink/renderer/platform/platform_jumbo_63.cc:8:
src/3rdparty/chromium/third_party/blink/renderer/platform/text/text_break_iterator_icu.cc:122:15: error: anonymous non-C-compatible type given name for linkage purposes by typedef declaration after its linkage was computed; add a tag name here to establish linkage prior to definition
typedef struct {
^
UTextWithBuffer
src/3rdparty/chromium/third_party/blink/renderer/platform/text/text_break_iterator_icu.cc:123:3: note: type is not C-compatible due to this member declaration
DISALLOW_NEW();
^~~~~~~~~~~~~~
src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/allocator/allocator.h:40:2: note: expanded from macro 'DISALLOW_NEW'
public: \
^~~~~~~
src/3rdparty/chromium/third_party/blink/renderer/platform/text/text_break_iterator_icu.cc:126:3: note: type is given name 'UTextWithBuffer' for linkage purposes by this typedef declaration
} UTextWithBuffer;
^
PR: 261949
Approved by: adridg (maintainer)
MFH: 2022Q1
--- a/src/3rdparty/chromium/third_party/blink/renderer/platform/text/text_break_iterator_icu.cc
+++ b/src/3rdparty/chromium/third_party/blink/renderer/platform/text/text_break_iterator_icu.cc
@@ -119,11 +119,11 @@ enum TextContext { kNoContext, kPriorContext, kPrimary
const int kTextBufferCapacity = 16;
-typedef struct {
+struct UTextWithBuffer {
DISALLOW_NEW();
UText text;
UChar buffer[kTextBufferCapacity];
-} UTextWithBuffer;
+};
static inline int64_t TextPinIndex(int64_t& index, int64_t limit) {
if (index < 0)

View File

@@ -0,0 +1,32 @@
https://build.opensuse.org/package/view_file/KDE:Qt:5.15/libqt5-qtwebengine/0001-skia-Some-includes-to-fix-build-with-GCC-12.patch?expand=1
https://bugs.gentoo.org/840326
From 68799a1e0815b20ca59ce354a55280399257a201 Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fvogt@suse.de>
Date: Fri, 25 Mar 2022 15:29:28 +0100
Subject: [PATCH] skia: Some includes to fix build with GCC 12
Those includes got introduced upstream for other reasons and fixed building
with GCC 12 as a side effect.
--- a/src/3rdparty/chromium/third_party/skia/include/core/SkColor.h
+++ b/src/3rdparty/chromium/third_party/skia/include/core/SkColor.h
@@ -12,6 +12,8 @@
#include "include/core/SkScalar.h"
#include "include/core/SkTypes.h"
+#include <array>
+
/** \file SkColor.h
Types, consts, functions, and macros for colors.
--- a/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp
+++ b/src/3rdparty/chromium/third_party/skia/src/utils/SkParseColor.cpp
@@ -8,6 +8,8 @@
#include "include/utils/SkParse.h"
+#include <algorithm> // std::lower_bound
+
static constexpr const char* gColorNames[] = {
"aliceblue",
"antiquewhite",

View File

@@ -0,0 +1,213 @@
https://bugs.gentoo.org/813957
--- a/src/3rdparty/chromium/base/task/thread_pool.cc
+++ b/src/3rdparty/chromium/base/task/thread_pool.cc
@@ -15,10 +15,10 @@
namespace {
-class PostTaskAndReplyWithTraitsTaskRunner
+class PostTaskAndReplyWithTraitsTaskRunnerTP
: public internal::PostTaskAndReplyImpl {
public:
- explicit PostTaskAndReplyWithTraitsTaskRunner(const TaskTraits& traits)
+ explicit PostTaskAndReplyWithTraitsTaskRunnerTP(const TaskTraits& traits)
: traits_(traits) {}
private:
@@ -85,7 +85,7 @@
const TaskTraits& traits,
OnceClosure task,
OnceClosure reply) {
- return PostTaskAndReplyWithTraitsTaskRunner(traits).PostTaskAndReply(
+ return PostTaskAndReplyWithTraitsTaskRunnerTP(traits).PostTaskAndReply(
from_here, std::move(task), std::move(reply));
}
--- a/src/3rdparty/chromium/third_party/blink/renderer/core/animation/document_animations.cc
+++ b/src/3rdparty/chromium/third_party/blink/renderer/core/animation/document_animations.cc
@@ -57,8 +57,8 @@
document.GetWorkletAnimationController().UpdateAnimationTimings(reason);
}
-bool CompareAnimations(const Member<Animation>& left,
- const Member<Animation>& right) {
+bool CompareAnimationsDocument(const Member<Animation>& left,
+ const Member<Animation>& right) {
return Animation::HasLowerCompositeOrdering(
left.Get(), right.Get(),
Animation::CompareAnimationsOrdering::kTreeOrder);
@@ -157,7 +157,7 @@
else
GetAnimationsTargetingTreeScope(animations, tree_scope);
- std::sort(animations.begin(), animations.end(), CompareAnimations);
+ std::sort(animations.begin(), animations.end(), CompareAnimationsDocument);
return animations;
}
@@ -203,7 +203,7 @@
// By processing in decreasing order by priority, we can perform a single
// pass for discovery of replaced properties.
- std::sort(animations->begin(), animations->end(), CompareAnimations);
+ std::sort(animations->begin(), animations->end(), CompareAnimationsDocument);
PropertyHandleSet replaced_properties;
for (auto anim_it = animations->rbegin(); anim_it != animations->rend();
anim_it++) {
--- a/src/3rdparty/chromium/third_party/blink/renderer/core/html/forms/date_time_chooser_impl.cc
+++ b/src/3rdparty/chromium/third_party/blink/renderer/core/html/forms/date_time_chooser_impl.cc
@@ -129,11 +129,11 @@
data);
data->Append(ChooserResourceLoader::GetPickerCommonStyleSheet());
- if (!features::IsFormControlsRefreshEnabled())
+ if (!::features::IsFormControlsRefreshEnabled())
data->Append(ChooserResourceLoader::GetPickerButtonStyleSheet());
data->Append(ChooserResourceLoader::GetSuggestionPickerStyleSheet());
data->Append(ChooserResourceLoader::GetCalendarPickerStyleSheet());
- if (features::IsFormControlsRefreshEnabled()) {
+ if (::features::IsFormControlsRefreshEnabled()) {
data->Append(ChooserResourceLoader::GetCalendarPickerRefreshStyleSheet());
if (parameters_->type == input_type_names::kTime ||
parameters_->type == input_type_names::kDatetimeLocal) {
@@ -183,9 +183,9 @@
AddProperty("isLocaleRTL", locale_->IsRTL(), data);
AddProperty("isRTL", parameters_->is_anchor_element_rtl, data);
AddProperty("isFormControlsRefreshEnabled",
- features::IsFormControlsRefreshEnabled(), data);
+ ::features::IsFormControlsRefreshEnabled(), data);
#if defined(OS_MAC)
- AddProperty("isBorderTransparent", features::IsFormControlsRefreshEnabled(),
+ AddProperty("isBorderTransparent", ::features::IsFormControlsRefreshEnabled(),
data);
#endif
AddProperty("mode", parameters_->type.GetString(), data);
@@ -236,7 +236,7 @@
data->Append(ChooserResourceLoader::GetPickerCommonJS());
data->Append(ChooserResourceLoader::GetSuggestionPickerJS());
- if (features::IsFormControlsRefreshEnabled()) {
+ if (::features::IsFormControlsRefreshEnabled()) {
data->Append(ChooserResourceLoader::GetMonthPickerJS());
if (parameters_->type == input_type_names::kTime) {
data->Append(ChooserResourceLoader::GetTimePickerJS());
--- a/src/3rdparty/chromium/third_party/blink/renderer/core/html/forms/multiple_fields_temporal_input_type_view.cc
+++ b/src/3rdparty/chromium/third_party/blink/renderer/core/html/forms/multiple_fields_temporal_input_type_view.cc
@@ -296,7 +296,7 @@
if (input_type_->FormControlType() == input_type_names::kTime) {
if (date.ParseTime(value, 0, end) && end == value.length())
edit->SetOnlyTime(date);
- } else if (features::IsFormControlsRefreshEnabled() &&
+ } else if (::features::IsFormControlsRefreshEnabled() &&
input_type_->FormControlType() ==
input_type_names::kDatetimeLocal) {
if (date.ParseDateTimeLocal(value, 0, end) && end == value.length())
@@ -397,7 +397,7 @@
MakeGarbageCollected<DateTimeEditElement, Document&,
DateTimeEditElement::EditControlOwner&>(document,
*this));
- if (!features::IsFormControlsRefreshEnabled()) {
+ if (!::features::IsFormControlsRefreshEnabled()) {
GetElement().UpdateView();
container->AppendChild(
MakeGarbageCollected<ClearButtonElement, Document&,
@@ -498,7 +498,7 @@
if (picker_indicator_is_visible_ &&
((event.key() == "ArrowDown" && event.getModifierState("Alt")) ||
(event.key() == "F4") ||
- (features::IsFormControlsRefreshEnabled() && event.key() == " "))) {
+ (::features::IsFormControlsRefreshEnabled() && event.key() == " "))) {
if (PickerIndicatorElement* element = GetPickerIndicatorElement())
element->OpenPopup();
event.SetDefaultHandled();
--- a/src/3rdparty/chromium/third_party/blink/renderer/core/html/forms/picker_indicator_element.cc
+++ b/src/3rdparty/chromium/third_party/blink/renderer/core/html/forms/picker_indicator_element.cc
@@ -60,7 +60,7 @@
LayoutObject* PickerIndicatorElement::CreateLayoutObject(
const ComputedStyle& style,
LegacyLayout legacy) {
- if (features::IsFormControlsRefreshEnabled())
+ if (::features::IsFormControlsRefreshEnabled())
return HTMLDivElement::CreateLayoutObject(style, legacy);
UseCounter::Count(GetDocument(), WebFeature::kLegacyLayoutByDetailsMarker);
--- a/src/3rdparty/chromium/third_party/blink/renderer/core/html/forms/slider_thumb_element.cc
+++ b/src/3rdparty/chromium/third_party/blink/renderer/core/html/forms/slider_thumb_element.cc
@@ -63,7 +63,7 @@
if (GetLayoutObject()) {
GetLayoutObject()->SetNeedsLayoutAndFullPaintInvalidation(
layout_invalidation_reason::kSliderValueChanged);
- if (features::IsFormControlsRefreshEnabled()) {
+ if (::features::IsFormControlsRefreshEnabled()) {
HTMLInputElement* input(HostInput());
if (input && input->GetLayoutObject()) {
// the slider track selected value needs to be updated.
--- a/src/3rdparty/chromium/third_party/blink/renderer/core/layout/svg/svg_layout_tree_as_text.cc
+++ b/src/3rdparty/chromium/third_party/blink/renderer/core/layout/svg/svg_layout_tree_as_text.cc
@@ -252,9 +252,9 @@
ts << " [id=\"" << resource.Target()->GetIdAttribute() << "\"]";
}
-static base::Optional<Color> ResolveColor(const ComputedStyle& style,
- const SVGPaint& paint,
- const SVGPaint& visited_paint) {
+static base::Optional<Color> ResolveColorSVG(const ComputedStyle& style,
+ const SVGPaint& paint,
+ const SVGPaint& visited_paint) {
if (!paint.HasColor())
return base::nullopt;
Color color = style.ResolvedColor(paint.GetColor());
@@ -283,7 +283,7 @@
return true;
}
}
- if (base::Optional<Color> color = ResolveColor(style, paint, visited_paint)) {
+ if (base::Optional<Color> color = ResolveColorSVG(style, paint, visited_paint)) {
ts << " [" << paint_name << "={" << s;
ts << "[type=SOLID] [color=" << *color << "]";
return true;
--- a/src/3rdparty/chromium/third_party/blink/renderer/platform/webrtc/peer_connection_remote_audio_source.cc
+++ b/src/3rdparty/chromium/third_party/blink/renderer/platform/webrtc/peer_connection_remote_audio_source.cc
@@ -20,7 +20,7 @@
void* const kPeerConnectionRemoteTrackIdentifier =
const_cast<void**>(&kPeerConnectionRemoteTrackIdentifier);
-void SendLogMessage(const std::string& message) {
+void SendLogMessageRTC(const std::string& message) {
blink::WebRtcLogMessage("PCRAS::" + message);
}
@@ -82,12 +82,12 @@
track_interface_(std::move(track_interface)),
is_sink_of_peer_connection_(false) {
DCHECK(track_interface_);
- SendLogMessage(base::StringPrintf("PeerConnectionRemoteAudioSource([id=%s])",
+ SendLogMessageRTC(base::StringPrintf("PeerConnectionRemoteAudioSource([id=%s])",
track_interface_->id().c_str()));
}
PeerConnectionRemoteAudioSource::~PeerConnectionRemoteAudioSource() {
- SendLogMessage(base::StringPrintf("~PeerConnectionRemoteAudioSource([id=%s])",
+ SendLogMessageRTC(base::StringPrintf("~PeerConnectionRemoteAudioSource([id=%s])",
track_interface_->id().c_str()));
EnsureSourceIsStopped();
}
@@ -103,7 +103,7 @@
DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
if (is_sink_of_peer_connection_)
return true;
- SendLogMessage(base::StringPrintf("EnsureSourceIsStarted([id=%s])",
+ SendLogMessageRTC(base::StringPrintf("EnsureSourceIsStarted([id=%s])",
track_interface_->id().c_str()));
track_interface_->AddSink(this);
is_sink_of_peer_connection_ = true;
@@ -113,7 +113,7 @@
void PeerConnectionRemoteAudioSource::EnsureSourceIsStopped() {
DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
if (is_sink_of_peer_connection_) {
- SendLogMessage(base::StringPrintf("EnsureSourceIsStopped([id=%s])",
+ SendLogMessageRTC(base::StringPrintf("EnsureSourceIsStopped([id=%s])",
track_interface_->id().c_str()));
track_interface_->RemoveSink(this);
is_sink_of_peer_connection_ = false;

View File

@@ -0,0 +1,82 @@
From b99042fb839021a0a3d2fe0cac7ac3899c4acbba Mon Sep 17 00:00:00 2001
From: Allan Sandfeld Jensen <allan.jensen@qt.io>
Date: Tue, 14 Jun 2022 14:19:24 +0200
Subject: [PATCH] Find modern Chrome, Chromium and Firefox CDM modules
The default download location has moved again, but we can now
also use firefox CDMs.
Pick-to: 6.4 6.3
Task-number: QTBUG-104238
Change-Id: I7ee581fa63e50df970acb31ea6d3f67d332aef59
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
---
src/core/content_client_qt.cpp | 54 ++++++++++++++++++++++++++++++----
1 file changed, 49 insertions(+), 5 deletions(-)
diff --git a/src/core/content_client_qt.cpp b/src/core/content_client_qt.cpp
index 6c914b7729..7167332d9b 100644
--- a/src/core/content_client_qt.cpp
+++ b/src/core/content_client_qt.cpp
@@ -250,15 +251,56 @@ static bool IsWidevineAvailable(base::FilePath *cdm_path,
}
}
#elif defined(Q_OS_LINUX)
- pluginPaths << QStringLiteral("/opt/google/chrome/libwidevinecdm.so") // Old Google Chrome
+ QList<QDir> potentialWidevineVersionDirs;
+
+ // Google Chrome widevine modules
+ QDir chromeWidevineDir(QDir::homePath() + "/.config/google-chrome/WidevineCdm");
+ if (chromeWidevineDir.exists())
+ potentialWidevineVersionDirs << chromeWidevineDir;
+
+ // Firefox widevine modules
+ QDir firefoxPotentialProfilesDir(QDir::homePath() + "/.mozilla/firefox");
+ if (firefoxPotentialProfilesDir.exists()) {
+ QFileInfoList firefoxProfileDirs = firefoxPotentialProfilesDir.entryInfoList(QDir::Dirs | QDir::NoDotAndDotDot, QDir::Name | QDir::Reversed);
+ for (const QFileInfo &info : firefoxProfileDirs) {
+ QDir widevinePluginsDir(info.absoluteFilePath() + "/gmp-widevinecdm");
+ if (widevinePluginsDir.exists())
+ potentialWidevineVersionDirs << widevinePluginsDir;
+ }
+ }
+
+ // Chromium widevine modules (might not work with proprietary codecs)
+ QDir chromiumWidevineDir(QDir::homePath() + "/.config/chromium/WidevineCdm");
+ if (chromiumWidevineDir.exists())
+ potentialWidevineVersionDirs << chromiumWidevineDir;
+
+ // Search for widewine versions
+ for (const QDir &dir : potentialWidevineVersionDirs) {
+ QFileInfoList widevineVersionDirs = dir.entryInfoList(QDir::Dirs | QDir::NoDotAndDotDot, QDir::Name | QDir::Reversed);
+ // ### alternatively look up in the manifest.json and take the path from there.
#if Q_PROCESSOR_WORDSIZE == 8
- << QStringLiteral("/opt/google/chrome/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so")
+ const QString library = QLatin1String("/_platform_specific/linux_x64/libwidevinecdm.so");
#else
- << QStringLiteral("/opt/google/chrome/WidevineCdm/_platform_specific/linux_x86/libwidevinecdm.so")
+ const QString library = QLatin1String("/_platform_specific/linux_x86/libwidevinecdm.so");
#endif
- << QStringLiteral("/usr/lib/chromium/libwidevinecdm.so") // Arch
+ for (const QFileInfo &info : widevineVersionDirs) {
+ pluginPaths << info.absoluteFilePath() + "/libwidevinecdm.so";
+ pluginPaths << info.absoluteFilePath() + library;
+ }
+ }
+
+ // Fixed paths:
+ pluginPaths << QStringLiteral("/usr/lib/chromium/libwidevinecdm.so") // Arch
<< QStringLiteral("/usr/lib/chromium-browser/libwidevinecdm.so") // Ubuntu/neon
- << QStringLiteral("/usr/lib64/chromium/libwidevinecdm.so"); // OpenSUSE style
+ << QStringLiteral("/usr/lib64/chromium/libwidevinecdm.so") // OpenSUSE style
+#if Q_PROCESSOR_WORDSIZE == 8
+ << QStringLiteral("/usr/lib64/chromium-browser/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so") // Gentoo
+ << QStringLiteral("/opt/google/chrome/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so") // Old Google Chrome
+#else
+ << QStringLiteral("/usr/lib/chromium-browser/WidevineCdm/_platform_specific/linux_x86/libwidevinecdm.so") // Gentoo
+ << QStringLiteral("/opt/google/chrome/WidevineCdm/_platform_specific/linux_x86/libwidevinecdm.so") // Old Google Chrome
+#endif
+ << QStringLiteral("/opt/google/chrome/libwidevinecdm.so"); // Older Google Chrome
#endif
}

View File

@@ -0,0 +1,15 @@
https://bugs.gentoo.org/903573
--- a/src/3rdparty/chromium/v8/src/base/bit-field.h
+++ b/src/3rdparty/chromium/v8/src/base/bit-field.h
@@ -39,8 +39,11 @@
static constexpr int kLastUsedBit = kShift + kSize - 1;
static constexpr U kNumValues = U{1} << kSize;
+ #pragma clang diagnostic push
+ #pragma clang diagnostic ignored "-Wenum-constexpr-conversion"
// Value for the field with all bits set.
static constexpr T kMax = static_cast<T>(kNumValues - 1);
+ #pragma clang diagnostic pop
template <class T2, int size2>
using Next = BitField<T2, kShift + kSize, size2, U>;

View File

@@ -0,0 +1,26 @@
Description: stop using imp module which was removed in Python 3.12
Origin: upstream, commits
https://chromium.googlesource.com/chromium/src/+/9e0c89a3b5638ba2
https://chromium.googlesource.com/chromium/src/+/f5f6e361d037c316
Last-Update: 2024-03-17
--- a/src/3rdparty/chromium/mojo/public/tools/mojom/mojom/fileutil.py
+++ b/src/3rdparty/chromium/mojo/public/tools/mojom/mojom/fileutil.py
@@ -3,7 +3,6 @@
# found in the LICENSE file.
import errno
-import imp
import os.path
import sys
--- a/src/3rdparty/chromium/mojo/public/tools/mojom/mojom/parse/lexer.py
+++ b/src/3rdparty/chromium/mojo/public/tools/mojom/mojom/parse/lexer.py
@@ -2,7 +2,6 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
-import imp
import os.path
import sys

View File

@@ -0,0 +1,58 @@
Patch-Source: https://sources.debian.org/data/main/q/qtwebengine-opensource-src/5.15.16+dfsg-3/debian/patches/python3.12-six.patch
--
Description: implement find_spec() for _SixMetaPathImporter
Origin: upstream, https://github.com/benjaminp/six/commit/25916292d96f5f09
Last-Update: 2024-03-17
--- a/src/3rdparty/chromium/third_party/protobuf/third_party/six/six.py
+++ b/src/3rdparty/chromium/third_party/protobuf/third_party/six/six.py
@@ -71,6 +71,11 @@ else:
MAXSIZE = int((1 << 63) - 1)
del X
+if PY34:
+ from importlib.util import spec_from_loader
+else:
+ spec_from_loader = None
+
def _add_doc(func, doc):
"""Add documentation to a function."""
@@ -186,6 +191,11 @@ class _SixMetaPathImporter(object):
return self
return None
+ def find_spec(self, fullname, path, target=None):
+ if fullname in self.known_modules:
+ return spec_from_loader(fullname, self)
+ return None
+
def __get_module(self, fullname):
try:
return self.known_modules[fullname]
--- a/src/3rdparty/chromium/tools/grit/third_party/six/__init__.py
+++ b/src/3rdparty/chromium/tools/grit/third_party/six/__init__.py
@@ -71,6 +71,11 @@ else:
MAXSIZE = int((1 << 63) - 1)
del X
+if PY34:
+ from importlib.util import spec_from_loader
+else:
+ spec_from_loader = None
+
def _add_doc(func, doc):
"""Add documentation to a function."""
@@ -186,6 +191,11 @@ class _SixMetaPathImporter(object):
return self
return None
+ def find_spec(self, fullname, path, target=None):
+ if fullname in self.known_modules:
+ return spec_from_loader(fullname, self)
+ return None
+
def __get_module(self, fullname):
try:
return self.known_modules[fullname]

View File

@@ -0,0 +1,13 @@
001-disable-fatal-warnings.patch # downstream, bug 695446
002-extra-gn.patch # downstream, bug 774186
003-chromium-87-v8-icu68.patch # downstream, bug 757606
004-disable-git.patch # downstream snapshot fix
005-pdfium-system-lcms2.patch # by Debian, QTBUG-61746
006-clang14.patch # by FreeBSD, bug 836604
007-gcc12-includes.patch # by openSUSE, bug 840326
008-jumbo-build.patch # bug 813957
009-port-to-pipewire-0.3.patch # bug 698988, pipewire-3
010-widevine.patch # bug 888783
011-clang16.patch # bug 903573
012-python3.12-dubious-imp.patch # bug 925718, py3.12
013-python3.12-fix-six.patch # bug 925718, py3.12

View File

@@ -0,0 +1,38 @@
diff '--color=auto' -ur qtwebengine-5.15.17.orig/src/3rdparty/chromium/content/browser/browser_context.cc qtwebengine-5.15.17/src/3rdparty/chromium/content/browser/browser_context.cc
--- qtwebengine-5.15.17.orig/src/3rdparty/chromium/content/browser/browser_context.cc 2025-05-23 21:15:55.660122334 +0200
+++ qtwebengine-5.15.17/src/3rdparty/chromium/content/browser/browser_context.cc 2025-05-23 21:53:01.541956570 +0200
@@ -533,6 +533,11 @@
RemoveUserData(kStoragePartitionMapKeyName);
}
+#if defined(TOOLKIT_QT)
+void BrowserContext::FailedToLoadDictionary(const std::string&) {
+}
+#endif
+
std::string BrowserContext::GetMediaDeviceIDSalt() {
return unique_id_;
}
diff '--color=auto' -ur qtwebengine-5.15.17.orig/src/3rdparty/chromium/content/public/browser/browser_context.h qtwebengine-5.15.17/src/3rdparty/chromium/content/public/browser/browser_context.h
--- qtwebengine-5.15.17.orig/src/3rdparty/chromium/content/public/browser/browser_context.h 2025-05-23 21:15:55.837295999 +0200
+++ qtwebengine-5.15.17/src/3rdparty/chromium/content/public/browser/browser_context.h 2025-05-23 21:54:31.181538982 +0200
@@ -18,7 +18,6 @@
#include "base/memory/weak_ptr.h"
#include "base/optional.h"
#include "base/supports_user_data.h"
-#include "components/spellcheck/spellcheck_buildflags.h"
#include "content/common/content_export.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
@@ -346,9 +345,9 @@
// directly, so privacy is not compromised.
virtual media::VideoDecodePerfHistory* GetVideoDecodePerfHistory();
-#if defined(TOOLKIT_QT) && BUILDFLAG(ENABLE_SPELLCHECK)
+#if defined(TOOLKIT_QT)
// Inform about not working dictionary for given language
- virtual void FailedToLoadDictionary(const std::string& language) = 0;
+ virtual void FailedToLoadDictionary(const std::string& language);
#endif
// Returns a LearningSession associated with |this|. Used as the central

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>qt@gentoo.org</email>
<name>Gentoo Qt Project</name>
</maintainer>
<use>
<flag name="designer">Install the QWebEngineView plugin used to add widgets in <pkg>dev-qt/designer</pkg> forms that display web pages.</flag>
<flag name="jumbo-build">Combine source files to speed up build process.</flag>
<flag name="system-icu">Use the system-wide <pkg>dev-libs/icu</pkg> instead of bundled.</flag>
<flag name="widgets">Enable QtWidgets support</flag>
</use>
<upstream>
<bugs-to>https://bugreports.qt.io/</bugs-to>
<doc>https://doc.qt.io/</doc>
<remote-id type="github">qt/qtwebengine</remote-id>
<remote-id type="github">qt/qtwebengine-chromium</remote-id>
</upstream>
<slots>
<subslots>
Must only be used by packages that are known to use private parts of the Qt API.
</subslots>
</slots>
</pkgmetadata>