From ab8e1a7407059662e2995c9894b676b6cc9cade9 Mon Sep 17 00:00:00 2001 From: Danny Rawlins Date: Mon, 20 Nov 2017 12:49:43 +1100 Subject: [PATCH] qtwebkit: QTBUG-60532 patched for building with new icu --- qtwebkit/.md5sum | 1 + qtwebkit/.signature | 5 ++- qtwebkit/Pkgfile | 7 ++- qtwebkit/QTBUG-60532.patch | 91 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 100 insertions(+), 4 deletions(-) create mode 100644 qtwebkit/QTBUG-60532.patch diff --git a/qtwebkit/.md5sum b/qtwebkit/.md5sum index bb3f3dfc8..b29a2e118 100644 --- a/qtwebkit/.md5sum +++ b/qtwebkit/.md5sum @@ -1 +1,2 @@ +492b78259568db236fe637faafdba9bd QTBUG-60532.patch 1fc0ed873cc9326b823a8a83126714f5 qtwebkit-opensource-src-5.9.0.tar.xz diff --git a/qtwebkit/.signature b/qtwebkit/.signature index 2f4d2641e..361d4c711 100644 --- a/qtwebkit/.signature +++ b/qtwebkit/.signature @@ -1,5 +1,6 @@ untrusted comment: verify with /etc/ports/opt.pub -RWSE3ohX2g5d/eHzzny+l8DqwhSiLdPR5TcbohYdNIodwlABY4s2w4k+shdQxeytMnuRaRPJVYMs2EpDu8GgeZ3iC5HD+q364AY= -SHA256 (Pkgfile) = e9c37c1f28ba6251cee87991e689b11685bf02f81c950d061277bb6c42253be2 +RWSE3ohX2g5d/SHSopsWLiHIykc3Ybq90QWOtPI7XhaTL/oa7oz5+GRb7zlfay/XrtsMwlCvHuXMPKDMfeehCi74dMVabMG5pQ4= +SHA256 (Pkgfile) = ad358f2d475fa00d2d7ae9ebff19286576f2e7053ee174155d8c25ff9094d477 SHA256 (.footprint) = 9338ea36920305245f9e092a29966fe725d8e3263824fb1dec1767807922bd7b SHA256 (qtwebkit-opensource-src-5.9.0.tar.xz) = 8dad193b740055a998312e04a040f2e32a923c0823b2d239b24eab08276a4e04 +SHA256 (QTBUG-60532.patch) = da435d36b9129f6f097ca57244c28668114c2a2205af1d8e2a6706ca9fb06ae1 diff --git a/qtwebkit/Pkgfile b/qtwebkit/Pkgfile index 009d79010..b8283c0f4 100644 --- a/qtwebkit/Pkgfile +++ b/qtwebkit/Pkgfile @@ -6,12 +6,15 @@ name=qtwebkit version=5.9.0 -release=1 -source=(https://download.qt.io/community_releases/${version::3}/$version-final/$name-opensource-src-$version.tar.xz) +release=2 +source=(https://download.qt.io/community_releases/${version::3}/$version-final/$name-opensource-src-$version.tar.xz + QTBUG-60532.patch) build() { cd $name-opensource-src-$version + patch -p1 -i $SRC/QTBUG-60532.patch + install -d build cd build qmake-qt5 .. diff --git a/qtwebkit/QTBUG-60532.patch b/qtwebkit/QTBUG-60532.patch new file mode 100644 index 000000000..9a60ef0d4 --- /dev/null +++ b/qtwebkit/QTBUG-60532.patch @@ -0,0 +1,91 @@ +From bf172ae289a1348842005a9421797970f9b72060 Mon Sep 17 00:00:00 2001 +From: Konstantin Tokarev +Date: Thu, 4 May 2017 15:12:37 +0300 +Subject: [PATCH] Fix compilation with ICU 59 + +Upstream fix: https://bugs.webkit.org/show_bug.cgi?id=171612 + +Task-number: QTBUG-60532 +Change-Id: I6014feea213aa70ebe40b09d9d1a03fd1ed3c843 +Reviewed-by: Allan Sandfeld Jensen +--- + Source/JavaScriptCore/API/JSStringRef.cpp | 6 +++--- + Source/JavaScriptCore/runtime/DateConversion.cpp | 3 ++- + Source/WTF/wtf/TypeTraits.h | 3 +++ + Source/WebKit2/Shared/API/c/WKString.cpp | 2 +- + 4 files changed, 9 insertions(+), 5 deletions(-) + +diff --git a/Source/JavaScriptCore/API/JSStringRef.cpp b/Source/JavaScriptCore/API/JSStringRef.cpp +index 812f3d4..77a3fd0 100644 +--- a/Source/JavaScriptCore/API/JSStringRef.cpp ++++ b/Source/JavaScriptCore/API/JSStringRef.cpp +@@ -37,7 +37,7 @@ using namespace WTF::Unicode; + JSStringRef JSStringCreateWithCharacters(const JSChar* chars, size_t numChars) + { + initializeThreading(); +- return OpaqueJSString::create(chars, numChars).leakRef(); ++ return OpaqueJSString::create(reinterpret_cast(chars), numChars).leakRef(); + } + + JSStringRef JSStringCreateWithUTF8CString(const char* string) +@@ -62,7 +62,7 @@ JSStringRef JSStringCreateWithUTF8CString(const char* string) + JSStringRef JSStringCreateWithCharactersNoCopy(const JSChar* chars, size_t numChars) + { + initializeThreading(); +- return OpaqueJSString::create(StringImpl::createWithoutCopying(chars, numChars, WTF::DoesNotHaveTerminatingNullCharacter)).leakRef(); ++ return OpaqueJSString::create(StringImpl::createWithoutCopying(reinterpret_cast(chars), numChars, WTF::DoesNotHaveTerminatingNullCharacter)).leakRef(); + } + + JSStringRef JSStringRetain(JSStringRef string) +@@ -83,7 +83,7 @@ size_t JSStringGetLength(JSStringRef string) + + const JSChar* JSStringGetCharactersPtr(JSStringRef string) + { +- return string->characters(); ++ return reinterpret_cast(string->characters()); + } + + size_t JSStringGetMaximumUTF8CStringSize(JSStringRef string) +diff --git a/Source/JavaScriptCore/runtime/DateConversion.cpp b/Source/JavaScriptCore/runtime/DateConversion.cpp +index 0b57f01..05e2733 100644 +--- a/Source/JavaScriptCore/runtime/DateConversion.cpp ++++ b/Source/JavaScriptCore/runtime/DateConversion.cpp +@@ -107,7 +107,8 @@ String formatDateTime(const GregorianDateTime& t, DateTimeFormat format, bool as + #if OS(WINDOWS) + TIME_ZONE_INFORMATION timeZoneInformation; + GetTimeZoneInformation(&timeZoneInformation); +- const WCHAR* timeZoneName = t.isDST() ? timeZoneInformation.DaylightName : timeZoneInformation.StandardName; ++ const WCHAR* winTimeZoneName = t.isDST() ? timeZoneInformation.DaylightName : timeZoneInformation.StandardName; ++ String timeZoneName(reinterpret_cast(winTimeZoneName)); + #else + struct tm gtm = t; + char timeZoneName[70]; +diff --git a/Source/WTF/wtf/TypeTraits.h b/Source/WTF/wtf/TypeTraits.h +index 9df2c95..f5d6121 100644 +--- a/Source/WTF/wtf/TypeTraits.h ++++ b/Source/WTF/wtf/TypeTraits.h +@@ -72,6 +72,9 @@ namespace WTF { + template<> struct IsInteger { static const bool value = true; }; + template<> struct IsInteger { static const bool value = true; }; + template<> struct IsInteger { static const bool value = true; }; ++#if __cplusplus >= 201103L || defined(__GXX_EXPERIMENTAL_CXX0X__) || (defined(_HAS_CHAR16_T_LANGUAGE_SUPPORT) && _HAS_CHAR16_T_LANGUAGE_SUPPORT) ++ template<> struct IsInteger { static const bool value = true; }; ++#endif + #if !COMPILER(MSVC) || defined(_NATIVE_WCHAR_T_DEFINED) + template<> struct IsInteger { static const bool value = true; }; + #endif +diff --git a/Source/WebKit2/Shared/API/c/WKString.cpp b/Source/WebKit2/Shared/API/c/WKString.cpp +index cbac67d..23400a6 100644 +--- a/Source/WebKit2/Shared/API/c/WKString.cpp ++++ b/Source/WebKit2/Shared/API/c/WKString.cpp +@@ -55,7 +55,7 @@ size_t WKStringGetLength(WKStringRef stringRef) + size_t WKStringGetCharacters(WKStringRef stringRef, WKChar* buffer, size_t bufferLength) + { + COMPILE_ASSERT(sizeof(WKChar) == sizeof(UChar), WKStringGetCharacters_sizeof_WKChar_matches_UChar); +- return (toImpl(stringRef)->getCharacters(static_cast(buffer), bufferLength)); ++ return (toImpl(stringRef)->getCharacters(reinterpret_cast(buffer), bufferLength)); + } + + size_t WKStringGetMaximumUTF8CStringSize(WKStringRef stringRef) +-- +2.7.4