From a6c9ac830dfc4ab0b88a3da9627a2bd69c1b71e7e434fc40adbf3841d1b646e4 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sat, 11 Oct 2014 15:53:57 +0000 Subject: [PATCH 1/5] Ensure that bedata is not equal to ledata OBS-URL: https://build.opensuse.org/package/show/X11:common:Factory/icu?expand=0&rev=55 --- icu.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/icu.spec b/icu.spec index efb20f6..32af44f 100644 --- a/icu.spec +++ b/icu.spec @@ -179,7 +179,8 @@ pushd data/ cp in/icudt%{amajor}l.dat out/ %else LD_LIBRARY_PATH="../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH" \ - ../bin/icupkg -tb ./in/icudt%{amajor}l.dat ./out/icudt%{amajor}b.dat + ../bin/icupkg -tb in/icudt%{amajor}l.dat out/icudt%{amajor}b.dat +! cmp in/icudt%{amajor}l.dat out/icudt%{amajor}b.dat %endif popd From ddb1bde728b9014bc044a5d0fa2d23cd8540a5fd52603dc573cc720773d0355d Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sat, 11 Oct 2014 16:52:20 +0000 Subject: [PATCH 2/5] icu-54 OBS-URL: https://build.opensuse.org/package/show/X11:common:Factory/icu?expand=0&rev=56 --- baselibs.conf | 4 ++-- icu-fix-install-mode-files.diff | 8 ++++--- icu-versioning.diff | 38 ++++++++++++++++----------------- icu.changes | 17 +++++++++++++++ icu.spec | 12 +++++------ icu4c-53_1-docs.zip | 3 --- icu4c-53_1-src.tgz | 3 --- icu4c-54_1-docs.zip | 3 +++ icu4c-54_1-src.tgz | 3 +++ 9 files changed, 54 insertions(+), 37 deletions(-) delete mode 100644 icu4c-53_1-docs.zip delete mode 100644 icu4c-53_1-src.tgz create mode 100644 icu4c-54_1-docs.zip create mode 100644 icu4c-54_1-src.tgz diff --git a/baselibs.conf b/baselibs.conf index d3a6b5e..059d8c0 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -1,4 +1,4 @@ -libicu53_1 +libicu54_1 libicu-devel requires -libicu- - requires "libicu53_1- = " + requires "libicu54_1- = " diff --git a/icu-fix-install-mode-files.diff b/icu-fix-install-mode-files.diff index 30b15ba..57e1dc4 100644 --- a/icu-fix-install-mode-files.diff +++ b/icu-fix-install-mode-files.diff @@ -17,14 +17,14 @@ user account/DESTDIR install. mkdir: cannot create directory '/usr/share/icu': Permission denied --- - source/data/Makefile.in | 18 +++++++++--------- - 1 file changed, 9 insertions(+), 9 deletions(-) + source/data/Makefile.in | 20 ++++++++++---------- + 1 file changed, 10 insertions(+), 10 deletions(-) Index: icu/source/data/Makefile.in =================================================================== --- icu.orig/source/data/Makefile.in +++ icu/source/data/Makefile.in -@@ -191,15 +191,15 @@ endif +@@ -196,16 +196,16 @@ endif install-local: $(PKGDATA_LIST) ./icupkg.inc packagedata $(OS390INSTALL) $(MKINSTALLDIRS) $(TMPDATADIR) $(DESTDIR)$(ICUPKGDATA_DIR) ifeq ($(PKGDATA_MODE),files) @@ -33,6 +33,7 @@ Index: icu/source/data/Makefile.in - $(MKINSTALLDIRS) $(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(LANG_TREE) - $(MKINSTALLDIRS) $(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(REGION_TREE) - $(MKINSTALLDIRS) $(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(ZONE_TREE) +- $(MKINSTALLDIRS) $(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(UNIT_TREE) - $(MKINSTALLDIRS) $(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(BREAK_TREE) - $(MKINSTALLDIRS) $(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(COLLATION_TREE) - $(MKINSTALLDIRS) $(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(RBNF_TREE) @@ -42,6 +43,7 @@ Index: icu/source/data/Makefile.in + $(MKINSTALLDIRS) $(DESTDIR)$(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(LANG_TREE) + $(MKINSTALLDIRS) $(DESTDIR)$(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(REGION_TREE) + $(MKINSTALLDIRS) $(DESTDIR)$(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(ZONE_TREE) ++ $(MKINSTALLDIRS) $(DESTDIR)$(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(UNIT_TREE) + $(MKINSTALLDIRS) $(DESTDIR)$(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(BREAK_TREE) + $(MKINSTALLDIRS) $(DESTDIR)$(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(COLLATION_TREE) + $(MKINSTALLDIRS) $(DESTDIR)$(ICUPKGDATA_DIR)/$(ICUDATA_NAME)/$(RBNF_TREE) diff --git a/icu-versioning.diff b/icu-versioning.diff index b10ee93..e3950be 100644 --- a/icu-versioning.diff +++ b/icu-versioning.diff @@ -29,7 +29,7 @@ directory anyway (/usr/share/icu/51.2/) — another point where ICU development seems to not pay enough attention. --- - source/common/icuplug.c | 2 +- + source/common/icuplug.cpp | 2 +- source/common/umapfile.c | 6 +++--- source/common/unicode/utypes.h | 4 ++-- source/common/unicode/uvernum.h | 7 +++++-- @@ -42,19 +42,19 @@ development seems to not pay enough attention. source/tools/pkgdata/pkgdata.cpp | 4 ++-- 11 files changed, 19 insertions(+), 11 deletions(-) -Index: icu/source/common/icuplug.c +Index: icu/source/common/icuplug.cpp =================================================================== ---- icu.orig/source/common/icuplug.c -+++ icu/source/common/icuplug.c -@@ -744,7 +744,7 @@ uplug_init(UErrorCode *status) { - uprv_strncpy(plugin_file, plugin_dir, 2047); - uprv_strncat(plugin_file, U_FILE_SEP_STRING,2047); - uprv_strncat(plugin_file, "icuplugins",2047); -- uprv_strncat(plugin_file, U_ICU_VERSION_SHORT ,2047); -+ uprv_strncat(plugin_file, U_ICU_VERSION_MAJOR_STR, 2047); - uprv_strncat(plugin_file, ".txt" ,2047); +--- icu.orig/source/common/icuplug.cpp ++++ icu/source/common/icuplug.cpp +@@ -751,7 +751,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/umapfile.c =================================================================== --- icu.orig/source/common/umapfile.c @@ -104,8 +104,8 @@ Index: icu/source/common/unicode/uvernum.h @@ -58,6 +58,7 @@ * @stable ICU 2.4 */ - #define U_ICU_VERSION_MAJOR_NUM 53 -+#define U_ICU_VERSION_MAJOR_STR "53" + #define U_ICU_VERSION_MAJOR_NUM 54 ++#define U_ICU_VERSION_MAJOR_STR "54" /** The current ICU minor version as an integer. * This value will change in the subsequent releases of ICU @@ -113,7 +113,7 @@ Index: icu/source/common/unicode/uvernum.h * This value will change in the subsequent releases of ICU * @stable ICU 2.6 */ --#define U_ICU_VERSION_SUFFIX _53 +-#define U_ICU_VERSION_SUFFIX _54 +#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) @@ -124,8 +124,8 @@ Index: icu/source/common/unicode/uvernum.h * This value will change in the subsequent releases of ICU * @stable ICU 2.6 */ --#define U_ICU_VERSION_SHORT "53" -+#define U_ICU_VERSION_SHORT "53_1" +-#define U_ICU_VERSION_SHORT "54" ++#define U_ICU_VERSION_SHORT "54_1" #ifndef U_HIDE_INTERNAL_API /** Data version in ICU4C. @@ -206,7 +206,7 @@ Index: icu/source/tools/pkgdata/pkgdata.cpp =================================================================== --- icu.orig/source/tools/pkgdata/pkgdata.cpp +++ icu/source/tools/pkgdata/pkgdata.cpp -@@ -1273,7 +1273,7 @@ static int32_t pkg_generateLibraryFile(c +@@ -1346,7 +1346,7 @@ static int32_t pkg_generateLibraryFile(c length = 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]) + @@ -215,7 +215,7 @@ Index: icu/source/tools/pkgdata/pkgdata.cpp uprv_strlen(pkgDataFlags[RPATH_FLAGS]) + uprv_strlen(pkgDataFlags[BIR_FLAGS]) + BUFFER_PADDING_SIZE; #if U_PLATFORM == U_PF_CYGWIN length += uprv_strlen(targetDir) + uprv_strlen(libFileNames[LIB_FILE_CYGWIN_VERSION]); -@@ -1320,7 +1320,7 @@ static int32_t pkg_generateLibraryFile(c +@@ -1393,7 +1393,7 @@ static int32_t pkg_generateLibraryFile(c #endif objectFile, pkgDataFlags[LD_SONAME], diff --git a/icu.changes b/icu.changes index b12d50d..fa16dcd 100644 --- a/icu.changes +++ b/icu.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Sat Oct 11 15:55:39 UTC 2014 - jengelh@inai.de + +- Update to new upstream release 54.1 +* Unicode 7.0: Unicode 7.0 adds a total of 2,834 characters, + encompassing 23 new scripts, two currency symbols (manat & + ruble), many new pictographic and geometric symbols, and + character additions to many existing scripts. +* CLDR 26: 77 languages with 100% modern coverage, more & improved + data, many more measurement units. +* ICU is now C++11 +- Remove icu-rpmlint.diff (solved differently upstream), + icu-fix-tests-depending-on-date.patch (solved differently + upstream, also take note of + http://bugs.icu-project.org/trac/ticket/10937 it may need to be + reinstated) + ------------------------------------------------------------------- Mon Sep 8 09:21:42 UTC 2014 - schwab@suse.de diff --git a/icu.spec b/icu.spec index 32af44f..d42cd98 100644 --- a/icu.spec +++ b/icu.spec @@ -16,11 +16,11 @@ # -%define lname libicu53_1 -%define amajor 53 -%define aversion 53_1 +%define lname libicu54_1 +%define amajor 54 +%define aversion 54_1 Name: icu -Version: 53.1 +Version: 54.1 Release: 0 Summary: International Components for Unicode License: MIT @@ -31,11 +31,9 @@ Source: http://download.icu-project.org/files/icu4c/%version/icu4c-%aver Source2: http://download.icu-project.org/files/icu4c/%version/icu4c-%aversion-docs.zip Source3: sanitize_docs.sh Source100: baselibs.conf -Patch1: icu-rpmlint.diff Patch2: icu-remove-datetime.patch Patch3: icu-versioning.diff Patch4: icu-fix-install-mode-files.diff -Patch5: icu-fix-tests-depending-on-date.patch Patch6: icu-error-reporting.diff BuildRequires: fdupes BuildRequires: gcc-c++ @@ -161,7 +159,7 @@ cd html unzip %SOURCE2 cd .. -%patch -P 1 -P 2 -P 3 -P 4 -P 5 -P 6 -p1 +%patch -P 2 -P 3 -P 4 -P 6 -p1 %build cd source diff --git a/icu4c-53_1-docs.zip b/icu4c-53_1-docs.zip deleted file mode 100644 index 890127b..0000000 --- a/icu4c-53_1-docs.zip +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2c700534d52b98615b4baffcf0502f37540604e67817625f05d6e2fbf98d0c0b -size 7943243 diff --git a/icu4c-53_1-src.tgz b/icu4c-53_1-src.tgz deleted file mode 100644 index ea7eda1..0000000 --- a/icu4c-53_1-src.tgz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6fa74fb5aac070c23eaba1711a7178fe582c59867484c5ec07c49002787a9a28 -size 23218952 diff --git a/icu4c-54_1-docs.zip b/icu4c-54_1-docs.zip new file mode 100644 index 0000000..0958293 --- /dev/null +++ b/icu4c-54_1-docs.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:879fbfc4f0609c1ed113496ebea7dc5e531b95f2d8507ec50b2262adbe96b2e8 +size 7753514 diff --git a/icu4c-54_1-src.tgz b/icu4c-54_1-src.tgz new file mode 100644 index 0000000..116a7cc --- /dev/null +++ b/icu4c-54_1-src.tgz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d42bc9a8ca6a91c55eb0925c279f49e5b508d51ef26ac9850d9be55de5bb8ab3 +size 25485678 From 39122f2dfbe728b8981a7b949e38b2ef3449a4f0b00e494f1dfec9bd7b306677 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sat, 11 Oct 2014 16:53:31 +0000 Subject: [PATCH 3/5] OBS-URL: https://build.opensuse.org/package/show/X11:common:Factory/icu?expand=0&rev=57 --- icu.changes | 1 - 1 file changed, 1 deletion(-) diff --git a/icu.changes b/icu.changes index fa16dcd..a03e81a 100644 --- a/icu.changes +++ b/icu.changes @@ -8,7 +8,6 @@ Sat Oct 11 15:55:39 UTC 2014 - jengelh@inai.de character additions to many existing scripts. * CLDR 26: 77 languages with 100% modern coverage, more & improved data, many more measurement units. -* ICU is now C++11 - Remove icu-rpmlint.diff (solved differently upstream), icu-fix-tests-depending-on-date.patch (solved differently upstream, also take note of From f7e823122a5301ca1b36b1942164097d96bd5a800faa147dcd48006f9e14cf44 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sat, 18 Oct 2014 17:51:42 +0000 Subject: [PATCH 4/5] osc ar; osc ci - remove deleted patches OBS-URL: https://build.opensuse.org/package/show/X11:common:Factory/icu?expand=0&rev=58 --- icu-fix-tests-depending-on-date.patch | 15 --------------- 1 file changed, 15 deletions(-) delete mode 100644 icu-fix-tests-depending-on-date.patch diff --git a/icu-fix-tests-depending-on-date.patch b/icu-fix-tests-depending-on-date.patch deleted file mode 100644 index 9c1528e..0000000 --- a/icu-fix-tests-depending-on-date.patch +++ /dev/null @@ -1,15 +0,0 @@ -See icu-fix-tests-depending-on-date.patch - -Index: icu/source/test/intltest/dtfmttst.cpp -=================================================================== ---- icu.orig/source/test/intltest/dtfmttst.cpp -+++ icu/source/test/intltest/dtfmttst.cpp -@@ -1132,7 +1132,7 @@ DateFormatTest::TestTwoDigitYear() - return; - } - parse2DigitYear(fmt, "5/6/17", date(117, UCAL_JUNE, 5)); -- parse2DigitYear(fmt, "4/6/34", date(34, UCAL_JUNE, 4)); -+ parse2DigitYear(fmt, "4/6/34", date(134, UCAL_JUNE, 4)); - } - - // ------------------------------------- From 69a1cb940f4d7d621ffcb23e5929734c04502d41a69cd5561a829328ff5825ce Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sat, 25 Oct 2014 19:00:44 +0000 Subject: [PATCH 5/5] Really remove icu-rpmlint.diff OBS-URL: https://build.opensuse.org/package/show/X11:common:Factory/icu?expand=0&rev=59 --- icu-rpmlint.diff | 34 ---------------------------------- 1 file changed, 34 deletions(-) delete mode 100644 icu-rpmlint.diff diff --git a/icu-rpmlint.diff b/icu-rpmlint.diff deleted file mode 100644 index 6ccfa60..0000000 --- a/icu-rpmlint.diff +++ /dev/null @@ -1,34 +0,0 @@ -From: Jan Engelhardt -Reference: http://bugs.icu-project.org/trac/ticket/7808 - -build: resolve potential buffer overflow in icu - -I: Statement might be overflowing a buffer in strncat. Common mistake: - BAD: strncat(buffer,charptr,sizeof(buffer)) is wrong, it takes the left over size as 3rd argument - GOOD: strncat(buffer,charptr,sizeof(buffer)-strlen(buffer)-1) -E: icu bufferoverflowstrncat pkgdata.cpp:299:87 - ---- - source/tools/pkgdata/pkgdata.cpp | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -Index: icu/source/tools/pkgdata/pkgdata.cpp -=================================================================== ---- icu.orig/source/tools/pkgdata/pkgdata.cpp 2014-06-03 13:07:41.342876943 +0200 -+++ icu/source/tools/pkgdata/pkgdata.cpp 2014-06-03 13:08:45.537882879 +0200 -@@ -2069,12 +2069,12 @@ - const char cmd[] = "icu-config --incpkgdatafile"; - - /* #1 try the same path where pkgdata was called from. */ -- findDirname(progname, cmdBuf, 1024, &status); -+ findDirname(progname, cmdBuf, sizeof(cmdBuf), &status); - if(U_SUCCESS(status)) { - if (cmdBuf[0] != 0) { -- uprv_strncat(cmdBuf, U_FILE_SEP_STRING, 1024); -+ uprv_strncat(cmdBuf, U_FILE_SEP_STRING, sizeof(cmdBuf)-1-strlen(cmdBuf)); - } -- uprv_strncat(cmdBuf, cmd, 1023); -+ uprv_strncat(cmdBuf, cmd, sizeof(cmdBuf)-1-strlen(cmdBuf)); - - if(verbose) { - fprintf(stdout, "# Calling icu-config: %s\n", cmdBuf);