[packages/icu] up to 73.2 (new sonames)
atler
atler at pld-linux.org
Thu Jun 29 18:29:00 CEST 2023
commit 2a8766e555fef24db8adf738ba57beda57f14892
Author: Jan Palus <atler at pld-linux.org>
Date: Thu Jun 29 17:48:54 2023 +0200
up to 73.2 (new sonames)
- drop cxx-pre11 patch -- codebase uses more c++11 features than just
nullptr hence it needs to be extended. if anyone decides to continue
this effort please fix U_HASH_NULLPTR_T typo when bringing patch back
icu-cxx-pre11.patch | 178 ----------------------------------------------------
icu.spec | 10 ++-
2 files changed, 4 insertions(+), 184 deletions(-)
---
diff --git a/icu.spec b/icu.spec
index 95b2f7e..0f42c07 100644
--- a/icu.spec
+++ b/icu.spec
@@ -7,14 +7,13 @@
Summary: International Components for Unicode
Summary(pl.UTF-8): Międzynarodowe komponenty dla unikodu
Name: icu
-Version: 72.1
+Version: 73.2
Release: 1
License: MIT-like
Group: Libraries
-Source0: https://github.com/unicode-org/icu/releases/download/release-72-1/icu4c-%{ver}-src.tgz
-# Source0-md5: 4de6484a6c460d3d1468a6fe50369439
-Patch0: %{name}-cxx-pre11.patch
-Patch1: icudata-stdlibs.patch
+Source0: https://github.com/unicode-org/icu/releases/download/release-73-2/icu4c-%{ver}-src.tgz
+# Source0-md5: b8a4b8cf77f2e2f6e1341eac0aab2fc4
+Patch0: icudata-stdlibs.patch
URL: http://site.icu-project.org/
BuildRequires: autoconf >= 2.69
BuildRequires: autoconf-archive
@@ -99,7 +98,6 @@ biblioteki programistyczne ICU.
%prep
%setup -q -n %{name}
%patch0 -p1
-%patch1 -p1
%build
cd source
diff --git a/icu-cxx-pre11.patch b/icu-cxx-pre11.patch
deleted file mode 100644
index fc85740..0000000
--- a/icu-cxx-pre11.patch
+++ /dev/null
@@ -1,178 +0,0 @@
-diff -ruNp icu.orig/source/common/unicode/char16ptr.h icu/source/common/unicode/char16ptr.h
---- icu.orig/source/common/unicode/char16ptr.h 2018-06-21 11:39:21.000000000 +0200
-+++ icu/source/common/unicode/char16ptr.h 2018-08-23 19:27:23.581839560 +0200
-@@ -59,12 +59,14 @@ public:
- */
- inline Char16Ptr(wchar_t *p);
- #endif
-+#ifdef U_HAS_NULLPTR_T
- /**
- * nullptr constructor.
- * @param p nullptr
- * @stable ICU 59
- */
- inline Char16Ptr(std::nullptr_t p);
-+#endif
- /**
- * Destructor.
- * @stable ICU 59
-@@ -112,7 +114,9 @@ Char16Ptr::Char16Ptr(uint16_t *p) : p_(c
- #if U_SIZEOF_WCHAR_T==2
- Char16Ptr::Char16Ptr(wchar_t *p) : p_(cast(p)) {}
- #endif
-+#ifdef U_HAS_NULLPTR_T
- Char16Ptr::Char16Ptr(std::nullptr_t p) : p_(p) {}
-+#endif
- Char16Ptr::~Char16Ptr() {
- U_ALIASING_BARRIER(p_);
- }
-@@ -128,7 +132,9 @@ Char16Ptr::Char16Ptr(uint16_t *p) { u_.u
- #if U_SIZEOF_WCHAR_T==2
- Char16Ptr::Char16Ptr(wchar_t *p) { u_.wp = p; }
- #endif
-+#ifdef U_HAS_NULLPTR_T
- Char16Ptr::Char16Ptr(std::nullptr_t p) { u_.cp = p; }
-+#endif
- Char16Ptr::~Char16Ptr() {}
-
- char16_t *Char16Ptr::get() const { return u_.cp; }
-@@ -164,12 +170,14 @@ public:
- */
- inline ConstChar16Ptr(const wchar_t *p);
- #endif
-+#ifdef U_HAS_NULLPTR_T
- /**
- * nullptr constructor.
- * @param p nullptr
- * @stable ICU 59
- */
- inline ConstChar16Ptr(const std::nullptr_t p);
-+#endif
-
- /**
- * Destructor.
-@@ -218,7 +226,9 @@ ConstChar16Ptr::ConstChar16Ptr(const uin
- #if U_SIZEOF_WCHAR_T==2
- ConstChar16Ptr::ConstChar16Ptr(const wchar_t *p) : p_(cast(p)) {}
- #endif
-+#ifdef U_HAS_NULLPTR_T
- ConstChar16Ptr::ConstChar16Ptr(const std::nullptr_t p) : p_(p) {}
-+#endif
- ConstChar16Ptr::~ConstChar16Ptr() {
- U_ALIASING_BARRIER(p_);
- }
-@@ -234,7 +244,9 @@ ConstChar16Ptr::ConstChar16Ptr(const uin
- #if U_SIZEOF_WCHAR_T==2
- ConstChar16Ptr::ConstChar16Ptr(const wchar_t *p) { u_.wp = p; }
- #endif
-+#ifdef U_HASH_NULLPTR_T
- ConstChar16Ptr::ConstChar16Ptr(const std::nullptr_t p) { u_.cp = p; }
-+#endif
- ConstChar16Ptr::~ConstChar16Ptr() {}
-
- const char16_t *ConstChar16Ptr::get() const { return u_.cp; }
-diff -ruNp icu.orig/source/common/unicode/platform.h icu/source/common/unicode/platform.h
---- icu.orig/source/common/unicode/platform.h 2018-06-21 11:39:21.000000000 +0200
-+++ icu/source/common/unicode/platform.h 2018-08-23 19:28:11.562612934 +0200
-@@ -482,6 +482,10 @@
- namespace std {
- typedef decltype(nullptr) nullptr_t;
- };
-+# define U_HAS_NULLPTR_T 1
-+#elif defined(__cplusplus) && (U_CPLUSPLUS_VERSION >= 11)
-+# define U_HAS_NULLPTR_T 1
-+// else no U_HAS_NULLPTR_T
- #endif
-
- /**
-diff -ruNp icu.orig/source/common/unicode/umachine.h icu/source/common/unicode/umachine.h
---- icu.orig/source/common/unicode/umachine.h 2018-06-21 11:39:21.000000000 +0200
-+++ icu/source/common/unicode/umachine.h 2018-08-23 19:24:06.688770067 +0200
-@@ -295,7 +295,7 @@ typedef int8_t UBool;
- * If 1, then char16_t is a typedef and not a real type (yet)
- * @internal
- */
--#if (U_PLATFORM == U_PF_AIX) && defined(__cplusplus) &&(U_CPLUSPLUS_VERSION < 11)
-+#if ((U_PLATFORM == U_PF_AIX) || defined(__GNUC__)) && defined(__cplusplus) && (U_CPLUSPLUS_VERSION < 11)
- // for AIX, uchar.h needs to be included
- # include <uchar.h>
- # define U_CHAR16_IS_TYPEDEF 1
-diff -ruNp icu.orig/source/common/unicode/unistr.h icu/source/common/unicode/unistr.h
---- icu.orig/source/common/unicode/unistr.h 2018-06-21 11:39:21.000000000 +0200
-+++ icu/source/common/unicode/unistr.h 2018-08-23 19:31:55.790554495 +0200
-@@ -3026,6 +3026,7 @@ public:
- UnicodeString(ConstChar16Ptr(text)) {}
- #endif
-
-+#ifdef U_HAS_NULLPTR_T
- /**
- * nullptr_t constructor.
- * Effectively the same as the default constructor, makes an empty string object.
-@@ -3037,6 +3038,7 @@ public:
- * @stable ICU 59
- */
- UNISTR_FROM_STRING_EXPLICIT inline UnicodeString(const std::nullptr_t text);
-+#endif
-
- /**
- * char16_t* constructor.
-@@ -3073,6 +3075,7 @@ public:
- UnicodeString(ConstChar16Ptr(text), textLength) {}
- #endif
-
-+#ifdef U_HAS_NULLPTR_T
- /**
- * nullptr_t constructor.
- * Effectively the same as the default constructor, makes an empty string object.
-@@ -3081,6 +3084,7 @@ public:
- * @stable ICU 59
- */
- inline UnicodeString(const std::nullptr_t text, int32_t textLength);
-+#endif
-
- /**
- * Readonly-aliasing char16_t* constructor.
-@@ -3155,6 +3159,7 @@ public:
- UnicodeString(Char16Ptr(buffer), buffLength, buffCapacity) {}
- #endif
-
-+#ifdef U_HAS_NULLPTR_T
- /**
- * Writable-aliasing nullptr_t constructor.
- * Effectively the same as the default constructor, makes an empty string object.
-@@ -3164,6 +3169,7 @@ public:
- * @stable ICU 59
- */
- inline UnicodeString(std::nullptr_t buffer, int32_t buffLength, int32_t buffCapacity);
-+#endif
-
- #if U_CHARSET_IS_UTF8 || !UCONFIG_NO_CONVERSION
-
-@@ -3875,6 +3881,7 @@ UnicodeString::UnicodeString() {
- fUnion.fStackFields.fLengthAndFlags=kShortString;
- }
-
-+#ifdef U_HAS_NULLPTR_T
- inline UnicodeString::UnicodeString(const std::nullptr_t /*text*/) {
- fUnion.fStackFields.fLengthAndFlags=kShortString;
- }
-@@ -3886,6 +3893,7 @@ inline UnicodeString::UnicodeString(cons
- inline UnicodeString::UnicodeString(std::nullptr_t /*buffer*/, int32_t /*buffLength*/, int32_t /*buffCapacity*/) {
- fUnion.fStackFields.fLengthAndFlags=kShortString;
- }
-+#endif
-
- //========================================
- // Read-only implementation methods
-@@ -3936,7 +3944,11 @@ UnicodeString::isBufferWritable() const
- inline const char16_t *
- UnicodeString::getBuffer() const {
- if(fUnion.fFields.fLengthAndFlags&(kIsBogus|kOpenGetBuffer)) {
-+#ifdef U_HAS_NULLPTR_T
- return nullptr;
-+#else
-+ return 0;
-+#endif
- } else if(fUnion.fFields.fLengthAndFlags&kUsingStackBuffer) {
- return fUnion.fStackFields.fBuffer;
- } else {
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/icu.git/commitdiff/2a8766e555fef24db8adf738ba57beda57f14892
More information about the pld-cvs-commit
mailing list