add qtwebengine-5.15.13_p20240322-ninja1.12.patch from gentoo
add fix_build_pdf_extension_util.patch
delete qtwebengine-icu-74.patch
delete 0001-avcodec-x86-mathops-clip-constants-used-with-shift-i.patch
This commit is contained in:
Sérgio M. Basto 2024-06-24 04:13:46 +01:00
parent b21761eee8
commit 46c62e5dc1
9 changed files with 53 additions and 123 deletions

1
.gitignore vendored
View File

@ -7,3 +7,4 @@
/qtwebengine-everywhere-src-5.15.10-clean.tar.xz
/qtwebengine-everywhere-src-5.15.12-clean.tar.xz
/qtwebengine-everywhere-src-5.15.16-clean.tar.xz
/qtwebengine-everywhere-src-5.15.17-clean.tar.xz

View File

@ -1,75 +0,0 @@
From effadce6c756247ea8bae32dc13bb3e6f464f0eb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net>
Date: Sun, 16 Jul 2023 18:18:02 +0300
Subject: [PATCH] avcodec/x86/mathops: clip constants used with shift
instructions within inline assembly
Fixes assembling with binutil as >= 2.41
Signed-off-by: James Almer <jamrial@gmail.com>
---
libavcodec/x86/mathops.h | 26 +++++++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)
diff --git a/src/3rdparty/chromium/third_party/ffmpeg/libavcodec/x86/mathops.h b/src/3rdparty/chromium/third_party/ffmpeg/libavcodec/x86/mathops.h
index 6298f5ed19..ca7e2dffc1 100644
--- a/src/3rdparty/chromium/third_party/ffmpeg/libavcodec/x86/mathops.h
+++ b/src/3rdparty/chromium/third_party/ffmpeg/libavcodec/x86/mathops.h
@@ -35,12 +35,20 @@
static av_always_inline av_const int MULL(int a, int b, unsigned shift)
{
int rt, dummy;
+ if (__builtin_constant_p(shift))
__asm__ (
"imull %3 \n\t"
"shrdl %4, %%edx, %%eax \n\t"
:"=a"(rt), "=d"(dummy)
- :"a"(a), "rm"(b), "ci"((uint8_t)shift)
+ :"a"(a), "rm"(b), "i"(shift & 0x1F)
);
+ else
+ __asm__ (
+ "imull %3 \n\t"
+ "shrdl %4, %%edx, %%eax \n\t"
+ :"=a"(rt), "=d"(dummy)
+ :"a"(a), "rm"(b), "c"((uint8_t)shift)
+ );
return rt;
}
@@ -113,19 +121,31 @@ __asm__ volatile(\
// avoid +32 for shift optimization (gcc should do that ...)
#define NEG_SSR32 NEG_SSR32
static inline int32_t NEG_SSR32( int32_t a, int8_t s){
+ if (__builtin_constant_p(s))
__asm__ ("sarl %1, %0\n\t"
: "+r" (a)
- : "ic" ((uint8_t)(-s))
+ : "i" (-s & 0x1F)
);
+ else
+ __asm__ ("sarl %1, %0\n\t"
+ : "+r" (a)
+ : "c" ((uint8_t)(-s))
+ );
return a;
}
#define NEG_USR32 NEG_USR32
static inline uint32_t NEG_USR32(uint32_t a, int8_t s){
+ if (__builtin_constant_p(s))
__asm__ ("shrl %1, %0\n\t"
: "+r" (a)
- : "ic" ((uint8_t)(-s))
+ : "i" (-s & 0x1F)
);
+ else
+ __asm__ ("shrl %1, %0\n\t"
+ : "+r" (a)
+ : "c" ((uint8_t)(-s))
+ );
return a;
}
--
2.41.0

View File

@ -0,0 +1,10 @@
--- ./src/3rdparty/chromium/qtwebengine/browser/pdf/BUILD.gn.orig 2024-07-03 13:49:13.812285886 +0100
+++ ./src/3rdparty/chromium/qtwebengine/browser/pdf/BUILD.gn 2024-07-03 13:51:45.789966941 +0100
@@ -6,6 +6,7 @@ source_set("pdf") {
]
deps = [
+ "//chrome/app:generated_resources",
"//content/public/browser",
]
}

