From 928a381bb5891db55fa9f373fe6b196ba60d82b4 Mon Sep 17 00:00:00 2001 From: anolis-bot Date: Fri, 16 Sep 2022 09:40:54 +0800 Subject: [PATCH] update to webkit2gtk3-2.36.7-1.el8_6 Signed-off-by: anolis-bot --- dist | 1 + download | 4 +- icu60.patch | 135 +++++++++++++++++++++++++++++++++++++++++++++++ webkit2gtk3.spec | 22 +++++--- 4 files changed, 153 insertions(+), 9 deletions(-) create mode 100644 dist create mode 100644 icu60.patch diff --git a/dist b/dist new file mode 100644 index 0000000..0ee7539 --- /dev/null +++ b/dist @@ -0,0 +1 @@ +an8_6 diff --git a/download b/download index 5e49262..6189380 100644 --- a/download +++ b/download @@ -1,2 +1,2 @@ -a5eeedd02f5b4bba8bd891b92dc743d4 webkitgtk-2.34.6.tar.xz -3a8020cc36b66fdb377167e2ee805a2d webkitgtk-2.34.6.tar.xz.asc +466351cf35e4f742590919380b5dee93 webkitgtk-2.36.7.tar.xz +860c5c85bff4c71c2044715b957017ef webkitgtk-2.36.7.tar.xz.asc diff --git a/icu60.patch b/icu60.patch new file mode 100644 index 0000000..775bbc5 --- /dev/null +++ b/icu60.patch @@ -0,0 +1,135 @@ +--- a/Source/JavaScriptCore/runtime/IntlCache.cpp ++++ a/Source/JavaScriptCore/runtime/IntlCache.cpp +@@ -26,6 +26,7 @@ + #include "config.h" + #include "IntlCache.h" + ++#include "IntlDisplayNames.h" + #include + + namespace JSC { +@@ -53,6 +54,7 @@ Vector IntlCache::getBestDateTimePattern(const CString& locale, const + return patternBuffer; + } + ++#if HAVE(ICU_U_LOCALE_DISPLAY_NAMES) + Vector IntlCache::getFieldDisplayName(const CString& locale, UDateTimePatternField field, UDateTimePGDisplayWidth width, UErrorCode& status) + { + auto sharedGenerator = getSharedPatternGenerator(locale, status); +@@ -64,5 +66,6 @@ Vector IntlCache::getFieldDisplayName(const CString& locale, UDateTim + return { }; + return buffer; + } ++#endif + + } // namespace JSC +--- a/Source/JavaScriptCore/runtime/IntlCache.h ++++ a/Source/JavaScriptCore/runtime/IntlCache.h +@@ -25,6 +25,7 @@ + + #pragma once + ++#include "IntlDisplayNames.h" + #include + #include + #include +@@ -39,7 +40,9 @@ public: + IntlCache() = default; + + Vector getBestDateTimePattern(const CString& locale, const UChar* skeleton, unsigned skeletonSize, UErrorCode&); ++#if HAVE(ICU_U_LOCALE_DISPLAY_NAMES) + Vector getFieldDisplayName(const CString& locale, UDateTimePatternField, UDateTimePGDisplayWidth, UErrorCode&); ++#endif + + private: + UDateTimePatternGenerator* getSharedPatternGenerator(const CString& locale, UErrorCode& status) +--- a/Source/JavaScriptCore/runtime/IntlDisplayNames.cpp ++++ a/Source/JavaScriptCore/runtime/IntlDisplayNames.cpp +@@ -110,6 +110,7 @@ void IntlDisplayNames::initializeDisplayNames(JSGlobalObject* globalObject, JSVa + m_languageDisplay = intlOption(globalObject, options, vm.propertyNames->languageDisplay, { { "dialect"_s, LanguageDisplay::Dialect }, { "standard"_s, LanguageDisplay::Standard } }, "languageDisplay must be either \"dialect\" or \"standard\""_s, LanguageDisplay::Dialect); + RETURN_IF_EXCEPTION(scope, void()); + ++#if HAVE(ICU_U_LOCALE_DISPLAY_NAMES) + UErrorCode status = U_ZERO_ERROR; + + UDisplayContext contexts[] = { +@@ -137,6 +138,10 @@ void IntlDisplayNames::initializeDisplayNames(JSGlobalObject* globalObject, JSVa + throwTypeError(globalObject, scope, "failed to initialize DisplayNames"_s); + return; + } ++#else ++ throwTypeError(globalObject, scope, "Failed to initialize Intl.DisplayNames since used feature is not supported in the linked ICU version"_s); ++ return; ++#endif + } + + // https://tc39.es/proposal-intl-displaynames/#sec-Intl.DisplayNames.prototype.of +@@ -146,6 +151,7 @@ JSValue IntlDisplayNames::of(JSGlobalObject* globalObject, JSValue codeValue) co + VM& vm = globalObject->vm(); + auto scope = DECLARE_THROW_SCOPE(vm); + ++#if HAVE(ICU_U_LOCALE_DISPLAY_NAMES) + ASSERT(m_displayNames); + auto code = codeValue.toWTFString(globalObject); + RETURN_IF_EXCEPTION(scope, { }); +@@ -350,6 +356,11 @@ JSValue IntlDisplayNames::of(JSGlobalObject* globalObject, JSValue codeValue) co + return throwTypeError(globalObject, scope, "Failed to query a display name."_s); + } + return jsString(vm, String(buffer)); ++#else ++ UNUSED_PARAM(codeValue); ++ throwTypeError(globalObject, scope, "Failed to initialize Intl.DisplayNames since used feature is not supported in the linked ICU version"_s); ++ return { }; ++#endif + } + + // https://tc39.es/proposal-intl-displaynames/#sec-Intl.DisplayNames.prototype.resolvedOptions +--- a/Source/JavaScriptCore/runtime/IntlDisplayNames.h ++++ a/Source/JavaScriptCore/runtime/IntlDisplayNames.h +@@ -31,6 +31,13 @@ + + namespace JSC { + ++#if !defined(HAVE_ICU_U_LOCALE_DISPLAY_NAMES) ++// We need 61 or later since part of implementation uses UCURR_NARROW_SYMBOL_NAME. ++#if U_ICU_VERSION_MAJOR_NUM >= 61 ++#define HAVE_ICU_U_LOCALE_DISPLAY_NAMES 1 ++#endif ++#endif ++ + enum class RelevantExtensionKey : uint8_t; + + class IntlDisplayNames final : public JSNonFinalObject { +--- a/Source/JavaScriptCore/runtime/IntlObject.cpp ++++ a/Source/JavaScriptCore/runtime/IntlObject.cpp +@@ -153,7 +153,6 @@ namespace JSC { + getCanonicalLocales intlObjectFuncGetCanonicalLocales DontEnum|Function 1 + Collator createCollatorConstructor DontEnum|PropertyCallback + DateTimeFormat createDateTimeFormatConstructor DontEnum|PropertyCallback +- DisplayNames createDisplayNamesConstructor DontEnum|PropertyCallback + Locale createLocaleConstructor DontEnum|PropertyCallback + NumberFormat createNumberFormatConstructor DontEnum|PropertyCallback + PluralRules createPluralRulesConstructor DontEnum|PropertyCallback +@@ -239,6 +238,11 @@ void IntlObject::finishCreation(VM& vm, JSGlobalObject* globalObject) + Base::finishCreation(vm); + ASSERT(inherits(vm, info())); + JSC_TO_STRING_TAG_WITHOUT_TRANSITION(); ++#if HAVE(ICU_U_LOCALE_DISPLAY_NAMES) ++ putDirectWithoutTransition(vm, vm.propertyNames->DisplayNames, createDisplayNamesConstructor(vm, this), static_cast(PropertyAttribute::DontEnum)); ++#else ++ UNUSED_PARAM(&createDisplayNamesConstructor); ++#endif + #if HAVE(ICU_U_LIST_FORMATTER) + putDirectWithoutTransition(vm, vm.propertyNames->ListFormat, createListFormatConstructor(vm, this), static_cast(PropertyAttribute::DontEnum)); + #else +--- a/Source/cmake/OptionsGTK.cmake ++++ a/Source/cmake/OptionsGTK.cmake +@@ -14,7 +14,7 @@ find_package(Freetype 2.4.2 REQUIRED) + find_package(LibGcrypt 1.6.0 REQUIRED) + find_package(GLIB 2.56.4 REQUIRED COMPONENTS gio gio-unix gobject gthread gmodule) + find_package(HarfBuzz 0.9.18 REQUIRED COMPONENTS ICU) +-find_package(ICU 61.2 REQUIRED COMPONENTS data i18n uc) ++find_package(ICU 60.2 REQUIRED COMPONENTS data i18n uc) + find_package(JPEG REQUIRED) + find_package(LibXml2 2.8.0 REQUIRED) + find_package(PNG REQUIRED) diff --git a/webkit2gtk3.spec b/webkit2gtk3.spec index d113401..53a269d 100644 --- a/webkit2gtk3.spec +++ b/webkit2gtk3.spec @@ -11,7 +11,7 @@ %bcond_without docs Name: webkit2gtk3 -Version: 2.34.6 +Version: 2.36.7 Release: 1%{?dist} Summary: GTK Web content engine library @@ -31,6 +31,9 @@ Patch0: evolution-shared-secondary-process.patch # https://bugs.webkit.org/show_bug.cgi?id=227905 Patch1: aarch64-page-size.patch +# https://bugs.webkit.org/show_bug.cgi?id=235367 +Patch2: icu60.patch + BuildRequires: bison BuildRequires: cmake BuildRequires: flex @@ -42,9 +45,9 @@ BuildRequires: gtk-doc BuildRequires: hyphen-devel BuildRequires: libatomic BuildRequires: ninja-build -BuildRequires: perl-File-Copy-Recursive -BuildRequires: perl-JSON-PP -BuildRequires: perl-Switch +BuildRequires: perl(English) +BuildRequires: perl(FindBin) +BuildRequires: perl(JSON::PP) BuildRequires: python3 BuildRequires: ruby BuildRequires: rubygem-json @@ -67,11 +70,10 @@ BuildRequires: pkgconfig(glesv2) BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: pkgconfig(gstreamer-1.0) BuildRequires: pkgconfig(gstreamer-plugins-base-1.0) -BuildRequires: pkgconfig(gstreamer-plugins-bad-1.0) BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(harfbuzz) -BuildRequires: pkgconfig(lcms2) BuildRequires: pkgconfig(icu-uc) +BuildRequires: pkgconfig(lcms2) BuildRequires: pkgconfig(libjpeg) BuildRequires: pkgconfig(libnotify) BuildRequires: pkgconfig(libopenjp2) @@ -237,7 +239,6 @@ export NINJA_STATUS="[%f/%t][%e] " %add_to_license_files Source/JavaScriptCore/COPYING.LIB %add_to_license_files Source/ThirdParty/ANGLE/LICENSE %add_to_license_files Source/ThirdParty/ANGLE/src/common/third_party/smhasher/LICENSE -%add_to_license_files Source/ThirdParty/ANGLE/src/third_party/compiler/LICENSE %add_to_license_files Source/ThirdParty/ANGLE/src/third_party/libXNVCtrl/LICENSE %add_to_license_files Source/WebCore/LICENSE-APPLE %add_to_license_files Source/WebCore/LICENSE-LGPL-2 @@ -261,12 +262,14 @@ export NINJA_STATUS="[%f/%t][%e] " %{_libdir}/webkit2gtk-4.0/ %{_libexecdir}/webkit2gtk-4.0/ %exclude %{_libexecdir}/webkit2gtk-4.0/MiniBrowser +%exclude %{_libexecdir}/webkit2gtk-4.0/jsc %{_bindir}/WebKitWebDriver %files devel %{_libexecdir}/webkit2gtk-4.0/MiniBrowser %{_includedir}/webkitgtk-4.0/ %exclude %{_includedir}/webkitgtk-4.0/JavaScriptCore +%exclude %{_includedir}/webkitgtk-4.0/jsc %{_libdir}/libwebkit2gtk-4.0.so %{_libdir}/pkgconfig/webkit2gtk-4.0.pc %{_libdir}/pkgconfig/webkit2gtk-web-extension-4.0.pc @@ -284,6 +287,7 @@ export NINJA_STATUS="[%f/%t][%e] " %{_libexecdir}/webkit2gtk-4.0/jsc %dir %{_includedir}/webkitgtk-4.0 %{_includedir}/webkitgtk-4.0/JavaScriptCore/ +%{_includedir}/webkitgtk-4.0/jsc/ %{_libdir}/libjavascriptcoregtk-4.0.so %{_libdir}/pkgconfig/javascriptcoregtk-4.0.pc %dir %{_datadir}/gir-1.0 @@ -299,6 +303,10 @@ export NINJA_STATUS="[%f/%t][%e] " %endif %changelog +* Fri Sep 02 2022 Michael Catanzaro - 2.36.7-1 +- Update to 2.36.7 + Related: #2123429 + * Thu Feb 17 2022 Michael Catanzaro - 2.34.6-1 - Update to 2.34.6 Related: #1985042 -- Gitee