summaryrefslogtreecommitdiff
path: root/poky/meta/recipes-support/icu
diff options
context:
space:
mode:
Diffstat (limited to 'poky/meta/recipes-support/icu')
-rw-r--r--poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch28
-rw-r--r--poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch30
-rw-r--r--poky/meta/recipes-support/icu/icu/0002-Add-ARC-support.patch27
-rw-r--r--poky/meta/recipes-support/icu/icu/CVE-2018-18928.patch63
-rw-r--r--poky/meta/recipes-support/icu/icu_64.2.bb (renamed from poky/meta/recipes-support/icu/icu_63.1.bb)10
5 files changed, 63 insertions, 95 deletions
diff --git a/poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch b/poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch
new file mode 100644
index 000000000..efb27ae4e
--- /dev/null
+++ b/poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch
@@ -0,0 +1,28 @@
+From 9be0b489a94b57419202c552022f25cb95bfac51 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex.kanavin@gmail.com>
+Date: Wed, 17 Apr 2019 16:41:58 +0200
+Subject: [PATCH] Fix big-endian build
+
+Bug-report: https://unicode-org.atlassian.net/browse/ICU-20533
+Patch taken from: https://bugs.gentoo.org/682170
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+---
+ data/Makefile.in | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/source/data/Makefile.in b/source/data/Makefile.in
+index 778b6c7..67203e7 100644
+--- a/data/Makefile.in
++++ b/data/Makefile.in
+@@ -148,7 +148,8 @@ ICUDATA_ARCHIVE = $(firstword $(wildcard $(srcdir)/in/$(ICUDATA_BASENAME_VERSION
+ # and convert it to the current type.
+ ifneq ($(ICUDATA_ARCHIVE),)
+ ICUDATA_SOURCE_ARCHIVE = $(OUTDIR)/$(ICUDATA_PLATFORM_NAME).dat
+-$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) $(OUTDIR)
++$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE)
++ $(MKINSTALLDIRS) $(OUTDIR)
+ $(INVOKE) $(TOOLBINDIR)/icupkg -t$(ICUDATA_CHAR) $(ICUDATA_ARCHIVE) $(ICUDATA_SOURCE_ARCHIVE)
+ endif
+ else
diff --git a/poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch b/poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch
new file mode 100644
index 000000000..299689d95
--- /dev/null
+++ b/poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch
@@ -0,0 +1,30 @@
+From 500321387ceca48934bb0f323779117cd518bab6 Mon Sep 17 00:00:00 2001
+From: Lei Maohui <leimaohui@cn.fujitsu.com>
+Date: Wed, 8 May 2019 14:42:30 +0900
+Subject: [PATCH] icu: Added armeb support.
+
+Make icu support arm32 BE.
+
+Upstream-Status: Pending
+
+Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
+---
+ i18n/double-conversion-utils.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/i18n/double-conversion-utils.h b/i18n/double-conversion-utils.h
+index 1e44fca..e4f2a8b 100644
+--- a/i18n/double-conversion-utils.h
++++ b/i18n/double-conversion-utils.h
+@@ -92,7 +92,7 @@ int main(int argc, char** argv) {
+ //
+ // If it prints "correct" then the architecture should be here, in the "correct" section.
+ #if defined(_M_X64) || defined(__x86_64__) || \
+- defined(__ARMEL__) || defined(__avr32__) || defined(_M_ARM) || defined(_M_ARM64) || \
++ defined(__arm__) || defined(__avr32__) || defined(_M_ARM) || defined(_M_ARM64) || \
+ defined(__hppa__) || defined(__ia64__) || \
+ defined(__mips__) || \
+ defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__) || \
+--
+2.7.4
+
diff --git a/poky/meta/recipes-support/icu/icu/0002-Add-ARC-support.patch b/poky/meta/recipes-support/icu/icu/0002-Add-ARC-support.patch
deleted file mode 100644
index 20e3d8356..000000000
--- a/poky/meta/recipes-support/icu/icu/0002-Add-ARC-support.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From fcfd57105b4bdb30d906df152ef01748fa95daff Mon Sep 17 00:00:00 2001
-From: Alexey Brodkin <abrodkin@synopsys.com>
-Date: Thu, 13 Sep 2018 17:13:20 +0300
-Subject: [PATCH] icu: Add ARC support
-
-Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
-
-Upstream-Status: Submitted [ https://github.com/unicode-org/icu/pull/149 ]
----
- i18n/double-conversion-utils.h | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/i18n/double-conversion-utils.h b/i18n/double-conversion-utils.h
-index 57fc49b231a3..0bd3e8340673 100644
---- a/i18n/double-conversion-utils.h
-+++ b/i18n/double-conversion-utils.h
-@@ -86,7 +86,7 @@ inline void abort_noreturn() { abort(); }
- defined(__SH4__) || defined(__alpha__) || \
- defined(_MIPS_ARCH_MIPS32R2) || \
- defined(__AARCH64EL__) || defined(__aarch64__) || \
-- defined(__riscv)
-+ defined(__riscv) || defined(__arc__)
- #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
- #elif defined(__mc68000__)
- #undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS
-2.17.1
-
diff --git a/poky/meta/recipes-support/icu/icu/CVE-2018-18928.patch b/poky/meta/recipes-support/icu/icu/CVE-2018-18928.patch
deleted file mode 100644
index 19c50e4e7..000000000
--- a/poky/meta/recipes-support/icu/icu/CVE-2018-18928.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-CVE: CVE-2018-18928
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-From 53d8c8f3d181d87a6aa925b449b51c4a2c922a51 Mon Sep 17 00:00:00 2001
-From: Shane Carr <shane@unicode.org>
-Date: Mon, 29 Oct 2018 23:52:44 -0700
-Subject: [PATCH] ICU-20246 Fixing another integer overflow in number parsing.
-
----
- i18n/fmtable.cpp | 2 +-
- i18n/number_decimalquantity.cpp | 5 ++++-
- test/intltest/numfmtst.cpp | 8 ++++++++
- 6 files changed, 31 insertions(+), 4 deletions(-)
-
-diff --git a/i18n/fmtable.cpp b/i18n/fmtable.cpp
-index 45c7024fc29..8601d95f4a6 100644
---- a/i18n/fmtable.cpp
-+++ b/i18n/fmtable.cpp
-@@ -734,7 +734,7 @@ CharString *Formattable::internalGetCharString(UErrorCode &status) {
- // not print scientific notation for magnitudes greater than -5 and smaller than some amount (+5?).
- if (fDecimalQuantity->isZero()) {
- fDecimalStr->append("0", -1, status);
-- } else if (std::abs(fDecimalQuantity->getMagnitude()) < 5) {
-+ } else if (fDecimalQuantity->getMagnitude() != INT32_MIN && std::abs(fDecimalQuantity->getMagnitude()) < 5) {
- fDecimalStr->appendInvariantChars(fDecimalQuantity->toPlainString(), status);
- } else {
- fDecimalStr->appendInvariantChars(fDecimalQuantity->toScientificString(), status);
-diff --git a/i18n/number_decimalquantity.cpp b/i18n/number_decimalquantity.cpp
-index 47b930a564b..d5dd7ae694c 100644
---- a/i18n/number_decimalquantity.cpp
-+++ b/i18n/number_decimalquantity.cpp
-@@ -898,7 +898,10 @@ UnicodeString DecimalQuantity::toScientificString() const {
- }
- result.append(u'E');
- int32_t _scale = upperPos + scale;
-- if (_scale < 0) {
-+ if (_scale == INT32_MIN) {
-+ result.append({u"-2147483648", -1});
-+ return result;
-+ } else if (_scale < 0) {
- _scale *= -1;
- result.append(u'-');
- } else {
-diff --git a/test/intltest/numfmtst.cpp b/test/intltest/numfmtst.cpp
-index 34355939113..8d52dc122bf 100644
---- a/test/intltest/numfmtst.cpp
-+++ b/test/intltest/numfmtst.cpp
-@@ -9226,6 +9226,14 @@ void NumberFormatTest::Test20037_ScientificIntegerOverflow() {
- assertEquals(u"Should not overflow and should parse only the first exponent",
- u"1E-2147483647",
- {sp.data(), sp.length(), US_INV});
-+
-+ // Test edge case overflow of exponent
-+ result = Formattable();
-+ nf->parse(u".0003e-2147483644", result, status);
-+ sp = result.getDecimalNumber(status);
-+ assertEquals(u"Should not overflow",
-+ u"3E-2147483648",
-+ {sp.data(), sp.length(), US_INV});
- }
-
- void NumberFormatTest::Test13840_ParseLongStringCrash() {
diff --git a/poky/meta/recipes-support/icu/icu_63.1.bb b/poky/meta/recipes-support/icu/icu_64.2.bb
index 961f022ad..10bac7aac 100644
--- a/poky/meta/recipes-support/icu/icu_63.1.bb
+++ b/poky/meta/recipes-support/icu/icu_64.2.bb
@@ -1,6 +1,6 @@
require icu.inc
-LIC_FILES_CHKSUM = "file://../LICENSE;md5=63752c57bd0b365c9af9f427ef79c819"
+LIC_FILES_CHKSUM = "file://../LICENSE;md5=8bc5d32052a96f214cbdd1e53dfc935d"
def icu_download_version(d):
pvsplit = d.getVar('PV').split('.')
@@ -16,15 +16,15 @@ BASE_SRC_URI = "http://download.icu-project.org/files/icu4c/${PV}/icu4c-${ICU_PV
SRC_URI = "${BASE_SRC_URI} \
file://icu-pkgdata-large-cmd.patch \
file://fix-install-manx.patch \
- file://0002-Add-ARC-support.patch \
- file://CVE-2018-18928.patch \
+ file://0001-Fix-big-endian-build.patch \
+ file://0001-icu-Added-armeb-support.patch \
"
SRC_URI_append_class-target = "\
file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \
"
-SRC_URI[md5sum] = "9e40f6055294284df958200e308bce50"
-SRC_URI[sha256sum] = "05c490b69454fce5860b7e8e2821231674af0a11d7ef2febea9a32512998cb9d"
+SRC_URI[md5sum] = "a3d18213beec454e3cdec9a3116d6b05"
+SRC_URI[sha256sum] = "627d5d8478e6d96fc8c90fed4851239079a561a6a8b9e48b0892f24e82d31d6c"
UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)/"
UPSTREAM_CHECK_URI = "http://download.icu-project.org/files/icu4c/"