View File

@ -52,8 +52,8 @@
Summary: Qt5 - QtWebEngine components
Name: qt5-qtwebengine
Version: 5.15.16
Release: 6%{?dist}
Version: 5.15.17
Release: 1%{?dist}
# See LICENSE.GPL LICENSE.LGPL LGPL_EXCEPTION.txt, for details
# See also http://qt-project.org/doc/qt-5.0/qtdoc/licensing.html
@ -105,13 +105,13 @@ Patch32: qtwebengine-skia-missing-includes.patch
Patch34: qtwebengine-fix-build.patch
Patch35: qt5-qtwebengine-c99.patch
# Fix assembly with binutils 2.41 https://fftrac-bg.ffmpeg.org/ticket/10405
Patch50: 0001-avcodec-x86-mathops-clip-constants-used-with-shift-i.patch
Patch51: qtwebengine-icu-74.patch
# Working with ffmpeg
Patch60: qtwebengine-ffmpeg5.patch
# Fix build
Patch61: qtwebengine-5.15.13_p20240322-ninja1.12.patch
Patch62: fix_build_pdf_extension_util.patch
# riscv64 support patch from https://github.com/felixonmars/archriscv-packages/tree/master/qt5-webengine
Patch100: v8.patch
Patch101: riscv.patch
@ -140,6 +140,7 @@ BuildRequires: cmake
BuildRequires: bison
BuildRequires: flex
BuildRequires: gcc-c++
BuildRequires: binutils-gold
# gn links statically (for now)
BuildRequires: libstdc++-static
BuildRequires: git-core
@ -419,10 +420,9 @@ popd
%patch -P35 -p1 -b .c99
%patch -P50 -p1 -b .0001-avcodec-x86-mathops-clip-constants-used-with-shift-i
%patch -P51 -p1 -b .icu-74
%patch -P60 -p1
%patch -P61 -p1
%patch -P62 -p1
%ifarch riscv64
%patch -P100 -p1 -b .riscv64-v8
@ -618,6 +618,10 @@ done
%{_qt5_examplesdir}/
%changelog
* Mon Jun 24 2024 Sérgio Basto <sergio@serjux.com> - 5.15.17-1
- 5.15.17
- BR: binutils-gold to build on rawhide
* Thu May 30 2024 Jan Grulich <jgrulich@redhat.com> - 5.15.16-6
- Rebuild (qt5)

View File

