| 1 |
From 43084e8b30c101a44510b7a8267d5c2b316a17bb Mon Sep 17 00:00:00 2001 |
| 2 |
From: Eike Rathke <erack@redhat.com> |
| 3 |
Date: Mon, 02 Apr 2012 20:24:00 +0000 |
| 4 |
Subject: only as of ICU 4.9 RBBI the Prepend property is empty |
| 5 |
|
| 6 |
This reverts 0c08a84c04b166ab6479716e2c33cd444d7e3dbe and instead strips the |
| 7 |
Prepend variable during build time. |
| 8 |
--- |
| 9 |
diff --git a/config_host.mk.in b/config_host.mk.in |
| 10 |
index ed5f6df..0e896d8 100644 |
| 11 |
--- a/config_host.mk.in |
| 12 |
+++ b/config_host.mk.in |
| 13 |
@@ -208,6 +208,7 @@ export ICU_MAJOR=@ICU_MAJOR@ |
| 14 |
export ICU_MICRO=@ICU_MICRO@ |
| 15 |
export ICU_MINOR=@ICU_MINOR@ |
| 16 |
export ICU_RECLASSIFIED_CLOSE_PARENTHESIS=@ICU_RECLASSIFIED_CLOSE_PARENTHESIS@ |
| 17 |
+export ICU_RECLASSIFIED_PREPEND_SET_EMPTY=@ICU_RECLASSIFIED_PREPEND_SET_EMPTY@ |
| 18 |
export ILIB=@ILIB@ |
| 19 |
@x_Cygwin@ export INCLUDE= |
| 20 |
export INPATH=@INPATH@ |
| 21 |
diff --git a/configure.in b/configure.in |
| 22 |
index 0100f97..067fa4f 100644 |
| 23 |
--- a/configure.in |
| 24 |
+++ b/configure.in |
| 25 |
@@ -7487,6 +7487,7 @@ ICU_MAJOR= |
| 26 |
ICU_MINOR= |
| 27 |
ICU_MICRO= |
| 28 |
ICU_RECLASSIFIED_CLOSE_PARENTHESIS= |
| 29 |
+ICU_RECLASSIFIED_PREPEND_SET_EMPTY= |
| 30 |
AC_MSG_CHECKING([which icu to use]) |
| 31 |
if test "$with_system_icu" = "yes"; then |
| 32 |
AC_MSG_RESULT([external]) |
| 33 |
@@ -7549,6 +7550,9 @@ You can use --with-system-icu-for-build=force to use it anyway.]) |
| 34 |
if test "$ICU_MAJOR" -ge "5" -o "$ICU_MAJOR" = "4" -a "$ICU_MINOR" -ge "4"; then |
| 35 |
ICU_RECLASSIFIED_CLOSE_PARENTHESIS="YES" |
| 36 |
fi |
| 37 |
+ if test "$ICU_MAJOR" -ge "5" -o "$ICU_MAJOR" = "4" -a "$ICU_MINOR" -ge "9"; then |
| 38 |
+ ICU_RECLASSIFIED_PREPEND_SET_EMPTY="YES" |
| 39 |
+ fi |
| 40 |
fi |
| 41 |
|
| 42 |
libo_MINGW_CHECK_DLL([ICUDATA], [icudata][$ICU_MAJOR][$ICU_MINOR]) |
| 43 |
@@ -7558,6 +7562,7 @@ else |
| 44 |
AC_MSG_RESULT([internal]) |
| 45 |
SYSTEM_ICU="NO" |
| 46 |
ICU_RECLASSIFIED_CLOSE_PARENTHESIS="YES" |
| 47 |
+ # ICU_RECLASSIFIED_PREPEND_SET_EMPTY not applied for our internal ICU 4.4.2 |
| 48 |
BUILD_TYPE="$BUILD_TYPE ICU" |
| 49 |
fi |
| 50 |
|
| 51 |
@@ -7569,6 +7574,7 @@ AC_SUBST(ICU_MAJOR) |
| 52 |
AC_SUBST(ICU_MINOR) |
| 53 |
AC_SUBST(ICU_MICRO) |
| 54 |
AC_SUBST(ICU_RECLASSIFIED_CLOSE_PARENTHESIS) |
| 55 |
+AC_SUBST(ICU_RECLASSIFIED_PREPEND_SET_EMPTY) |
| 56 |
AC_SUBST([MINGW_ICUDATA_DLL]) |
| 57 |
AC_SUBST([MINGW_ICUI18N_DLL]) |
| 58 |
AC_SUBST([MINGW_ICUUC_DLL]) |
| 59 |
diff --git a/i18npool/CustomTarget_breakiterator.mk b/i18npool/CustomTarget_breakiterator.mk |
| 60 |
index 10dce5f..a8379d7 100644 |
| 61 |
--- a/i18npool/CustomTarget_breakiterator.mk |
| 62 |
+++ b/i18npool/CustomTarget_breakiterator.mk |
| 63 |
@@ -95,10 +95,16 @@ $(IPBI)/%.brk : $(IPBI)/%.txt $(GENBRKTARGET) |
| 64 |
$(call gb_Helper_abbreviate_dirs_native,\ |
| 65 |
$(GENBRK) -r $< -o $@ $(if $(findstring s,$(MAKEFLAGS)),> /dev/null)) |
| 66 |
|
| 67 |
-# fdo#31271 ")" reclassified in more recent ICU/Unicode Standards |
| 68 |
+# fdo#31271 ")" reclassified in more recent Unicode Standards / ICU 4.4 |
| 69 |
+# Prepend set empty as of Unicode Version 6.1 / ICU 4.9, which bails out if used. |
| 70 |
+# NOTE: strips every line with _word_ 'Prepend', including $Prepend |
| 71 |
$(IPBI)/%.txt : $(SRCDIR)/i18npool/source/breakiterator/data/%.txt | $(IPBI)/.dir |
| 72 |
ifeq ($(ICU_RECLASSIFIED_CLOSE_PARENTHESIS),YES) |
| 73 |
+ifeq ($(ICU_RECLASSIFIED_PREPEND_SET_EMPTY),YES) |
| 74 |
+ sed "s#\[:LineBreak = Close_Punctuation:\]#\[\[:LineBreak = Close_Punctuation:\] \[:LineBreak = Close_Parenthesis:\]\]#;/\<Prepend\>/d" $< > $@ |
| 75 |
+else |
| 76 |
sed "s#\[:LineBreak = Close_Punctuation:\]#\[\[:LineBreak = Close_Punctuation:\] \[:LineBreak = Close_Parenthesis:\]\]#" $< > $@ |
| 77 |
+endif |
| 78 |
else |
| 79 |
cp $< $@ |
| 80 |
endif |
| 81 |
diff --git a/i18npool/source/breakiterator/data/char.txt b/i18npool/source/breakiterator/data/char.txt |
| 82 |
index acb932e..8e49a56 100644 |
| 83 |
--- a/i18npool/source/breakiterator/data/char.txt |
| 84 |
+++ b/i18npool/source/breakiterator/data/char.txt |
| 85 |
@@ -16,6 +16,7 @@ |
| 86 |
$CR = [\p{Grapheme_Cluster_Break = CR}]; |
| 87 |
$LF = [\p{Grapheme_Cluster_Break = LF}]; |
| 88 |
$Control = [\p{Grapheme_Cluster_Break = Control}]; |
| 89 |
+$Prepend = [\p{Grapheme_Cluster_Break = Prepend}]; |
| 90 |
$Extend = [\p{Grapheme_Cluster_Break = Extend}]; |
| 91 |
$SpacingMark = [\p{Grapheme_Cluster_Break = SpacingMark}]; |
| 92 |
# True Indic wants to move by syllables. Break up SpacingMark. This based on Unicode 6.0 data |
| 93 |
diff --git a/i18npool/source/breakiterator/data/char_in.txt b/i18npool/source/breakiterator/data/char_in.txt |
| 94 |
index 5ad12a7..5e1ed67 100644 |
| 95 |
--- a/i18npool/source/breakiterator/data/char_in.txt |
| 96 |
+++ b/i18npool/source/breakiterator/data/char_in.txt |
| 97 |
@@ -15,6 +15,7 @@ |
| 98 |
$CR = [\p{Grapheme_Cluster_Break = CR}]; |
| 99 |
$LF = [\p{Grapheme_Cluster_Break = LF}]; |
| 100 |
$Control = [\p{Grapheme_Cluster_Break = Control}]; |
| 101 |
+$Prepend = [\p{Grapheme_Cluster_Break = Prepend}]; |
| 102 |
$Extend = [\p{Grapheme_Cluster_Break = Extend}]; |
| 103 |
$SpacingMark = [\p{Grapheme_Cluster_Break = SpacingMark}]; |
| 104 |
$BengaliLetter = [\u0985-\u09B9 \u09CE \u09DC-\u09E1 \u09F0-\u09F1]; |
| 105 |
@@ -71,6 +72,7 @@ $L ($L | $V | $LV | $LVT); |
| 106 |
[^$Control $CR $LF] $Extend; |
| 107 |
|
| 108 |
[^$Control $CR $LF] $SpacingMark; |
| 109 |
+$Prepend [^$Control $CR $LF]; |
| 110 |
|
| 111 |
|
| 112 |
## ------------------------------------------------- |
| 113 |
@@ -92,6 +94,7 @@ $T ($LVT | $T); |
| 114 |
|
| 115 |
$Extend [^$Control $CR $LF]; |
| 116 |
$SpacingMark [^$Control $CR $LF]; |
| 117 |
+[^$Control $CR $LF] $Prepend; |
| 118 |
|
| 119 |
|
| 120 |
## ------------------------------------------------- |
| 121 |
-- |
| 122 |
cgit v0.9.0.2-2-gbebe |