commit:     46f716736cde3356966f1f3eb97ae1bb4035a9d9
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 14 20:41:37 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 14 20:45:32 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46f71673

dev-libs/icu: backport test failure fix for ARM; add missing BDEPEND

- Backport test failure fix (not within test itself so let's revbump
  as could affect runtime behaviour). Noticed after Exherbo committed
  it, so gave the test suite a go on arm, and indeed it failed & this
  sorts it out.

  (Only usage is within the test suite but it seems to be an exported
  function, so let's not take the risk.)

- Add missing autoconf-archive BDEPEND (thanks juippis).

Closes: https://bugs.gentoo.org/827034
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/icu/files/icu-70.1-fix-ucptrietest.patch  | 38 ++++++++++++++++++++++
 .../icu/{icu-70.1.ebuild => icu-70.1-r1.ebuild}    |  6 ++--
 2 files changed, 42 insertions(+), 2 deletions(-)

diff --git a/dev-libs/icu/files/icu-70.1-fix-ucptrietest.patch 
b/dev-libs/icu/files/icu-70.1-fix-ucptrietest.patch
new file mode 100644
index 000000000000..05d390a1284a
--- /dev/null
+++ b/dev-libs/icu/files/icu-70.1-fix-ucptrietest.patch
@@ -0,0 +1,38 @@
+Fixes test failure on arm.
+
+https://github.com/unicode-org/icu/pull/1925
+https://unicode-org.atlassian.net/browse/ICU-21793
+
+From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Lal?= <kapo...@melix.org>
+Date: Wed, 3 Nov 2021 02:31:18 +0100
+Subject: [PATCH] ICU-21793 Fix ucptrietest golden diff
+
+--- a/tools/toolutil/toolutil.cpp
++++ b/tools/toolutil/toolutil.cpp
+@@ -228,18 +228,19 @@ uprv_compareGoldenFiles(
+     std::ifstream ifs(goldenFilePath, std::ifstream::in);
+     int32_t pos = 0;
+     char c;
+-    while ((c = ifs.get()) != std::char_traits<char>::eof() && pos < 
bufferLen) {
++    while (ifs.get(c) && pos < bufferLen) {
+         if (c != buffer[pos]) {
+             // Files differ at this position
+-            return pos;
++            break;
+         }
+         pos++;
+     }
+-    if (pos < bufferLen || c != std::char_traits<char>::eof()) {
+-        // Files are different lengths
+-        return pos;
++    if (pos == bufferLen && ifs.eof()) {
++        // Files are same lengths
++        pos = -1;
+     }
+-    return -1;
++    ifs.close();
++    return pos;
+ }
+
+ /*U_CAPI UDate U_EXPORT2
+

diff --git a/dev-libs/icu/icu-70.1.ebuild b/dev-libs/icu/icu-70.1-r1.ebuild
similarity index 95%
rename from dev-libs/icu/icu-70.1.ebuild
rename to dev-libs/icu/icu-70.1-r1.ebuild
index 83163eaec2b6..c2095a985a40 100644
--- a/dev-libs/icu/icu-70.1.ebuild
+++ b/dev-libs/icu/icu-70.1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -17,6 +17,7 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips 
~ppc ~ppc64 ~riscv ~
 IUSE="debug doc examples static-libs"
 
 BDEPEND="${PYTHON_DEPS}
+       sys-devel/autoconf-archive
        virtual/pkgconfig
        doc? ( app-doc/doxygen[dot] )
 "
@@ -29,9 +30,10 @@ PATCHES=(
        "${FILESDIR}/${PN}-65.1-remove-bashisms.patch"
        "${FILESDIR}/${PN}-64.2-darwin.patch"
        "${FILESDIR}/${PN}-68.1-nonunicode.patch"
-       # Should be in the next rleease, but check
+       # Should both be in the next release, but check
        # https://bugs.gentoo.org/788112
        "${FILESDIR}/${PN}-69.1-fix-ub-units.patch"
+       "${FILESDIR}/${PN}-70.1-fix-ucptrietest.patch"
 )
 
 src_prepare() {

Reply via email to