- Drop icu-versioning.diff, icu-susevers.diff [boo#1159131]

OBS-URL: https://build.opensuse.org/package/show/X11:common:Factory/icu?expand=0&rev=124
This commit is contained in:
Jan Engelhardt 2020-03-15 18:07:02 +00:00 committed by Git OBS Bridge
parent 3025f1c5bb
commit 1185402017
5 changed files with 9 additions and 245 deletions

View File

@ -1,4 +1,4 @@
libicu-suse66_1
libicu-suse66
libicu-devel
requires -libicu-<targettype>
requires "libicu-suse66_1-<targettype> = <version>"
requires "libicu-suse66-<targettype> = <version>"

View File

@ -1,40 +0,0 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2018-06-04 09:47:12.535168981 +0200
References: http://bugzilla.suse.com/show_bug.cgi?id=1095425
Because of bug #1095425, IS_UTF8=0 is wanted. Since that changes the C++ABI of
class UnicodeString, the library would become incompatible to a default build
that 3rd party programs might expect, and so we need to change the SO
identifier to something unique.
---
source/common/unicode/platform.h | 2 +-
source/icudefs.mk.in | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
Index: icu/source/common/unicode/platform.h
===================================================================
--- icu.orig/source/common/unicode/platform.h
+++ icu/source/common/unicode/platform.h
@@ -649,7 +649,7 @@ namespace std {
/* Use the predefined value. */
#elif U_PLATFORM_IS_LINUX_BASED || U_PLATFORM_IS_DARWIN_BASED || \
U_PLATFORM == U_PF_EMSCRIPTEN
-# define U_CHARSET_IS_UTF8 1
+# define U_CHARSET_IS_UTF8 0
#else
# define U_CHARSET_IS_UTF8 0
#endif
Index: icu/source/icudefs.mk.in
===================================================================
--- icu.orig/source/icudefs.mk.in
+++ icu/source/icudefs.mk.in
@@ -44,7 +44,7 @@ PACKAGE_ICU_URL = "http://icu-project.or
PACKAGE = @PACKAGE@
VERSION = @VERSION@
UNICODE_VERSION = @UNICODE_VERSION@
-SO_TARGET_VERSION = @LIB_VERSION@
+SO_TARGET_VERSION = suse@LIB_VERSION@
SO_TARGET_VERSION_MAJOR = @LIB_VERSION_MAJOR@
# The ICU data external name is usually icudata; the entry point name is

View File

@ -1,199 +0,0 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2013-06-11 03:36:48.480850779 +0200
References: http://bugzilla.novell.com/824262
Directions: drop patch if unable to forward-port
ICU sometimes changes their ABI without updating the SO numbers. They
did that before, and they did it again with 51.1->51.2. In part, this
is owed to how C++ is compiled on the contemporary implementations.
Thus, we will use the full version as the SO identifier in openSUSE.
Details:
U_ICU_VERSION_SHORT was (example) "51" before when there was a
libicui18n.so.51. Now, since there is a libicui18n.so.51.2, we need to
change U_ICU_VERSION_SHORT. But the define's documentation says
"without dots", and I do not know how much downstream code depends on
the non-dot feature, if at all. Anyhow, to bypass this question to
which we have no definite answer, U_ICU_VERSION_SHORT is instead simply
defined to "51_2" and we "fix" (read like: hack) it with symlinks.
However, the ICU source also uses U_ICU_VERSION_SHORT to construct the
path to its data files. However, as there is no "icudt51_2l.dat", but
only a "icudt51l.dat", U_ICU_VERSION_MAJOR_STR is introduced for
ICU-internal use, so that I do not have to edit more dirty Makefiles to
produce a "icudt51_2l.dat" instead. In fact, placing the version number
in "icudt51l" seems redundant, since that file is in a version-specific
directory anyway (/usr/share/icu/51.2/) — another point where ICU
development seems to not pay enough attention.
---
source/common/icuplug.cpp | 2 +-
source/common/unicode/utypes.h | 4 ++--
source/common/unicode/uvernum.h | 7 +++++--
source/config/mh-linux | 2 +-
source/config/pkgdataMakefile.in | 1 +
source/data/pkgdataMakefile.in | 1 +
source/extra/uconv/pkgdataMakefile.in | 1 +
source/icudefs.mk.in | 1 +
source/test/testdata/pkgdataMakefile.in | 1 +
source/tools/pkgdata/pkgdata.cpp | 4 ++--
10 files changed, 16 insertions(+), 8 deletions(-)
Index: icu/source/common/icuplug.cpp
===================================================================
--- icu.orig/source/common/icuplug.cpp
+++ icu/source/common/icuplug.cpp
@@ -760,7 +760,7 @@ uplug_init(UErrorCode *status) {
pluginFile.append(plugin_dir, *status);
pluginFile.append(U_FILE_SEP_STRING, -1, *status);
pluginFile.append("icuplugins", -1, *status);
- pluginFile.append(U_ICU_VERSION_SHORT, -1, *status);
+ pluginFile.append(U_ICU_VERSION_MAJOR_STR, -1, *status);
pluginFile.append(".txt", -1, *status);
#endif
Index: icu/source/common/unicode/utypes.h
===================================================================
--- icu.orig/source/common/unicode/utypes.h
+++ icu/source/common/unicode/utypes.h
@@ -136,9 +136,9 @@
* ICU 1.8.x on EBCDIC, etc..
* @stable ICU 2.0
*/
-#define U_ICUDATA_NAME "icudt" U_ICU_VERSION_SHORT U_ICUDATA_TYPE_LETTER
+#define U_ICUDATA_NAME "icudt" U_ICU_VERSION_MAJOR_STR U_ICUDATA_TYPE_LETTER
#ifndef U_HIDE_INTERNAL_API
-#define U_USRDATA_NAME "usrdt" U_ICU_VERSION_SHORT U_ICUDATA_TYPE_LETTER /**< @internal */
+#define U_USRDATA_NAME "usrdt" U_ICU_VERSION_MAJOR_STR U_ICUDATA_TYPE_LETTER /**< @internal */
#define U_USE_USRDATA 0 /**< @internal */
#endif /* U_HIDE_INTERNAL_API */
Index: icu/source/common/unicode/uvernum.h
===================================================================
--- icu.orig/source/common/unicode/uvernum.h
+++ icu/source/common/unicode/uvernum.h
@@ -61,6 +61,7 @@
* @stable ICU 2.4
*/
#define U_ICU_VERSION_MAJOR_NUM 66
+#define U_ICU_VERSION_MAJOR_STR "66"
/** The current ICU minor version as an integer.
* This value will change in the subsequent releases of ICU
@@ -86,7 +87,9 @@
* This value will change in the subsequent releases of ICU
* @stable ICU 2.6
*/
-#define U_ICU_VERSION_SUFFIX _66
+#define ___icu_version_expand(major, minor) _ ## major ## _ ## minor
+#define ___icu_version_glue(major, minor) ___icu_version_expand(major, minor)
+#define U_ICU_VERSION_SUFFIX ___icu_version_glue(U_ICU_VERSION_MAJOR_NUM, U_ICU_VERSION_MINOR_NUM)
/**
* \def U_DEF2_ICU_ENTRY_POINT_RENAME
@@ -152,7 +155,7 @@
*
* @stable ICU 2.6
*/
-#define U_ICU_VERSION_SHORT "66"
+#define U_ICU_VERSION_SHORT "66_1"
#ifndef U_HIDE_INTERNAL_API
/** Data version in ICU4C.
Index: icu/source/config/mh-linux
===================================================================
--- icu.orig/source/config/mh-linux
+++ icu/source/config/mh-linux
@@ -27,7 +27,7 @@ LDFLAGSICUDT=-nodefaultlibs -nostdlib
## Compiler switch to embed a library name
# The initial tab in the next line is to prevent icu-config from reading it.
- LD_SONAME = -Wl,-soname -Wl,$(notdir $(MIDDLE_SO_TARGET))
+ LD_SONAME = -Wl,-soname -Wl,$(notdir $(FULL_SO_TARGET))
#SH# # We can't depend on MIDDLE_SO_TARGET being set.
#SH# LD_SONAME=
Index: icu/source/config/pkgdataMakefile.in
===================================================================
--- icu.orig/source/config/pkgdataMakefile.in
+++ icu/source/config/pkgdataMakefile.in
@@ -16,6 +16,7 @@ include $(top_builddir)/icudefs.mk
OUTPUTFILE=pkgdata.inc
MIDDLE_SO_TARGET=
+FULL_SO_TARGET=
PKGDATA_TRAILING_SPACE=" "
all : clean
Index: icu/source/data/pkgdataMakefile.in
===================================================================
--- icu.orig/source/data/pkgdataMakefile.in
+++ icu/source/data/pkgdataMakefile.in
@@ -16,6 +16,7 @@ include $(top_builddir)/icudefs.mk
OUTPUTFILE=icupkg.inc
MIDDLE_SO_TARGET=
+FULL_SO_TARGET=
PKGDATA_TRAILING_SPACE=" "
all : clean
Index: icu/source/extra/uconv/pkgdataMakefile.in
===================================================================
--- icu.orig/source/extra/uconv/pkgdataMakefile.in
+++ icu/source/extra/uconv/pkgdataMakefile.in
@@ -16,6 +16,7 @@ include $(top_builddir)/icudefs.mk
OUTPUTFILE=pkgdata.inc
MIDDLE_SO_TARGET=
+FULL_SO_TARGET=
PKGDATA_TRAILING_SPACE=" "
all : clean
Index: icu/source/icudefs.mk.in
===================================================================
--- icu.orig/source/icudefs.mk.in
+++ icu/source/icudefs.mk.in
@@ -202,6 +202,7 @@ LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH
# Versioned target for a shared library.
FINAL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION)
+FULL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION)
MIDDLE_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION_MAJOR)
SHARED_OBJECT = $(FINAL_SO_TARGET)
Index: icu/source/test/testdata/pkgdataMakefile.in
===================================================================
--- icu.orig/source/test/testdata/pkgdataMakefile.in
+++ icu/source/test/testdata/pkgdataMakefile.in
@@ -16,6 +16,7 @@ include $(top_builddir)/icudefs.mk
OUTPUTFILE=pkgdata.inc
MIDDLE_SO_TARGET=
+FULL_SO_TARGET=
PKGDATA_TRAILING_SPACE=" "
all : clean
Index: icu/source/tools/pkgdata/pkgdata.cpp
===================================================================
--- icu.orig/source/tools/pkgdata/pkgdata.cpp
+++ icu/source/tools/pkgdata/pkgdata.cpp
@@ -1401,7 +1401,7 @@ static int32_t pkg_generateLibraryFile(c
length = static_cast<int32_t>(uprv_strlen(pkgDataFlags[GENLIB]) + uprv_strlen(pkgDataFlags[LDICUDTFLAGS]) +
((uprv_strlen(targetDir) + uprv_strlen(libFileNames[LIB_FILE_VERSION_TMP])) * 2) +
uprv_strlen(objectFile) + uprv_strlen(pkgDataFlags[LD_SONAME]) +
- uprv_strlen(pkgDataFlags[LD_SONAME][0] == 0 ? "" : libFileNames[LIB_FILE_VERSION_MAJOR]) +
+ uprv_strlen(pkgDataFlags[LD_SONAME][0] == 0 ? "" : libFileNames[LIB_FILE_VERSION]) +
uprv_strlen(pkgDataFlags[RPATH_FLAGS]) + uprv_strlen(pkgDataFlags[BIR_FLAGS]) + BUFFER_PADDING_SIZE);
#if U_PLATFORM == U_PF_CYGWIN
length += static_cast<int32_t>(uprv_strlen(targetDir) + uprv_strlen(libFileNames[LIB_FILE_CYGWIN_VERSION]));
@@ -1448,7 +1448,7 @@ static int32_t pkg_generateLibraryFile(c
#endif
objectFile,
pkgDataFlags[LD_SONAME],
- pkgDataFlags[LD_SONAME][0] == 0 ? "" : libFileNames[LIB_FILE_VERSION_MAJOR],
+ pkgDataFlags[LD_SONAME][0] == 0 ? "" : libFileNames[LIB_FILE_VERSION],
pkgDataFlags[RPATH_FLAGS],
pkgDataFlags[BIR_FLAGS]);

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Sun Mar 15 17:52:41 UTC 2020 - Jan Engelhardt <jengelh@inai.de>
- Drop icu-versioning.diff, icu-susevers.diff [boo#1159131]
-------------------------------------------------------------------
Sun Mar 15 17:17:11 UTC 2020 - Ismail Dönmez <idonmez@suse.com>

View File

@ -16,9 +16,9 @@
#
%define lname libicu-suse66_1
%define lname libicu-suse66
%define amajor 66
%define aversion 66_1
%define aversion 66
%ifarch %armb hppa mips mips64 ppc ppc64 %sparc s390 s390x m68k
%define be_platform 1
%else
@ -40,8 +40,6 @@ Source3: https://github.com/unicode-org/icu/releases/download/release-66-
Source4: https://github.com/unicode-org/icu/releases/download/release-66-1/icu4c-66_1-docs.zip.asc
Source5: %name.keyring
Source100: baselibs.conf
Patch2: icu-versioning.diff
Patch3: icu-susevers.diff
Patch4: icu-fix-install-mode-files.diff
Patch6: icu-error-reporting.diff
Patch7: icu-avoid-x87-excess-precision.diff