aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2024-05-30 14:06:21 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2024-05-30 14:55:57 +0200
commit64be399ea0f981090e24749a3aba7b5caf17ef9f (patch)
tree28fd22579aeedc9fe738c43f232a2cf9bbfee970
parentdev-qt/qtwebengine: Add python3.12, add missing BDEPEND for catapult (diff)
downloadqt-64be399ea0f981090e24749a3aba7b5caf17ef9f.tar.gz
qt-64be399ea0f981090e24749a3aba7b5caf17ef9f.tar.bz2
qt-64be399ea0f981090e24749a3aba7b5caf17ef9f.zip
dev-qt/qtwebengine: Fix build w/ ICU-75
Patch sourced from Arch Linux. Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
-rw-r--r--dev-qt/qtwebengine/files/qtwebengine-5.15.14_p20240510-icu-75.patch102
-rw-r--r--dev-qt/qtwebengine/qtwebengine-5.15.14.9999.ebuild3
2 files changed, 105 insertions, 0 deletions
diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.15.14_p20240510-icu-75.patch b/dev-qt/qtwebengine/files/qtwebengine-5.15.14_p20240510-icu-75.patch
new file mode 100644
index 00000000..d17e4ae6
--- /dev/null
+++ b/dev-qt/qtwebengine/files/qtwebengine-5.15.14_p20240510-icu-75.patch
@@ -0,0 +1,102 @@
+Thanks to Arch Linux:
+https://gitlab.archlinux.org/archlinux/packaging/packages/qt5-webengine/-/blob/main/qt5-webengine-icu-75.patch?ref_type=heads
+
+diff --git a/src/3rdparty/chromium/build/config/compiler/BUILD.gn b/src/3rdparty/chromium/build/config/compiler/BUILD.gn
+index b511a58c5a8..abd78a74ead 100644
+--- a/src/3rdparty/chromium/build/config/compiler/BUILD.gn
++++ b/src/3rdparty/chromium/build/config/compiler/BUILD.gn
+@@ -566,7 +566,7 @@ config("compiler") {
+ # Override Chromium's default for projects that wish to stay on C++11.
+ cflags_cc += [ "-std=${standard_prefix}++11" ]
+ } else {
+- cflags_cc += [ "-std=${standard_prefix}++14" ]
++ cflags_cc += [ "-std=${standard_prefix}++17" ]
+ }
+ } else if (!is_win && !is_nacl) {
+ if (target_os == "android") {
+diff --git a/src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_constants.h b/src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_constants.h
+index f03ba1e4ab4..b1495f7ae74 100644
+--- a/src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_constants.h
++++ b/src/3rdparty/chromium/base/allocator/partition_allocator/partition_alloc_constants.h
+@@ -195,7 +195,7 @@ NumPartitionPagesPerSuperPage() {
+ //
+ // __STDCPP_DEFAULT_NEW_ALIGNMENT__ is C++17. As such, it is not defined on all
+ // platforms, as Chrome's requirement is C++14 as of 2020.
+-#if defined(__STDCPP_DEFAULT_NEW_ALIGNMENT__)
++#if 0
+ static constexpr size_t kAlignment =
+ std::max(alignof(std::max_align_t), __STDCPP_DEFAULT_NEW_ALIGNMENT__);
+ #else
+diff --git a/src/3rdparty/chromium/third_party/webrtc/common_video/h264/sps_parser.h b/src/3rdparty/chromium/third_party/webrtc/common_video/h264/sps_parser.h
+index 76e627d27a3..942435f44a0 100644
+--- a/src/3rdparty/chromium/third_party/webrtc/common_video/h264/sps_parser.h
++++ b/src/3rdparty/chromium/third_party/webrtc/common_video/h264/sps_parser.h
+@@ -12,6 +12,7 @@
+ #define COMMON_VIDEO_H264_SPS_PARSER_H_
+
+ #include "absl/types/optional.h"
++#include <cstdint>
+
+ namespace rtc {
+ class BitBuffer;
+diff --git a/src/3rdparty/chromium/third_party/webrtc/common_video/h264/pps_parser.h b/src/3rdparty/chromium/third_party/webrtc/common_video/h264/pps_parser.h
+index d6c31b06887..d8852dfd186 100644
+--- a/src/3rdparty/chromium/third_party/webrtc/common_video/h264/pps_parser.h
++++ b/src/3rdparty/chromium/third_party/webrtc/common_video/h264/pps_parser.h
+@@ -12,6 +12,7 @@
+ #define COMMON_VIDEO_H264_PPS_PARSER_H_
+
+ #include "absl/types/optional.h"
++#include <cstdint>
+
+ namespace rtc {
+ class BitBuffer;
+diff --git a/src/3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h b/src/3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h
+index 3b9971abae1..d4458038527 100644
+--- a/src/3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h
++++ b/src/3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/reverb_model_estimator.h
+@@ -13,6 +13,7 @@
+
+ #include <array>
+ #include <vector>
++#include <memory>
+
+ #include "absl/types/optional.h"
+ #include "api/array_view.h"
+diff --git a/src/3rdparty/chromium/third_party/webrtc/modules/include/module_common_types_public.h b/src/3rdparty/chromium/third_party/webrtc/modules/include/module_common_types_public.h
+index 345e45ce127..e686e5d691a 100644
+--- a/src/3rdparty/chromium/third_party/webrtc/modules/include/module_common_types_public.h
++++ b/src/3rdparty/chromium/third_party/webrtc/modules/include/module_common_types_public.h
+@@ -12,6 +12,7 @@
+ #define MODULES_INCLUDE_MODULE_COMMON_TYPES_PUBLIC_H_
+
+ #include <limits>
++#include <cstdint>
+
+ #include "absl/types/optional.h"
+
+diff --git a/src/3rdparty/chromium/third_party/blink/renderer/core/page/scrolling/text_fragment_selector_generator.cc b/src/3rdparty/chromium/third_party/blink/renderer/core/page/scrolling/text_fragment_selector_generator.cc
+index 8fcc799b795..bc69ddcf18c 100644
+--- a/src/3rdparty/chromium/third_party/blink/renderer/core/page/scrolling/text_fragment_selector_generator.cc
++++ b/src/3rdparty/chromium/third_party/blink/renderer/core/page/scrolling/text_fragment_selector_generator.cc
+@@ -15,6 +15,7 @@
+ #include "third_party/blink/renderer/core/page/scrolling/text_fragment_anchor_metrics.h"
+ #include "third_party/blink/renderer/core/page/scrolling/text_fragment_finder.h"
+ #include "third_party/blink/renderer/platform/text/text_boundaries.h"
++#include "absl/base/attributes.h"
+
+ namespace blink {
+
+diff --git a/src/3rdparty/chromium/third_party/abseil-cpp/absl/base/options.h b/src/3rdparty/chromium/third_party/abseil-cpp/absl/base/options.h
+index df506f0fae6..1de105fed4a 100644
+--- a/src/3rdparty/chromium/third_party/abseil-cpp/absl/base/options.h
++++ b/src/3rdparty/chromium/third_party/abseil-cpp/absl/base/options.h
+@@ -180,7 +180,7 @@
+ // absl::variant is a typedef of std::variant, use the feature macro
+ // ABSL_USES_STD_VARIANT.
+
+-#define ABSL_OPTION_USE_STD_VARIANT 2
++#define ABSL_OPTION_USE_STD_VARIANT 0
+
+
+ // ABSL_OPTION_USE_INLINE_NAMESPACE
diff --git a/dev-qt/qtwebengine/qtwebengine-5.15.14.9999.ebuild b/dev-qt/qtwebengine/qtwebengine-5.15.14.9999.ebuild
index 19bc378b..b589d62e 100644
--- a/dev-qt/qtwebengine/qtwebengine-5.15.14.9999.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-5.15.14.9999.ebuild
@@ -173,6 +173,9 @@ src_prepare() {
xargs sed -i -e 's|INCLUDEPATH += |&$${QTWEBENGINE_ROOT}_build/include $${QTWEBENGINE_ROOT}/include |' || die
if use system-icu; then
+ if has_version ">=dev-libs/icu-75.1"; then
+ eapply "${FILESDIR}/${PN}-5.15.14_p20240510-icu-75.patch" # too invasive to apply unconditionally
+ fi
# 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.