From fafd6ab3ceeacc9d6c916ccfee3b8d018b1fcf0b1c0b433208b485319bc12292 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Thu, 13 Apr 2023 23:09:54 +0000 Subject: [PATCH 1/3] - Update to release 73.1 OBS-URL: https://build.opensuse.org/package/show/X11:common:Factory/icu?expand=0&rev=164 --- baselibs.conf | 4 +- icu-error-reporting.diff | 16 +-- icu.changes | 11 +- icu.keyring | 301 +++++++++++++++++++++++++++++++++++++++ icu.spec | 16 +-- icu4c-72_1-docs.zip | 3 - icu4c-72_1-docs.zip.asc | 14 -- icu4c-72_1-src.tgz | 3 - icu4c-72_1-src.tgz.asc | 14 -- icu4c-73_1-docs.zip | 3 + icu4c-73_1-docs.zip.asc | 16 +++ icu4c-73_1-src.tgz | 3 + icu4c-73_1-src.tgz.asc | 16 +++ 13 files changed, 366 insertions(+), 54 deletions(-) create mode 100644 icu.keyring delete mode 100644 icu4c-72_1-docs.zip delete mode 100644 icu4c-72_1-docs.zip.asc delete mode 100644 icu4c-72_1-src.tgz delete mode 100644 icu4c-72_1-src.tgz.asc create mode 100644 icu4c-73_1-docs.zip create mode 100644 icu4c-73_1-docs.zip.asc create mode 100644 icu4c-73_1-src.tgz create mode 100644 icu4c-73_1-src.tgz.asc diff --git a/baselibs.conf b/baselibs.conf index be8be27..d1361fb 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -1,4 +1,4 @@ -libicu72 +libicu73 libicu-devel requires -libicu- - requires "libicu72- = " + requires "libicu73- = " diff --git a/icu-error-reporting.diff b/icu-error-reporting.diff index dcaab0a..35ce134 100644 --- a/icu-error-reporting.diff +++ b/icu-error-reporting.diff @@ -22,7 +22,7 @@ Index: icu/source/tools/toolutil/package.cpp @@ -748,7 +749,7 @@ Package::writePackage(const char *filena // create the file and write its contents file=fopen(filename, "wb"); - if(file==NULL) { + if(file==nullptr) { - fprintf(stderr, "icupkg: unable to create file \"%s\"\n", filename); + fprintf(stderr, "icupkg: unable to create file \"%s\": %s\n", filename, strerror(errno)); exit(U_FILE_ACCESS_ERROR); @@ -31,7 +31,7 @@ Index: icu/source/tools/toolutil/package.cpp @@ -1169,7 +1170,7 @@ Package::extractItem(const char *filesPa makeFullFilenameAndDirs(filesPath, outName, filename, (int32_t)sizeof(filename)); file=fopen(filename, "wb"); - if(file==NULL) { + if(file==nullptr) { - fprintf(stderr, "icupkg: unable to create file \"%s\"\n", filename); + fprintf(stderr, "icupkg: unable to create file \"%s\": %s\n", filename, strerror(errno)); exit(U_FILE_ACCESS_ERROR); @@ -48,17 +48,17 @@ Index: icu/source/tools/toolutil/writesrc.cpp +#include #include +#include - #include #include - #include "unicode/utypes.h" -@@ -66,8 +68,8 @@ usrc_createWithoutHeader(const char *pat - if (f==NULL) { + + // The C99 standard suggested that C++ implementations not define PRId64 etc. constants +@@ -75,8 +77,8 @@ usrc_createWithoutHeader(const char *pat + if (f==nullptr) { fprintf( stderr, - "usrc_create(%s, %s): unable to create file\n", -- path!=NULL ? path : "", filename); +- path!=nullptr ? path : "", filename); + "usrc_create(%s, %s): unable to create file: %s\n", -+ path!=NULL ? path : "", filename, strerror(errno)); ++ path!=nullptr ? path : "", filename, strerror(errno)); } return f; } diff --git a/icu.changes b/icu.changes index f723ab5..380ee59 100644 --- a/icu.changes +++ b/icu.changes @@ -1,8 +1,15 @@ +------------------------------------------------------------------- +Thu Apr 13 23:05:00 UTC 2023 - Jan Engelhardt + +- Update to release 73.1 + * Improved Japanese and Korean short-text line breaking + * Reduction of C++ memory use in date formatting + ------------------------------------------------------------------- Thu Mar 2 09:23:48 UTC 2023 - Martin Liška -- Use -fexcess-precision=fast as GCC 13 will default to -fexcess-precision=standard - for C++. +- Use -fexcess-precision=fast as GCC 13 will default to + -fexcess-precision=standard for C++. ------------------------------------------------------------------- Wed Oct 19 11:22:26 UTC 2022 - Jan Engelhardt diff --git a/icu.keyring b/icu.keyring new file mode 100644 index 0000000..022b5e3 --- /dev/null +++ b/icu.keyring @@ -0,0 +1,301 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +=vIM2 +-----END PGP PUBLIC KEY BLOCK----- diff --git a/icu.spec b/icu.spec index 79ec2bb..04fcc02 100644 --- a/icu.spec +++ b/icu.spec @@ -16,9 +16,9 @@ # -%define lname libicu72 -%define amajor 72 -%define aversion 72 +%define lname libicu73 +%define amajor 73 +%define aversion 73 %ifarch %armb hppa mips mips64 ppc ppc64 %sparc s390 s390x m68k %define be_platform 1 %else @@ -26,16 +26,16 @@ %endif # icu-versioning.diff needs update for new Version too Name: icu -Version: 72.1 +Version: 73.1 Release: 0 Summary: International Components for Unicode License: ICU Group: Development/Libraries/C and C++ URL: https://icu.unicode.org/ -Source: https://github.com/unicode-org/icu/releases/download/release-72-1/icu4c-72_1-src.tgz -Source2: https://github.com/unicode-org/icu/releases/download/release-72-1/icu4c-72_1-src.tgz.asc -Source3: https://github.com/unicode-org/icu/releases/download/release-72-1/icu4c-72_1-docs.zip -Source4: https://github.com/unicode-org/icu/releases/download/release-72-1/icu4c-72_1-docs.zip.asc +Source: https://github.com/unicode-org/icu/releases/download/release-73-1/icu4c-73_1-src.tgz +Source2: https://github.com/unicode-org/icu/releases/download/release-73-1/icu4c-73_1-src.tgz.asc +Source3: https://github.com/unicode-org/icu/releases/download/release-73-1/icu4c-73_1-docs.zip +Source4: https://github.com/unicode-org/icu/releases/download/release-73-1/icu4c-73_1-docs.zip.asc Source100: baselibs.conf Patch4: icu-fix-install-mode-files.diff Patch6: icu-error-reporting.diff diff --git a/icu4c-72_1-docs.zip b/icu4c-72_1-docs.zip deleted file mode 100644 index 0916bf7..0000000 --- a/icu4c-72_1-docs.zip +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:49109e06a0b2da13cd79029d76fa3c203d980e430cb8893ab19c5c78a4786bd2 -size 8442040 diff --git a/icu4c-72_1-docs.zip.asc b/icu4c-72_1-docs.zip.asc deleted file mode 100644 index 9c42490..0000000 --- a/icu4c-72_1-docs.zip.asc +++ /dev/null @@ -1,14 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQGzBAABCgAdFiEEPaNTAafDMCV7h1V1QFj2dAbqpqsFAmNPTZgACgkQQFj2dAbq -pqt/ZAv/bzyU7HpopB3icMYQDyWfCnuMg0NCtQiOxsWH4taBSIwrRAwuIQ1BlA+/ -Xp5FmbRCxiBSCdMrR5R6/IWVfDMoV7X3ASqPZDQduWDGm3lkAZCcR26sgBC0NNwA -6yWXzhLUZ0xQeEiBaxfH7K48/KWHlfUmBaXgWiWegcUn6GVPx/Nl1j2bus1kdg/1 -Gr+8pncxXdycuk6OH3FMYM8OWVqvX0g4qh7n743a7ScvsHN2vgv0D8zymKxLjWMK -EskksCnxacjlJ8FuveryrI+qPRpITJpPJIbVneBwghEf4nIC1zLu9N0L2NR3NLgw -DZ76QG3yc4DKB+plnWQGHB3pPKboD958X8PzKETMZE29ZYt6JuLLwyscwdG/IMkL -qaF0O5KTkKscy1HBRZECZWFAAXXuXSYVUgRcUl3mfoMV5Wlpj1s+lyy4JK4mlqIZ -ej5Sed3kRkWvbfRgzdOPdxZp7EDCUo/mB+agLLQUGxV4oWY34/g2ylaMlPg621H8 -dlQoECUF -=oRG7 ------END PGP SIGNATURE----- diff --git a/icu4c-72_1-src.tgz b/icu4c-72_1-src.tgz deleted file mode 100644 index 730e41b..0000000 --- a/icu4c-72_1-src.tgz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a2d2d38217092a7ed56635e34467f92f976b370e20182ad325edea6681a71d68 -size 26303933 diff --git a/icu4c-72_1-src.tgz.asc b/icu4c-72_1-src.tgz.asc deleted file mode 100644 index d72a6a1..0000000 --- a/icu4c-72_1-src.tgz.asc +++ /dev/null @@ -1,14 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQGzBAABCgAdFiEEPaNTAafDMCV7h1V1QFj2dAbqpqsFAmNPTl8ACgkQQFj2dAbq -pqvbAQv/d2G+tZ7ia1S6GM6s4fqAGsZLxTcuvDx0B/betBsPa9JAvdacK6kNKoDW -Eodo0PPhQPsJrtmIMcXXUaJUFnF0HN+DPSgd0sD+95rnzD/LTMGfA8Pjj0k/XJud -M6XyDPeTnr16J5a/iGGKLcCeDdw5B7EbiM4PYJ/UMmMrMg6JnyFQ0V26ii71cs0M -qwM1SVg7LX2sbDyyuRKxZ0C1e6QnBJyR+sDQU+CxuhYfrH8bdAZcjdTx/nbqWCaE -UI60XYAEnIP6BUWAcof63EAWwn7WfSJP9dmLRMnxH0CvOP7tpw43p6UScLkvKtvF -SjHBiD5OEgGoEjuiRYElOSMkrZQ/kYQj3EAE2TmMBLYZjC5NwzTaQGpLfuhGDihL -BBMle7iVkWrKrtevKb9gZ6NmKbnZLOst15elxDcs3iWIjpiZU198Hvqba7Iv/gr9 -/0xvjEVdOhv3DRsoQKDXmmxaP5yLRBjOwgJpfSkxnwT3V2GSK+zafubdNgbvmVJz -1r+1Sag6 -=019E ------END PGP SIGNATURE----- diff --git a/icu4c-73_1-docs.zip b/icu4c-73_1-docs.zip new file mode 100644 index 0000000..deaf002 --- /dev/null +++ b/icu4c-73_1-docs.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:296dbf8113f4269ec0e057c3c2148e758137dad92672706996e100d01f628617 +size 8516388 diff --git a/icu4c-73_1-docs.zip.asc b/icu4c-73_1-docs.zip.asc new file mode 100644 index 0000000..82e6813 --- /dev/null +++ b/icu4c-73_1-docs.zip.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCAAdFiEE/6kSmhgNdlt6W+ocm0MrJ9G6INcFAmQ4ep8ACgkQm0MrJ9G6 +INdLDA//ZkZffBOHFjJNK+fOM6XxUNF4O/NIUGuvU286qmx06NkPS50CPEs8PN4l +ug0xYraTBOzbv/ZBWiMnMKPhr3Rc6qgLlXt0XUBKiKQj6AAp2AXB0XDrB2/Ehsy8 +R6bEDZJeslLT/GXEWee3NjN+vqqeFbTo/YA5Igxn8c4CQk+164m4wX0Q46zt6uSA +kIvvYhz2H46rv5Lu6CVRlZzPU9ViYiq14vooKcwkxgt0IRffi8onMOktuSayPmqd +89HuCNpT6GFQYZvMcHaYDty//PIEjjoGK4/nGNbUytupQvG9D1OeVnxQ0bgI3jPm +DD2Rt2WPV9c6S31fIkfZwbQ8j3dtZ0CR4SKOd1GeGNYxLSuNHFeL+8ywNu2NsdtZ +KPOq6jJjZnERNFZ1XbHe6cq5V0Hrpr/JsN8QaQKgO7nkwKHfC4epoIR+p54WNUAz +mJmC7Hc5I4I2NEwhG3VfR8Xqb8M7J/psLj6E0tC1xGiGx8p+pEZKdZnCKkVIva7f +jbWxYKLiBPKq8Uf6RJNmuMnitx4uyzcPjk91T0PdHnKzJtqEAb/MfzPbWGd1GynI +hzt5yp6gWpsdclU7CGy7pTYjdASwOJ4ANkkzGEE/Wg4b6G+SWECposcUQmWPIVvh +I9qTQ9REGnEYBVI5uIEd2c0a77/eJuRGWWZzTMc7Tq7BLowUya0= +=sDiT +-----END PGP SIGNATURE----- diff --git a/icu4c-73_1-src.tgz b/icu4c-73_1-src.tgz new file mode 100644 index 0000000..fe8393d --- /dev/null +++ b/icu4c-73_1-src.tgz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a457431de164b4aa7eca00ed134d00dfbf88a77c6986a10ae7774fc076bb8c45 +size 26512935 diff --git a/icu4c-73_1-src.tgz.asc b/icu4c-73_1-src.tgz.asc new file mode 100644 index 0000000..4c28ae1 --- /dev/null +++ b/icu4c-73_1-src.tgz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCAAdFiEE/6kSmhgNdlt6W+ocm0MrJ9G6INcFAmQ4ep8ACgkQm0MrJ9G6 +INcv0g/8CZon+MBUh17EBKOSmKkmFD0m7JmIbWXA0fnIqNBCQIDgzmc6E6csspS+ +cSq4tExQZ/tINlgYPZfwuDlRMQhTTLVrUQ5jTiKvroe8rXFOowNjjstLQR4ItMnb +5gfcPS+ZRjvdhvecMK0WALX4LCIZOyDkNwCQW6aOxHnhu85nmr3xA3CDS6pXXzSo +xDjWV7TgWOjT3SVX+tPuUxAb7qW9t0xTQ0i7wlP4ikp03CboghYwWBMGwI9ChcW/ +MK8xUXSf76Z6+ZdfEG7rZjkFnWU3ixz9HZfh96XrcilZPqGBvb31F3PEloHzZqF6 +8TM2bXLs4gRWa/3tZQzjbqkpptLGh5Hdxudy4Fb02DQn80hrsMc5zbxzPqtjrA2U +e40dx2BDglu7jNzdPQlkawWmiLIEP5DEDWXiGiVeDCzPNnFz4DSH4qjfC0naO1Xd +DfTbvIR6KAsPh6y5Ce/l0vZLn5BlXy1pPy10cslRECEpgcI4MUIJhEOIWikRmkq7 +n8DECy2Jycd114QlddojkrkBptxO0bJtomjkBfQwjGmG4we3IlzmizT4zHywnxtc +PRMyNsP9AzIVlu8Q8M8IMPwdF+DR2oC4VQazts8ciD58G12wco5BUU/ghfMMm4Li +OOGdS3h3Y7XfXzelY0OAY1J5kHafZ0xoQA3cCMXqPvEhZ0xnLEY= +=gvDN +-----END PGP SIGNATURE----- From f142a078404f27ea6f37f5859e3e80f4168d4aff3ece8908baee5d3db30a8329 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Fri, 14 Apr 2023 10:58:30 +0000 Subject: [PATCH 2/3] OBS-URL: https://build.opensuse.org/package/show/X11:common:Factory/icu?expand=0&rev=165 --- icu.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/icu.spec b/icu.spec index 04fcc02..6849589 100644 --- a/icu.spec +++ b/icu.spec @@ -36,6 +36,7 @@ Source: https://github.com/unicode-org/icu/releases/download/release-73- Source2: https://github.com/unicode-org/icu/releases/download/release-73-1/icu4c-73_1-src.tgz.asc Source3: https://github.com/unicode-org/icu/releases/download/release-73-1/icu4c-73_1-docs.zip Source4: https://github.com/unicode-org/icu/releases/download/release-73-1/icu4c-73_1-docs.zip.asc +Source5: %name.keyring Source100: baselibs.conf Patch4: icu-fix-install-mode-files.diff Patch6: icu-error-reporting.diff From 3d0c34cfd35e99a2e09e6a3f035bade907987aa64d3b59b98a7b746b3389524a Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Thu, 25 May 2023 20:10:44 +0000 Subject: [PATCH 3/3] Accepting request 1089033 from home:gmbr3:Active - Add icu-UCHAR-uint16t.patch: fixes builds where UCHAR_TYPE is re-defined such as libqt5-qtwebengine OBS-URL: https://build.opensuse.org/request/show/1089033 OBS-URL: https://build.opensuse.org/package/show/X11:common:Factory/icu?expand=0&rev=166 --- icu-UCHAR-uint16t.patch | 117 ++++++++++++++++++++++++++++++++++++++++ icu.changes | 6 +++ icu.spec | 1 + 3 files changed, 124 insertions(+) create mode 100644 icu-UCHAR-uint16t.patch diff --git a/icu-UCHAR-uint16t.patch b/icu-UCHAR-uint16t.patch new file mode 100644 index 0000000..852e758 --- /dev/null +++ b/icu-UCHAR-uint16t.patch @@ -0,0 +1,117 @@ +From 4fd9d6ce9a951e66e727b296138f22cd05479de1 Mon Sep 17 00:00:00 2001 +From: Fredrik Roubert +Date: Tue, 18 Apr 2023 23:39:28 +0200 +Subject: [PATCH] ICU-22356 Use ConstChar16Ptr to safely cast from UChar* to + char16_t*. + +This is necessary for this header file to be usable by clients that +define UCHAR_TYPE as a type not compatible with char16_t, eg. uint16_t. +--- + icu4c/source/common/unicode/ures.h | 9 +++++---- + icu4c/source/test/intltest/Makefile.in | 2 +- + icu4c/source/test/intltest/intltest.vcxproj | 1 + + icu4c/source/test/intltest/intltest.vcxproj.filters | 3 +++ + icu4c/source/test/intltest/uchar_type_build_test.cpp | 7 +++++++ + 5 files changed, 17 insertions(+), 5 deletions(-) + create mode 100644 icu4c/source/test/intltest/uchar_type_build_test.cpp + +diff --git a/icu4c/source/common/unicode/ures.h b/icu4c/source/common/unicode/ures.h +index cc25b6e49cd..babc01d426a 100644 +--- icu4c/source/common/unicode/ures.h ++++ icu4c/source/common/unicode/ures.h +@@ -25,6 +25,7 @@ + #ifndef URES_H + #define URES_H + ++#include "unicode/char16ptr.h" + #include "unicode/utypes.h" + #include "unicode/uloc.h" + +@@ -812,7 +813,7 @@ inline UnicodeString + ures_getUnicodeString(const UResourceBundle *resB, UErrorCode* status) { + UnicodeString result; + int32_t len = 0; +- const char16_t *r = ures_getString(resB, &len, status); ++ const char16_t *r = ConstChar16Ptr(ures_getString(resB, &len, status)); + if(U_SUCCESS(*status)) { + result.setTo(true, r, len); + } else { +@@ -837,7 +838,7 @@ inline UnicodeString + ures_getNextUnicodeString(UResourceBundle *resB, const char ** key, UErrorCode* status) { + UnicodeString result; + int32_t len = 0; +- const char16_t* r = ures_getNextString(resB, &len, key, status); ++ const char16_t* r = ConstChar16Ptr(ures_getNextString(resB, &len, key, status)); + if(U_SUCCESS(*status)) { + result.setTo(true, r, len); + } else { +@@ -859,7 +860,7 @@ inline UnicodeString + ures_getUnicodeStringByIndex(const UResourceBundle *resB, int32_t indexS, UErrorCode* status) { + UnicodeString result; + int32_t len = 0; +- const char16_t* r = ures_getStringByIndex(resB, indexS, &len, status); ++ const char16_t* r = ConstChar16Ptr(ures_getStringByIndex(resB, indexS, &len, status)); + if(U_SUCCESS(*status)) { + result.setTo(true, r, len); + } else { +@@ -882,7 +883,7 @@ inline UnicodeString + ures_getUnicodeStringByKey(const UResourceBundle *resB, const char* key, UErrorCode* status) { + UnicodeString result; + int32_t len = 0; +- const char16_t* r = ures_getStringByKey(resB, key, &len, status); ++ const char16_t* r = ConstChar16Ptr(ures_getStringByKey(resB, key, &len, status)); + if(U_SUCCESS(*status)) { + result.setTo(true, r, len); + } else { +diff --git a/icu4c/source/test/intltest/Makefile.in b/icu4c/source/test/intltest/Makefile.in +index 8007d3c1880..f57f8d995f4 100644 +--- icu4c/source/test/intltest/Makefile.in ++++ icu4c/source/test/intltest/Makefile.in +@@ -70,7 +70,7 @@ numbertest_parse.o numbertest_doubleconversion.o numbertest_skeletons.o \ + static_unisets_test.o numfmtdatadriventest.o numbertest_range.o erarulestest.o \ + formattedvaluetest.o formatted_string_builder_test.o numbertest_permutation.o \ + units_data_test.o units_router_test.o units_test.o displayoptions_test.o \ +-numbertest_simple.o ++numbertest_simple.o uchar_type_build_test.o + + DEPS = $(OBJECTS:.o=.d) + +diff --git a/icu4c/source/test/intltest/intltest.vcxproj b/icu4c/source/test/intltest/intltest.vcxproj +index 0985ba1e808..71ce1254038 100644 +--- icu4c/source/test/intltest/intltest.vcxproj ++++ icu4c/source/test/intltest/intltest.vcxproj +@@ -291,6 +291,7 @@ + + + ++ + + + +diff --git a/icu4c/source/test/intltest/intltest.vcxproj.filters b/icu4c/source/test/intltest/intltest.vcxproj.filters +index ffe9bc1467d..5d8777c5aaf 100644 +--- icu4c/source/test/intltest/intltest.vcxproj.filters ++++ icu4c/source/test/intltest/intltest.vcxproj.filters +@@ -568,6 +568,9 @@ + + formatting + ++ ++ configuration ++ + + + +diff --git a/icu4c/source/test/intltest/uchar_type_build_test.cpp b/icu4c/source/test/intltest/uchar_type_build_test.cpp +new file mode 100644 +index 00000000000..ca9335441a3 +--- /dev/null ++++ icu4c/source/test/intltest/uchar_type_build_test.cpp +@@ -0,0 +1,7 @@ ++// © 2023 and later: Unicode, Inc. and others. ++// License & terms of use: http://www.unicode.org/copyright.html#License ++ ++// ICU-22356 Test that client code can be built with UCHAR_TYPE redefined. ++#undef UCHAR_TYPE ++#define UCHAR_TYPE uint16_t ++#include "unicode/ures.h" diff --git a/icu.changes b/icu.changes index 380ee59..84aef09 100644 --- a/icu.changes +++ b/icu.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu May 25 12:52:50 UTC 2023 - Callum Farmer + +- Add icu-UCHAR-uint16t.patch: fixes builds where UCHAR_TYPE is + re-defined such as libqt5-qtwebengine + ------------------------------------------------------------------- Thu Apr 13 23:05:00 UTC 2023 - Jan Engelhardt diff --git a/icu.spec b/icu.spec index 6849589..d53072b 100644 --- a/icu.spec +++ b/icu.spec @@ -43,6 +43,7 @@ Patch6: icu-error-reporting.diff Patch7: icu-avoid-x87-excess-precision.diff Patch8: locale.diff Patch9: nan-undefined-conversion.patch +Patch10: icu-UCHAR-uint16t.patch BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: pkg-config