@ -0,0 +1,27 @@
Quoting the description from qtwebengine-6.7.0-ninja1.12.patch:
"""
Patch status: pending being looked at upstream
Issue[1][2][3] also exist in chromium itself[4], and unclear
why this started happening only with ninja-1.12.0 at the moment.
Just a quickfix, likely not fully correct and seems there may
be further unresolved race issues.
[1] https://bugs.gentoo.org/930107
[2] https://bugreports.qt.io/browse/QTBUG-124375
[3] https://github.com/ninja-build/ninja/issues/2417
[4] https://bugs.gentoo.org/930112
"""
This has a hunk removed but is otherwise the same.
--- ./src/3rdparty/chromium/content/browser/BUILD.gn.orig 2024-03-26 14:47:34.000000000 +0000
+++ ./src/3rdparty/chromium/content/browser/BUILD.gn 2024-06-24 04:57:25.108720935 +0100
@@ -196,6 +196,7 @@ jumbo_static_library("browser") {
"//content/common",
"//content/common:buildflags",
"//content/common:mojo_bindings",
+ "//components/spellcheck:buildflags",
"//content/public/browser:proto",
"//content/public/common:common_sources",
"//content/public/common:content_descriptor_keys",

View File

@ -1,25 +1,3 @@
diff --git a/src/3rdparty/chromium/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py b/src/3rdparty/chromium/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py
index 8af373102..b551c0fe2 100644
--- a/src/3rdparty/chromium/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py
+++ b/src/3rdparty/chromium/third_party/catapult/common/py_vulcanize/py_vulcanize/generate.py
@@ -83,7 +83,7 @@ def _MinifyJS(input_js):
with tempfile.NamedTemporaryFile() as _:
args = [
- 'python',
+ 'python2',
rjsmin_path
]
p = subprocess.Popen(args,
@@ -203,7 +203,7 @@ def _MinifyCSS(css_text):
os.path.join(py_vulcanize_path, 'third_party', 'rcssmin', 'rcssmin.py'))
with tempfile.NamedTemporaryFile() as _:
- rcssmin_args = ['python', rcssmin_path]
+ rcssmin_args = ['python2', rcssmin_path]
p = subprocess.Popen(rcssmin_args,
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
diff --git a/src/webengine/module.pro b/src/webengine/module.pro
index 49a1086b2..afc89d49e 100644
--- a/src/webengine/module.pro

View File

@ -1,15 +0,0 @@
diff --git a/src/3rdparty/chromium/third_party/blink/renderer/platform/text/text_break_iterator.cc b/src/3rdparty/chromium/third_party/blink/renderer/platform/text/text_break_iterator.cc
index e34b07372..c0f9268aa 100644
--- a/src/3rdparty/chromium/third_party/blink/renderer/platform/text/text_break_iterator.cc
+++ b/src/3rdparty/chromium/third_party/blink/renderer/platform/text/text_break_iterator.cc
@@ -162,7 +162,9 @@ static const unsigned char kAsciiLineBreakTable[][(kAsciiLineBreakTableLastChar
};
// clang-format on
-#if U_ICU_VERSION_MAJOR_NUM >= 58
+#if U_ICU_VERSION_MAJOR_NUM >= 74
+#define BA_LB_COUNT (U_LB_COUNT - 8)
+#elif U_ICU_VERSION_MAJOR_NUM >= 58
#define BA_LB_COUNT (U_LB_COUNT - 3)
#else
#define BA_LB_COUNT U_LB_COUNT

View File

@ -1,6 +1,6 @@
#!/bin/sh
set -x
VERSION=5.15.16
VERSION=5.15.17
CHROMIUMHASH=`wget https://code.qt.io/cgit/qt/qtwebengine.git/tree/src/3rdparty?h=$VERSION -q --content-on-error -O - | grep "Bad object name: " | sed 's/^.*Bad object name: \([0-9a-f]\{40\}\).*$/\1/g'`
rm -rf qtwebengine-$VERSION qtwebengine-$VERSION.tar.gz qtwebengine-chromium-$CHROMIUMHASH qtwebengine-chromium-$CHROMIUMHASH.tar.gz qtwebengine-everywhere-src-$VERSION
wget https://github.com/qt/qtwebengine/archive/$VERSION.tar.gz -O qtwebengine-$VERSION.tar.gz || exit $?

View File

@ -1,4 +1,4 @@
SHA512 (qtwebengine-everywhere-src-5.15.16-clean.tar.xz) = 40572289b542a55d6e87d045fc9f9d841e5434df55bcdd4da3818df492b0cdcaaa2cc14f0827a2e9af65d08372a69de980732bf7f83b0103732c9ea4f0881bf1
SHA512 (qtwebengine-everywhere-src-5.15.17-clean.tar.xz) = d8fa20e0d1eea0c3c15a98145995eaa37ca21edcb7de3bf5ec548a0347c0aa2409a183ba2f8d9fdfc3686802e5e1f5bb083c0d51fe5ad3a435ab3c72b4c32af9
SHA512 (pulseaudio-12.2-headers.tar.gz) = a5a9bcbb16030b3bc83cc0cc8f5e7f90e0723d3e83258a5c77eacb32eaa267118a73fa7814fbcc99a24e4907916a2b371ebb6dedc4f45541c3acf6c834fd35be
SHA512 (python2.7-2.7.18-19.el9.1.src.rpm) = e6d738b2880b833ea80aec709f7bcf20dac2e8c59d45f1627f61245b3aa9be845888152232e9f08145723514eb29aeada3d5d99641aabe9ec9af2a5c15f32777
SHA512 (python2.7-2.7.18-19.el9.1.aarch64.rpm) = 66c8487a3323bb854ff79242287ae5d290315609b4f79fb985626e52d96286d6dfd2da9a8257e23be036b72adabbbec08d53db339935d5d6e8b6018417bbc769