Accepting request 304444 from home:scarabeus_iv:branches:X11:common:Factory

- 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
This commit is contained in:
Jan Engelhardt 2015-04-28 22:04:53 +00:00 committed by Git OBS Bridge
parent 69a1cb940f
commit 44fd041591
8 changed files with 138 additions and 121 deletions

View File

@ -1,4 +1,4 @@
libicu54_1
libicu55_1
libicu-devel
requires -libicu-<targettype>
requires "libicu54_1-<targettype> = <version>"
requires "libicu55_1-<targettype> = <version>"

View File

@ -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],

View File

@ -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

209
icu.spec
View File

@ -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

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:879fbfc4f0609c1ed113496ebea7dc5e531b95f2d8507ec50b2262adbe96b2e8
size 7753514

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d42bc9a8ca6a91c55eb0925c279f49e5b508d51ef26ac9850d9be55de5bb8ab3
size 25485678

3
icu4c-55_1-docs.zip Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1c70c2283655e1d502baa32e4d087f8ce8f07b6230e6baed3567e74c42e5ffcc
size 7800626

3
icu4c-55_1-src.tgz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e16b22cbefdd354bec114541f7849a12f8fc2015320ca5282ee4fd787571457b
size 25600847