From 44fd04159180482ee118fc7e1dc717a2aaa0ebd27ce02bd08855c9a20bb0a8d5 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Tue, 28 Apr 2015 22:04:53 +0000 Subject: [PATCH] Accepting request 304444 from home:scarabeus_iv:branches:X11:common:Factory MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Update baselibs.conf - Version bump to latest release 55.1: * support of CLDR 27 (with a major cleanup of region locales, among many other improvements), formatting for scientific notation ("1.2 × 10³") * update to Unicode 7.0 data for spoof-checking * Various performance enhancements * Full upstream changelog: http://site.icu-project.org/download/55 - Refresh the soname versioning patch: * icu-versioning.diff OBS-URL: https://build.opensuse.org/request/show/304444 OBS-URL: https://build.opensuse.org/package/show/X11:common:Factory/icu?expand=0&rev=61 --- baselibs.conf | 4 +- icu-versioning.diff | 16 ++-- icu.changes | 18 ++++ icu.spec | 209 ++++++++++++++++++++++---------------------- icu4c-54_1-docs.zip | 3 - icu4c-54_1-src.tgz | 3 - icu4c-55_1-docs.zip | 3 + icu4c-55_1-src.tgz | 3 + 8 files changed, 138 insertions(+), 121 deletions(-) delete mode 100644 icu4c-54_1-docs.zip delete mode 100644 icu4c-54_1-src.tgz create mode 100644 icu4c-55_1-docs.zip create mode 100644 icu4c-55_1-src.tgz diff --git a/baselibs.conf b/baselibs.conf index 059d8c0..6091a86 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -1,4 +1,4 @@ -libicu54_1 +libicu55_1 libicu-devel requires -libicu- - requires "libicu54_1- = " + requires "libicu55_1- = " diff --git a/icu-versioning.diff b/icu-versioning.diff index e3950be..09ccb24 100644 --- a/icu-versioning.diff +++ b/icu-versioning.diff @@ -46,7 +46,7 @@ Index: icu/source/common/icuplug.cpp =================================================================== --- icu.orig/source/common/icuplug.cpp +++ icu/source/common/icuplug.cpp -@@ -751,7 +751,7 @@ uplug_init(UErrorCode *status) { +@@ -752,7 +752,7 @@ uplug_init(UErrorCode *status) { pluginFile.append(plugin_dir, *status); pluginFile.append(U_FILE_SEP_STRING, -1, *status); pluginFile.append("icuplugins", -1, *status); @@ -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 54 -+#define U_ICU_VERSION_MAJOR_STR "54" + #define U_ICU_VERSION_MAJOR_NUM 55 ++#define U_ICU_VERSION_MAJOR_STR "55" /** 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 _54 +-#define U_ICU_VERSION_SUFFIX _55 +#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 "54" -+#define U_ICU_VERSION_SHORT "54_1" +-#define U_ICU_VERSION_SHORT "55" ++#define U_ICU_VERSION_SHORT "55_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 -@@ -1346,7 +1346,7 @@ static int32_t pkg_generateLibraryFile(c +@@ -1356,7 +1356,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]); -@@ -1393,7 +1393,7 @@ static int32_t pkg_generateLibraryFile(c +@@ -1403,7 +1403,7 @@ static int32_t pkg_generateLibraryFile(c #endif objectFile, pkgDataFlags[LD_SONAME], diff --git a/icu.changes b/icu.changes index a03e81a..d80a1a6 100644 --- a/icu.changes +++ b/icu.changes @@ -1,3 +1,21 @@ +------------------------------------------------------------------- +Tue Apr 28 19:02:39 UTC 2015 - tchvatal@suse.com + +- Update baselibs.conf + +------------------------------------------------------------------- +Tue Apr 28 10:56:53 UTC 2015 - tchvatal@suse.com + +- Version bump to latest release 55.1: + * support of CLDR 27 (with a major cleanup of region locales, among many + other improvements), formatting for scientific notation ("1.2 × 10³") + * update to Unicode 7.0 data for spoof-checking + * Various performance enhancements + * Full upstream changelog: + http://site.icu-project.org/download/55 +- Refresh the soname versioning patch: + * icu-versioning.diff + ------------------------------------------------------------------- Sat Oct 11 15:55:39 UTC 2014 - jengelh@inai.de diff --git a/icu.spec b/icu.spec index d42cd98..34fa9a1 100644 --- a/icu.spec +++ b/icu.spec @@ -1,7 +1,7 @@ # # spec file for package icu # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,19 +16,23 @@ # -%define lname libicu54_1 -%define amajor 54 -%define aversion 54_1 +%define lname libicu55_1 +%define amajor 55 +%define aversion 55_1 +%ifarch %{armb} hppa mips mips64 ppc ppc64 %{sparc} s390 s390x m68k +%define be_platform 1 +%else +%define be_platform 0 +%endif Name: icu -Version: 54.1 +Version: 55.1 Release: 0 Summary: International Components for Unicode License: MIT Group: Development/Libraries/C and C++ Url: http://icu-project.org/ - -Source: http://download.icu-project.org/files/icu4c/%version/icu4c-%aversion-src.tgz -Source2: http://download.icu-project.org/files/icu4c/%version/icu4c-%aversion-docs.zip +Source: http://download.icu-project.org/files/icu4c/%{version}/icu4c-%{aversion}-src.tgz +Source2: http://download.icu-project.org/files/icu4c/%{version}/icu4c-%{aversion}-docs.zip Source3: sanitize_docs.sh Source100: baselibs.conf Patch2: icu-remove-datetime.patch @@ -40,11 +44,6 @@ BuildRequires: gcc-c++ BuildRequires: pkg-config BuildRequires: unzip BuildRoot: %{_tmppath}/%{name}-%{version}-build -%ifarch %armb hppa mips mips64 ppc ppc64 %sparc s390 s390x m68k -%define be_platform 1 -%else -%define be_platform 0 -%endif %description ICU is a set of C and C++ libraries that provides robust and @@ -57,37 +56,37 @@ line, and sentence breaking, etc. This subpackage contains the runtime programs for interacting with ICU. -%package -n %lname +%package -n %{lname} Summary: International Components for Unicode Group: System/Libraries -%if %be_platform -Requires: libicu%{aversion}-bedata -%else -Requires: libicu%{aversion}-ledata -%endif Requires: timezone # Following O/P added in timeframe for 12.2 -Provides: libicu = %version -Obsoletes: libicu < %version +Provides: libicu = %{version} +Obsoletes: libicu < %{version} +%if %{be_platform} +Requires: libicu%{aversion}-bedata = %{version} +%else +Requires: libicu%{aversion}-ledata = %{version} +%endif -%description -n %lname +%description -n %{lname} ICU is a set of C and C++ libraries that provides robust and full-featured Unicode support. This package contains the runtime libraries for ICU which include precompiled locale data. -%package -n libicu%aversion-bedata +%package -n libicu%{aversion}-bedata Summary: Rule databases and tables for ICU Group: System/Libraries %if 0%{?suse_version} >= 1210 BuildArch: noarch %endif -%if %be_platform +%if %{be_platform} # Added for 13.2 -Obsoletes: libicu%aversion-data -Provides: libicu%aversion-data +Obsoletes: libicu%{aversion}-data < %{version} +Provides: libicu%{aversion}-data = %{version} %endif -%description -n libicu%aversion-bedata +%description -n libicu%{aversion}-bedata ICU is a set of C and C++ libraries that provides robust and full-featured Unicode support. @@ -97,19 +96,19 @@ rules, break iterator rules and dictionaries. This subpackage contains these data tables, in big-endian format. -%package -n libicu%aversion-ledata +%package -n libicu%{aversion}-ledata Summary: Rule databases and tables for ICU Group: System/Libraries %if 0%{?suse_version} >= 1210 BuildArch: noarch %endif -%if !%be_platform +%if !%{be_platform} # Added for 13.2 -Obsoletes: libicu%aversion-data -Provides: libicu%aversion-data +Obsoletes: libicu%{aversion}-data < %{version} +Provides: libicu%{aversion}-data = %{version} %endif -%description -n libicu%aversion-ledata +%description -n libicu%{aversion}-ledata ICU is a set of C and C++ libraries that provides robust and full-featured Unicode support. @@ -122,7 +121,7 @@ This subpackage contains these data tables, in little-endian format. %package -n libicu-devel Summary: International Components for Unicode (development files) Group: Development/Libraries/C and C++ -Requires: %lname = %version +Requires: %{lname} = %{version} %description -n libicu-devel ICU is a C++ and C library that provides robust and full-featured @@ -139,7 +138,7 @@ Unicode support. This package contains the HTML documentation. %package data Summary: International Components for Unicode (Sources for the Data in ICU) Group: Development/Sources -Requires: %lname >= %version +Requires: %{lname} >= %{version} %description data ICU is a C++ and C library that provides robust and full-featured @@ -156,14 +155,14 @@ This package contains uncompiled source data. # docs are special mkdir html cd html -unzip %SOURCE2 +unzip %{SOURCE2} cd .. %patch -P 2 -P 3 -P 4 -P 6 -p1 %build cd source -export CXXFLAGS="%optflags -DICU_DATA_DIR=\\\"%_datadir/icu/%version/\\\"" +export CXXFLAGS="%{optflags} -DICU_DATA_DIR=\\\"%{_datadir}/icu/%{version}/\\\"" export CFLAGS="$CXXFLAGS" %configure \ --disable-static \ @@ -173,7 +172,7 @@ export CFLAGS="$CXXFLAGS" make %{?_smp_mflags} VERBOSE=1 # Build the other endianess, too. pushd data/ -%if %be_platform +%if %{be_platform} cp in/icudt%{amajor}l.dat out/ %else LD_LIBRARY_PATH="../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH" \ @@ -183,22 +182,22 @@ LD_LIBRARY_PATH="../lib:../stubdata:../tools/ctestfw:$LD_LIBRARY_PATH" \ popd %install -mkdir -p "%buildroot/%_docdir/%name" -cp -a html "%buildroot/%_docdir/%name/" -cp -a license.html readme.html "%buildroot/%_docdir/%name/" +mkdir -p "%{buildroot}/%{_docdir}/%{name}" +cp -a html "%{buildroot}/%{_docdir}/%{name}/" +cp -a license.html readme.html "%{buildroot}/%{_docdir}/%{name}/" find . -name CVS -type d -exec rm -Rf "{}" "+" cd source -make install DESTDIR="%buildroot" -cp data/out/icudt*.dat "%buildroot/%_datadir/icu/%version/" +make DESTDIR=%{buildroot} install %{?_smp_mflags} +cp data/out/icudt*.dat "%{buildroot}/%{_datadir}/icu/%{version}/" # # ICU's "pkgdata" utility is really fragile, so icu-versioning.diff # does as few as possible, but that means we need some additional # cleanup in the spec file now. # -pushd "%buildroot/%_libdir/" +pushd "%{buildroot}/%{_libdir}/" for i in *.so.[0-9]*; do echo "Looking at $i" if [ "${i##*.so.}" != "%version" ]; then @@ -207,24 +206,24 @@ for i in *.so.[0-9]*; do fi # Because U_ICU_VERSION_SHORT is "51_2" and not "51.2", # create some symlinks. - ln -s "$i" "${i%%%version}%aversion" + ln -s "$i" "${i%%%version}%{aversion}" done popd # /usr/lib/rpm/elfdeps requires +x bit and not all files had it at one point. # - OpenBSD for example is known to have patched their libtool program # to kill the x bit on install :( -chmod a+rx "%buildroot/%_libdir"/lib*.so.* +chmod a+rx "%{buildroot}/%{_libdir}"/lib*.so.* # install uncompiled source data: -mkdir -p "%buildroot/%_datadir/icu/%version/unidata" -install -m 644 data/unidata/*.txt "%buildroot/%_datadir/icu/%version/unidata" -ln -s unidata/UnicodeData.txt "%buildroot/%_datadir/icu/%version/" +mkdir -p "%{buildroot}/%{_datadir}/icu/%{version}/unidata" +install -m 644 data/unidata/*.txt "%{buildroot}/%{_datadir}/icu/%{version}/unidata" +ln -s unidata/UnicodeData.txt "%{buildroot}/%{_datadir}/icu/%{version}/" -rm "%buildroot/%_datadir/icu/%version/license.html" -rm "%buildroot/%_datadir/icu/%version/install-sh" +rm "%{buildroot}/%{_datadir}/icu/%{version}/license.html" +rm "%{buildroot}/%{_datadir}/icu/%{version}/install-sh" -%fdupes %buildroot/%_prefix +%fdupes %{buildroot}/%{_prefix} %check cd source @@ -232,96 +231,96 @@ cd source # Checks disabled in qemu because of races happening when we emulate # multi-threaded programs, and some check tests atomic instructions in # multi-threaded icu invocations -ICU_DATA="%buildroot/%_datadir/icu/%version" make check %{?_smp_mflags} VERBOSE=1 +ICU_DATA="%{buildroot}/%{_datadir}/icu/%{version}" make check %{?_smp_mflags} VERBOSE=1 %endif %post # This should be run by whatever owns /usr/lib64/icu - # the (main) package in this case -if test -d "%_libdir/icu"; then - current=$(cd "%_libdir/icu/"; find [0-9]* -maxdepth 1 -type d -printf '%%f\n' | +if test -d "%{_libdir}/icu"; then + current=$(cd "%{_libdir}/icu/"; find [0-9]* -maxdepth 1 -type d -printf '%%f\n' | sort -V | tail -n1); if test -n "$current"; then - rm -f "%_libdir/icu/current"; - ln -sv "$current" "%_libdir/icu/current"; + rm -f "%{_libdir}/icu/current"; + ln -sv "$current" "%{_libdir}/icu/current"; fi; fi; %postun -if test -d "%_libdir/icu"; then - current=$(cd "%_libdir/icu/"; find [0-9]* -maxdepth 1 -type d -printf '%%f\n' | +if test -d "%{_libdir}/icu"; then + current=$(cd "%{_libdir}/icu/"; find [0-9]* -maxdepth 1 -type d -printf '%%f\n' | sort -V | tail -n1); if test -n "$current"; then - rm -f "%_libdir/icu/current"; - ln -sv "$current" "%_libdir/icu/current"; + rm -f "%{_libdir}/icu/current"; + ln -sv "$current" "%{_libdir}/icu/current"; fi; fi; -%post -n %lname -p /sbin/ldconfig +%post -n %{lname} -p /sbin/ldconfig -%postun -n %lname -p /sbin/ldconfig +%postun -n %{lname} -p /sbin/ldconfig %files %defattr(-,root,root) -%dir %_libdir/icu -%dir %_libdir/icu/%version -%_libdir/icu/current -%_bindir/derb -%_bindir/gen* -%_bindir/icuinfo -%_bindir/makeconv -%_bindir/pkgdata -%_bindir/uconv -%_sbindir/* -%_mandir/man*/* -%dir %_docdir/%name/ -%_docdir/%name/license.html -%_docdir/%name/readme.html +%dir %{_libdir}/icu +%dir %{_libdir}/icu/%{version} +%{_libdir}/icu/current +%{_bindir}/derb +%{_bindir}/gen* +%{_bindir}/icuinfo +%{_bindir}/makeconv +%{_bindir}/pkgdata +%{_bindir}/uconv +%{_sbindir}/* +%{_mandir}/man*/* +%dir %{_docdir}/%{name}/ +%{_docdir}/%{name}/license.html +%{_docdir}/%{name}/readme.html -%files -n %lname +%files -n %{lname} %defattr(-, root, root) -%_libdir/libicu*.so.* +%{_libdir}/libicu*.so.* %files -n libicu%{aversion}-bedata %defattr(-,root,root) -%dir %_datadir/icu -%dir %_datadir/icu/%version -%_datadir/icu/%version/icudt%{amajor}b.dat +%dir %{_datadir}/icu +%dir %{_datadir}/icu/%{version} +%{_datadir}/icu/%{version}/icudt%{amajor}b.dat %files -n libicu%{aversion}-ledata %defattr(-,root,root) -%dir %_datadir/icu -%dir %_datadir/icu/%version -%_datadir/icu/%version/icudt%{amajor}l.dat +%dir %{_datadir}/icu +%dir %{_datadir}/icu/%{version} +%{_datadir}/icu/%{version}/icudt%{amajor}l.dat %files -n libicu-devel %defattr(-, root, root) -%_libdir/libicu*.so -%_includedir/unicode/ -%_includedir/layout/ -%dir %_libdir/icu/ -%dir %_libdir/icu/%version/ -%_libdir/icu/%version/Makefile.inc -%_libdir/icu/%version/pkgdata.inc -%_libdir/icu/Makefile.inc -%_libdir/icu/pkgdata.inc -%_libdir/pkgconfig/icu-*.pc -%_bindir/icu-config -%dir %_datadir/icu/ -%dir %_datadir/icu/%version/ -%_datadir/icu/%version/mkinstalldirs -%_datadir/icu/%version/config/ +%{_libdir}/libicu*.so +%{_includedir}/unicode/ +%{_includedir}/layout/ +%dir %{_libdir}/icu/ +%dir %{_libdir}/icu/%{version}/ +%{_libdir}/icu/%{version}/Makefile.inc +%{_libdir}/icu/%{version}/pkgdata.inc +%{_libdir}/icu/Makefile.inc +%{_libdir}/icu/pkgdata.inc +%{_libdir}/pkgconfig/icu-*.pc +%{_bindir}/icu-config +%dir %{_datadir}/icu/ +%dir %{_datadir}/icu/%{version}/ +%{_datadir}/icu/%{version}/mkinstalldirs +%{_datadir}/icu/%{version}/config/ %files -n libicu-doc %defattr(-,root,root) -%dir %_docdir/%name/ -%_docdir/%name/html/ +%dir %{_docdir}/%{name}/ +%{_docdir}/%{name}/html/ %files data %defattr(-, root, root) -%dir %_datadir/icu/ -%dir %_datadir/icu/%version/ -%_datadir/icu/%version/unidata/ -%_datadir/icu/%version/UnicodeData.txt +%dir %{_datadir}/icu/ +%dir %{_datadir}/icu/%{version}/ +%{_datadir}/icu/%{version}/unidata/ +%{_datadir}/icu/%{version}/UnicodeData.txt %changelog diff --git a/icu4c-54_1-docs.zip b/icu4c-54_1-docs.zip deleted file mode 100644 index 0958293..0000000 --- a/icu4c-54_1-docs.zip +++ /dev/null @@ -1,3 +0,0 @@ -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 deleted file mode 100644 index 116a7cc..0000000 --- a/icu4c-54_1-src.tgz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d42bc9a8ca6a91c55eb0925c279f49e5b508d51ef26ac9850d9be55de5bb8ab3 -size 25485678 diff --git a/icu4c-55_1-docs.zip b/icu4c-55_1-docs.zip new file mode 100644 index 0000000..12031cc --- /dev/null +++ b/icu4c-55_1-docs.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c70c2283655e1d502baa32e4d087f8ce8f07b6230e6baed3567e74c42e5ffcc +size 7800626 diff --git a/icu4c-55_1-src.tgz b/icu4c-55_1-src.tgz new file mode 100644 index 0000000..be20588 --- /dev/null +++ b/icu4c-55_1-src.tgz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e16b22cbefdd354bec114541f7849a12f8fc2015320ca5282ee4fd787571457b +size 25600847