FreeBSD Bugzilla – Attachment 176928 Details for
Bug 214437
editors/libreoffice and editors/libreoffice4: fail to build with ICU 58.1
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
v1
libreoffice.icu58.diff (text/plain), 5.60 KB, created by
Jan Beich
on 2016-11-12 16:57:15 UTC
(
hide
)
Description:
v1
Filename:
MIME Type:
Creator:
Jan Beich
Created:
2016-11-12 16:57:15 UTC
Size:
5.60 KB
patch
obsolete
>From aa0e5b05ee01d626567750a00c2a9a5a4034c4b8 Mon Sep 17 00:00:00 2001 >From: Jan Beich <jbeich@FreeBSD.org> >Date: Sat, 12 Nov 2016 12:23:33 +0000 >Subject: editors/libreoffice: unbreak with ICU 58.1 > >i18npool/source/breakiterator/breakiterator_unicode.cxx:69:13: error: 'setBreakType' is a private member of 'icu::RuleBasedBreakIterator' > setBreakType(type); > ^ >/usr/local/include/unicode/rbbi.h:657:10: note: declared private here > void setBreakType(int32_t type); > ^ >1 error generated. > >PR: 214437 >Approved by: office (???) >--- > ...source_breakiterator_breakiterator__unicode.cxx | 42 ++++++++++++++++++++++ > ...source_breakiterator_breakiterator__unicode.cxx | 42 ++++++++++++++++++++++ > 2 files changed, 84 insertions(+) > create mode 100644 editors/libreoffice/files/patch-i18npool_source_breakiterator_breakiterator__unicode.cxx > create mode 100644 editors/libreoffice4/files/patch-i18npool_source_breakiterator_breakiterator__unicode.cxx > >diff --git a/editors/libreoffice/files/patch-i18npool_source_breakiterator_breakiterator__unicode.cxx b/editors/libreoffice/files/patch-i18npool_source_breakiterator_breakiterator__unicode.cxx >new file mode 100644 >index 0000000..9b0e971 >--- /dev/null >+++ b/editors/libreoffice/files/patch-i18npool_source_breakiterator_breakiterator__unicode.cxx >@@ -0,0 +1,42 @@ >+Minimal exceprt from upstream fix only to unbreak build >+ >+https://cgit.freedesktop.org/libreoffice/core/commit/?id=3e42714c76b1347babfdea0564009d8d82a83af4 >+ >+--- i18npool/source/breakiterator/breakiterator_unicode.cxx.orig 2016-05-04 21:28:24 UTC >++++ i18npool/source/breakiterator/breakiterator_unicode.cxx >+@@ -64,10 +64,13 @@ BreakIterator_Unicode::~BreakIterator_Un >+ class OOoRuleBasedBreakIterator : public RuleBasedBreakIterator >+ { >+ public: >++#if (U_ICU_VERSION_MAJOR_NUM < 58) >++ // RuleBasedBreakIterator::setBreakType() is private as of ICU 58. >+ inline void publicSetBreakType(int32_t type) >+ { >+ setBreakType(type); >+ }; >++#endif >+ OOoRuleBasedBreakIterator(UDataMemory* image, >+ UErrorCode &status) >+ : RuleBasedBreakIterator(image, status) >+@@ -143,12 +146,21 @@ void SAL_CALL BreakIterator_Unicode::loa >+ } >+ } >+ if (rbi) { >++#if (U_ICU_VERSION_MAJOR_NUM < 58) >++ // ICU 58 made RuleBasedBreakIterator::setBreakType() private >++ // instead of protected, so the old workaround of >++ // https://ssl.icu-project.org/trac/ticket/5498 >++ // doesn't work anymore. However, they also claim to have fixed >++ // the cause that an initial fBreakType==-1 would lead to an >++ // endless loop under some circumstances. >++ // Let's see ... >+ switch (rBreakType) { >+ case LOAD_CHARACTER_BREAKITERATOR: rbi->publicSetBreakType(UBRK_CHARACTER); break; >+ case LOAD_WORD_BREAKITERATOR: rbi->publicSetBreakType(UBRK_WORD); break; >+ case LOAD_SENTENCE_BREAKITERATOR: rbi->publicSetBreakType(UBRK_SENTENCE); break; >+ case LOAD_LINE_BREAKITERATOR: rbi->publicSetBreakType(UBRK_LINE); break; >+ } >++#endif >+ icuBI->aBreakIterator = rbi; >+ } >+ } >diff --git a/editors/libreoffice4/files/patch-i18npool_source_breakiterator_breakiterator__unicode.cxx b/editors/libreoffice4/files/patch-i18npool_source_breakiterator_breakiterator__unicode.cxx >new file mode 100644 >index 0000000..2d1082b >--- /dev/null >+++ b/editors/libreoffice4/files/patch-i18npool_source_breakiterator_breakiterator__unicode.cxx >@@ -0,0 +1,42 @@ >+Minimal exceprt from upstream fix only to unbreak build >+ >+https://cgit.freedesktop.org/libreoffice/core/commit/?id=3e42714c76b1347babfdea0564009d8d82a83af4 >+ >+--- i18npool/source/breakiterator/breakiterator_unicode.cxx.orig 2015-04-20 19:36:29 UTC >++++ i18npool/source/breakiterator/breakiterator_unicode.cxx >+@@ -65,10 +65,13 @@ BreakIterator_Unicode::~BreakIterator_Un >+ class OOoRuleBasedBreakIterator : public RuleBasedBreakIterator >+ { >+ public: >++#if (U_ICU_VERSION_MAJOR_NUM < 58) >++ // RuleBasedBreakIterator::setBreakType() is private as of ICU 58. >+ inline void publicSetBreakType(int32_t type) >+ { >+ setBreakType(type); >+ }; >++#endif >+ OOoRuleBasedBreakIterator(UDataMemory* image, >+ UErrorCode &status) >+ : RuleBasedBreakIterator(image, status) >+@@ -144,12 +147,21 @@ void SAL_CALL BreakIterator_Unicode::loa >+ } >+ } >+ if (rbi) { >++#if (U_ICU_VERSION_MAJOR_NUM < 58) >++ // ICU 58 made RuleBasedBreakIterator::setBreakType() private >++ // instead of protected, so the old workaround of >++ // https://ssl.icu-project.org/trac/ticket/5498 >++ // doesn't work anymore. However, they also claim to have fixed >++ // the cause that an initial fBreakType==-1 would lead to an >++ // endless loop under some circumstances. >++ // Let's see ... >+ switch (rBreakType) { >+ case LOAD_CHARACTER_BREAKITERATOR: rbi->publicSetBreakType(UBRK_CHARACTER); break; >+ case LOAD_WORD_BREAKITERATOR: rbi->publicSetBreakType(UBRK_WORD); break; >+ case LOAD_SENTENCE_BREAKITERATOR: rbi->publicSetBreakType(UBRK_SENTENCE); break; >+ case LOAD_LINE_BREAKITERATOR: rbi->publicSetBreakType(UBRK_LINE); break; >+ } >++#endif >+ icuBI->aBreakIterator = rbi; >+ } >+ }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
koobs
:
maintainer-approval+
Actions:
View
|
Diff
Attachments on
bug 214437
: 176928