Bump
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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 \
|
||||
@@ -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
|
||||
@@ -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.
|
||||
@@ -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
|
||||
@@ -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) {
|
||||
@@ -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)
|
||||
@@ -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",
|
||||
@@ -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;
|
||||
File diff suppressed because it is too large
Load Diff
@@ -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
|
||||
}
|
||||
|
||||
@@ -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>;
|
||||
@@ -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
|
||||
|
||||
@@ -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]
|
||||
@@ -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
|
||||
@@ -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
|
||||
25
dev-qt/qtwebengine/metadata.xml
Normal file
25
dev-qt/qtwebengine/metadata.xml
Normal 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>
|
||||
Reference in New Issue
Block a user