forked from Lainports/freebsd-ports
java/openjfx8-devel: Unbreak build with ICU 59.1
modules/web/src/main/native/Source/JavaScriptCore/API/JSStringRef.cpp:40:13: error: no matching function for call to 'create'
return &OpaqueJSString::create(chars, numChars).leakRef();
^~~~~~~~~~~~~~~~~~~~~~
modules/web/src/main/native/Source/JavaScriptCore/API/OpaqueJSString.h:48:32: note: candidate function not viable: no known conversion from 'const JSChar *' (aka 'const unsigned short *') to 'const LChar *' (aka 'const unsigned char *') for 1st argument
static Ref<OpaqueJSString> create(const LChar* characters, unsigned length)
^
modules/web/src/main/native/Source/JavaScriptCore/API/OpaqueJSString.h:53:32: note: candidate function not viable: no known conversion from 'const JSChar *' (aka 'const unsigned short *') to 'const UChar *' (aka 'const char16_t *') for 1st argument
static Ref<OpaqueJSString> create(const UChar* characters, unsigned length)
^
modules/web/src/main/native/Source/JavaScriptCore/API/OpaqueJSString.h:43:32: note: candidate function not viable: requires 0 arguments, but 2 were provided
static Ref<OpaqueJSString> create()
^
modules/web/src/main/native/Source/JavaScriptCore/API/OpaqueJSString.h:58:53: note: candidate function not viable: requires 1 argument, but 2 were provided
JS_EXPORT_PRIVATE static RefPtr<OpaqueJSString> create(const String&);
^
modules/web/src/main/native/Source/JavaScriptCore/API/JSStringRef.cpp:65:35: error: no matching function for call to 'createWithoutCopying'
return OpaqueJSString::create(StringImpl::createWithoutCopying(chars, numChars)).leakRef();
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
modules/web/src/main/native/Source/WTF/wtf/text/StringImpl.h:385:50: note: candidate function not viable: no known conversion from 'const JSChar *' (aka 'const unsigned short *') to 'const UChar *' (aka 'const char16_t *') for 1st argument
WTF_EXPORT_STRING_API static Ref<StringImpl> createWithoutCopying(const UChar* characters, unsigned length);
^
modules/web/src/main/native/Source/WTF/wtf/text/StringImpl.h:386:50: note: candidate function not viable: no known conversion from 'const JSChar *' (aka 'const unsigned short *') to 'const LChar *' (aka 'const unsigned char *') for 1st argument
WTF_EXPORT_STRING_API static Ref<StringImpl> createWithoutCopying(const LChar* characters, unsigned length);
^
modules/web/src/main/native/Source/JavaScriptCore/API/JSStringRef.cpp:90:12: error: cannot initialize return object of type 'const JSChar *' (aka 'const unsigned short *') with an rvalue of type 'const UChar *' (aka 'const char16_t *')
return string->characters();
^~~~~~~~~~~~~~~~~~~~
modules/web/src/main/native/Source/WTF/wtf/unicode/java/UnicodeJava.h:21:18: error: typedef redefinition with different types ('uint16_t' (aka 'unsigned short') vs 'char16_t')
typedef uint16_t UChar;
^
/usr/local/include/unicode/umachine.h:347:22: note: previous definition is here
typedef char16_t UChar;
PR: 218788, 222270
Submitted by: jbeich
Reviewed by: jbeich
Obtained from: WebKit (rebased)
This commit is contained in:
parent
6d2d0581a4
commit
225bf1ceda
2 changed files with 78 additions and 1 deletions
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
PORTNAME= openjfx8
|
||||
PORTVERSION= 20170722
|
||||
PORTREVISION= 2
|
||||
PORTREVISION= 3
|
||||
CATEGORIES= java x11-toolkits devel
|
||||
MASTER_SITES= https://bitbucket.org/tobik/openjfx-rt/get/freebsd${PORTVERSION}${EXTRACT_SUFX}?dummy=/
|
||||
PKGNAMESUFFIX= -devel
|
||||
|
|
|
|||
77
java/openjfx8-devel/files/patch-icu59
Normal file
77
java/openjfx8-devel/files/patch-icu59
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
------------------------------------------------------------------------
|
||||
r216187 | annulen@yandex.ru | 2017-05-05 00:33:41 +0900 (Fri, 05 May 2017) | 28 lines
|
||||
|
||||
Fix compilation with ICU 59.1
|
||||
https://bugs.webkit.org/show_bug.cgi?id=171612
|
||||
|
||||
Reviewed by Mark Lam.
|
||||
|
||||
ICU 59.1 has broken source compatibility. Now it defines UChar as
|
||||
char16_t, which does not allow automatic type conversion from unsigned
|
||||
short in C++ code.
|
||||
|
||||
--- modules/web/src/main/native/Source/JavaScriptCore/API/JSStringRef.cpp.orig 2017-07-22 15:59:03 UTC
|
||||
+++ modules/web/src/main/native/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<const UChar*>(chars), numChars).leakRef();
|
||||
}
|
||||
|
||||
JSStringRef JSStringCreateWithUTF8CString(const char* string)
|
||||
@@ -62,7 +62,7 @@ JSStringRef JSStringCreateWithUTF8CString(const char*
|
||||
JSStringRef JSStringCreateWithCharactersNoCopy(const JSChar* chars, size_t numChars)
|
||||
{
|
||||
initializeThreading();
|
||||
- return OpaqueJSString::create(StringImpl::createWithoutCopying(chars, numChars)).leakRef();
|
||||
+ return OpaqueJSString::create(StringImpl::createWithoutCopying(reinterpret_cast<const UChar*>(chars), numChars)).leakRef();
|
||||
}
|
||||
|
||||
JSStringRef JSStringRetain(JSStringRef string)
|
||||
@@ -87,7 +87,7 @@ const JSChar* JSStringGetCharactersPtr(JSStringRef str
|
||||
{
|
||||
if (!string)
|
||||
return nullptr;
|
||||
- return string->characters();
|
||||
+ return reinterpret_cast<const JSChar*>(string->characters());
|
||||
}
|
||||
|
||||
size_t JSStringGetMaximumUTF8CStringSize(JSStringRef string)
|
||||
--- modules/web/src/main/native/Source/JavaScriptCore/runtime/DateConversion.cpp.orig 2017-07-22 15:59:03 UTC
|
||||
+++ modules/web/src/main/native/Source/JavaScriptCore/runtime/DateConversion.cpp
|
||||
@@ -107,7 +107,8 @@ String formatDateTime(const GregorianDateTime& t, Date
|
||||
#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<const UChar*>(winTimeZoneName));
|
||||
#else
|
||||
struct tm gtm = t;
|
||||
char timeZoneName[70];
|
||||
--- modules/web/src/main/native/Source/WTF/wtf/unicode/java/UnicodeJava.h.orig 2017-07-22 15:59:03 UTC
|
||||
+++ modules/web/src/main/native/Source/WTF/wtf/unicode/java/UnicodeJava.h
|
||||
@@ -15,21 +15,6 @@
|
||||
|
||||
#define CharProp(p) java_lang_Character_##p
|
||||
|
||||
-#if PLATFORM(JAVA) && OS(WINDOWS)
|
||||
-typedef wchar_t UChar;
|
||||
-#else
|
||||
-typedef uint16_t UChar;
|
||||
-#endif
|
||||
-
|
||||
-// #ifdef UChar32
|
||||
-// #undef UChar32
|
||||
-// #endif
|
||||
-
|
||||
-#ifndef __UMACHINE_H__ //XXX: recheck
|
||||
-typedef uint32_t UChar32;
|
||||
-#endif
|
||||
-
|
||||
-#define U_MASK(x) ((uint32_t)1<<(x))
|
||||
#define USE_FAST_PATH(c, fast, slow) ((c) <= 0x7F ? fast((char)c) : slow(c))
|
||||
|
||||
#define CHECK_PROPERTY(c, mask, isSet) \
|
||||
Loading…
Add table
Reference in a new issue