add qt5-webkit

This commit is contained in:
joborun linux 2024-05-19 00:44:48 +03:00
parent c0e107ced5
commit 684c43b5ee
5 changed files with 43 additions and 10 deletions

View File

@ -9,12 +9,13 @@ pkgname=qt5-webkit
_pkgver=5.212.0-alpha4
_basever=5.15.3
pkgver=${_pkgver/-/}
pkgrel=023
pkgrel=024
url="https://github.com/qtwebkit/qtwebkit"
options=(!lto)
pkgdesc="Classes for a WebKit2 based implementation and a new QML API"
source=("https://github.com/qtwebkit/qtwebkit/releases/download/qtwebkit-$_pkgver/qtwebkit-${_pkgver}.tar.xz"
"https://src.fedoraproject.org/rpms/qt5-qtwebkit/raw/rawhide/f/qtwebkit-cstdint.patch"
"https://src.fedoraproject.org/rpms/qt5-qtwebkit/raw/rawhide/f/qtwebkit-fix-build-gcc14.patch"
icu68.patch
glib-2.68.patch
qt5-webkit-bison-3.7.patch::"https://github.com/qtwebkit/qtwebkit/commit/d92b11fe.patch"
@ -36,7 +37,7 @@ prepare() {
patch -p1 -i ../qt5-webkit-python-3.9.patch # Fix build with python 3.9
patch -p1 -i ../qt5-webkit-bison-3.7.patch # Fix build with bison 3.7
patch -p1 -i ../qtwebkit-cstdint.patch # gcc 11.1
patch -p1 -i ../qtwebkit-fix-build-gcc14.patch # GCC 14.1
}
build() {
@ -44,6 +45,7 @@ build() {
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG" \
-DUSE_LD_GOLD=OFF \
-DPORT=Qt \
-DENABLE_XSLT=OFF \
-DENABLE_TOOLS=OFF
@ -65,12 +67,13 @@ arch=(x86_64)
license=(GPL3 LGPL3 FDL custom)
sha256sums=(9ca126da9273664dd23a3ccd0c9bebceb7bb534bddd743db31caf6a5a6d4a9e6
4c71c958eae45cae65c9f002024eb1369d06029b668e595158138ff7971e64f1
0b40ed924f03ff6081af610bb0ee01560b7bd1fb68f8af02053304a01d4ccdf0
4969dd03e482155e2490b50307dada81dda7bbc9e5398e3a53c20bc474f7c04e
sha256sums=(9ca126da9273664dd23a3ccd0c9bebceb7bb534bddd743db31caf6a5a6d4a9e6 # qt5-webkit
4c71c958eae45cae65c9f002024eb1369d06029b668e595158138ff7971e64f1 # qtwebkit-cstdint.patch
eea38db22078700887bf22b6a49bb628fd8444cdb2e506770c993df883d0e8fb # qtwebkit-fix-build-gcc14.patch
0b40ed924f03ff6081af610bb0ee01560b7bd1fb68f8af02053304a01d4ccdf0 # icu68.patch
4969dd03e482155e2490b50307dada81dda7bbc9e5398e3a53c20bc474f7c04e # glib-2.68.patch
34f37b53ee0bc31c63ce85ebd1ae95543a8ba28483e387b20efd50574bd813be # qt5-webkit-bison-3.7.patch
6e0cee08e4fa57b04752e80817f33562f48aa42608a3a620930b6040259b4932) # qt5-webkit-python-3.9.patch
## 501676abb997c171ac3b29322fe4e661ca688ed8bae8aa4f260185eedc879da3 qt5-webkit-5.212.0alpha4-023-x86_64.pkg.tar.lz
## 9ca126da9273664dd23a3ccd0c9bebceb7bb534bddd743db31caf6a5a6d4a9e6 qtwebkit-5.212.0-alpha4.tar.xz
## 9ca126da9273664dd23a3ccd0c9bebceb7bb534bddd743db31caf6a5a6d4a9e6 qtwebkit-5.212.0-alpha4.tar.xz

View File

@ -8,13 +8,14 @@ pkgname=qt5-webkit
_pkgver=5.212.0-alpha4
_basever=5.15.3
pkgver=${_pkgver/-/}
pkgrel=22
pkgrel=23
arch=(x86_64 aarch64)
url="https://github.com/qtwebkit/qtwebkit"
license=(LGPL2.1)
pkgdesc="Classes for a WebKit2 based implementation and a new QML API"
source=("https://github.com/qtwebkit/qtwebkit/releases/download/qtwebkit-$_pkgver/qtwebkit-${_pkgver}.tar.xz"
"https://src.fedoraproject.org/rpms/qt5-qtwebkit/raw/rawhide/f/qtwebkit-cstdint.patch"
"https://src.fedoraproject.org/rpms/qt5-qtwebkit/raw/rawhide/f/qtwebkit-fix-build-gcc14.patch"
icu68.patch
glib-2.68.patch
qt5-webkit-python-3.9.patch
@ -25,11 +26,13 @@ depends=(qt5-location qt5-sensors qt5-webchannel libwebp libxcomposite gst-plugi
glibc gcc-libs glib2 zlib libx11 sqlite gst-plugins-base-libs libjpeg-turbo icu libpng gstreamer libxml2
qt5-base qt5-declarative)
# libxslt
depends+=(libicuuc.so libicui18n.so)
makedepends=(cmake ruby gperf python qt5-doc qt5-tools)
optdepends=('gst-plugins-good: Webm codec support')
options=(!lto)
sha256sums=('9ca126da9273664dd23a3ccd0c9bebceb7bb534bddd743db31caf6a5a6d4a9e6'
'4c71c958eae45cae65c9f002024eb1369d06029b668e595158138ff7971e64f1'
'eea38db22078700887bf22b6a49bb628fd8444cdb2e506770c993df883d0e8fb'
'0b40ed924f03ff6081af610bb0ee01560b7bd1fb68f8af02053304a01d4ccdf0'
'4969dd03e482155e2490b50307dada81dda7bbc9e5398e3a53c20bc474f7c04e'
'6e0cee08e4fa57b04752e80817f33562f48aa42608a3a620930b6040259b4932'
@ -42,6 +45,7 @@ prepare() {
patch -p1 -i ../qt5-webkit-python-3.9.patch # Fix build with python 3.9
patch -p1 -i ../qt5-webkit-bison-3.7.patch # Fix build with bison 3.7
patch -p1 -i ../qtwebkit-cstdint.patch # gcc 11.1
patch -p1 -i ../qtwebkit-fix-build-gcc14.patch # GCC 14.1
}
build() {
@ -50,6 +54,7 @@ build() {
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG" \
-DPORT=Qt \
-DUSE_LD_GOLD=OFF \
-DENABLE_XSLT=OFF \
-DENABLE_TOOLS=OFF
cmake --build build
@ -58,6 +63,5 @@ build() {
}
package() {
depends+=(libicuuc.so libicui18n.so)
DESTDIR="${pkgdir}" cmake --install build
}

6
qt5-webkit/dependents Normal file
View File

@ -0,0 +1,6 @@
qt5-webkit
├─smtube
├─wkhtmltopdf
│ └─remarkable
└─xvst

5
qt5-webkit/error Normal file
View File

@ -0,0 +1,5 @@
/src/pkg/jobcomm/qt5-webkit/src/qtwebkit-5.212.0-alpha4/Source/WTF/wtf/text/StringView.h:503:35: note: remove the < >
make[2]: *** [Source/WTF/wtf/CMakeFiles/WTF.dir/build.make:984: Source/WTF/wtf/CMakeFiles/WTF.dir/unicode/icu/CollatorICU.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1500: Source/WTF/wtf/CMakeFiles/WTF.dir/all] Error 2
make: *** [Makefile:166: all] Error 2
==> ERROR: A failure occurred in build().

View File

@ -0,0 +1,15 @@
diff --git a/Source/WebCore/page/csp/ContentSecurityPolicy.cpp b/Source/WebCore/page/csp/ContentSecurityPolicy.cpp
index 9e726d5..4876f0f 100644
--- a/Source/WebCore/page/csp/ContentSecurityPolicy.cpp
+++ b/Source/WebCore/page/csp/ContentSecurityPolicy.cpp
@@ -231,8 +231,9 @@ bool isAllowedByAllWithHashFromContent(const CSPDirectiveListVector& policies, c
auto cryptoDigest = CryptoDigest::create(toCryptoDigestAlgorithm(algorithm));
cryptoDigest->addBytes(contentCString.data(), contentCString.length());
Vector<uint8_t> digest = cryptoDigest->computeHash();
+ ContentSecurityPolicyHash hash = std::make_pair(algorithm, digest);
for (auto& policy : policies) {
- if ((policy.get()->*allowed)(std::make_pair(algorithm, digest)))
+ if ((policy.get()->*allowed)(hash))
return true;
}
}