1 |
%define major 53 |
2 |
%define libname %mklibname icu %{major} |
3 |
%define develname %mklibname icu -d |
4 |
|
5 |
%define dataname %{name}%{major}-data |
6 |
|
7 |
%define tarballver %(echo %version|sed -e 's|\\.|_|g') |
8 |
|
9 |
Summary: International Components for Unicode |
10 |
Name: icu |
11 |
Version: 53.1 |
12 |
Release: %mkrel 11 |
13 |
Epoch: 1 |
14 |
License: MIT |
15 |
Group: System/Libraries |
16 |
URL: http://www.icu-project.org/index.html |
17 |
Source0: http://download.icu-project.org/files/icu4c/%{version}/%{name}4c-%{tarballver}-src.tgz |
18 |
Source1: http://download.icu-project.org/files/icu4c/%{version}/%{name}4c-%{tarballver}-docs.zip |
19 |
Patch0: icu-50.1-disable-renaming.patch |
20 |
Patch6: icu-4.6.1-do-not-promote-ldflags.patch |
21 |
Patch7: icu-53.1-CVE-2014-7923-CVE-2014-7926.patch |
22 |
Patch8: icu-53.1-regex2.patch |
23 |
Patch9: icu-CVE-2014-6585-CVE-2014-6591.patch |
24 |
BuildRequires: doxygen |
25 |
Requires: %{libname} = %{epoch}:%{version} |
26 |
|
27 |
%description |
28 |
The International Components for Unicode (ICU) libraries provide robust and |
29 |
full-featured Unicode services on a wide variety of platforms. ICU supports |
30 |
the most current version of the Unicode standard, and they provide support |
31 |
for supplementary Unicode characters (needed for GB 18030 repertoire support). |
32 |
|
33 |
As computing environments become more heterogeneous, software portability |
34 |
becomes more important. ICU lets you produce the same results across all the |
35 |
various platforms you support, without sacrificing performance. It offers |
36 |
great flexibility to extend and customize the supplied services, which |
37 |
include: |
38 |
|
39 |
* Text: Unicode text handling, full character properties and character set |
40 |
conversions (500+ codepages) |
41 |
* Analysis: Unicode regular expressions; full Unicode sets; character, word |
42 |
and line boundaries |
43 |
* Comparison: Language sensitive collation and searching |
44 |
* Transformations: normalization, upper/lowercase, script transliterations |
45 |
(50+ pairs) |
46 |
* Locales: Comprehensive locale data (230+) and resource bundle architecture |
47 |
* Complex Text Layout: Arabic, Hebrew, Indic and Thai |
48 |
* Time: Multi-calendar and time zone |
49 |
* Formatting and Parsing: dates, times, numbers, currencies, messages and |
50 |
rule based |
51 |
|
52 |
%package -n %{dataname} |
53 |
Summary: Shared data for the International Components for Unicode |
54 |
Group: System/Libraries |
55 |
BuildArch: noarch |
56 |
Conflicts: icu-devel < 1:50.1-3 |
57 |
|
58 |
%description -n %{dataname} |
59 |
Shared data for the International Components for Unicode. |
60 |
|
61 |
%package doc |
62 |
Summary: Documentation for the International Components for Unicode |
63 |
Group: System/Libraries |
64 |
Requires: %{name} |
65 |
BuildArch: noarch |
66 |
|
67 |
%description doc |
68 |
Documentation for the International Components for Unicode. |
69 |
|
70 |
%package -n %{libname} |
71 |
Summary: Libraries for the International Components for Unicode |
72 |
Group: System/Libraries |
73 |
Requires: %{dataname} = %{epoch}:%{version}-%{release} |
74 |
|
75 |
%description -n %{libname} |
76 |
Libraries for the International Components for Unicode. |
77 |
|
78 |
%package -n %{develname} |
79 |
Summary: Development files for the International Components for Unicode |
80 |
Group: Development/Other |
81 |
Requires: %{libname} = %{epoch}:%{version}-%{release} |
82 |
Provides: %{name}%{major}-devel = %{epoch}:%{version}-%{release} |
83 |
Provides: %{name}-devel = %{epoch}:%{version}-%{release} |
84 |
Provides: lib%{name}-devel = %{epoch}:%{version}-%{release} |
85 |
Obsoletes: %mklibname -d icu 36 |
86 |
Obsoletes: %mklibname -d icu 34 |
87 |
|
88 |
%description -n %{develname} |
89 |
Development files and headers for the International Components for Unicode. |
90 |
|
91 |
%prep |
92 |
%setup -q -n %{name} |
93 |
%patch0 -p1 -b .renaming |
94 |
#patch6 -p0 -b .ldflags |
95 |
%patch7 -p1 -b .regex-cves |
96 |
%patch8 -p1 -b .regex2 |
97 |
%patch9 -p0 -b .CVE-2014-6585-CVE-2014-6591 |
98 |
|
99 |
mkdir -p docs |
100 |
pushd docs |
101 |
unzip -q %{SOURCE1} |
102 |
popd |
103 |
|
104 |
%build |
105 |
pushd source |
106 |
%configure2_5x \ |
107 |
--with-library-bits=64else32 \ |
108 |
--with-data-packaging=archive \ |
109 |
--disable-renaming \ |
110 |
--disable-samples |
111 |
%make |
112 |
%make doc |
113 |
popd |
114 |
|
115 |
%install |
116 |
%makeinstall_std -C source |
117 |
%multiarch_binaries %{buildroot}%{_bindir}/icu-config |
118 |
|
119 |
%files |
120 |
%{_bindir}/* |
121 |
%exclude %{_bindir}/icu-config |
122 |
%exclude %{multiarch_bindir} |
123 |
%{_sbindir}/* |
124 |
|
125 |
%files -n %{dataname} |
126 |
%dir %{_datadir}/%{name} |
127 |
%dir %{_datadir}/%{name}/%{version} |
128 |
%{_datadir}/%{name}/%{version}/icudt%{major}l.dat |
129 |
|
130 |
%files doc |
131 |
%doc readme.html docs/* |
132 |
%{_mandir}/man1/* |
133 |
%{_mandir}/man8/* |
134 |
|
135 |
%files -n %{libname} |
136 |
%{_libdir}/*.so.%{major}* |
137 |
|
138 |
%files -n %{develname} |
139 |
%{_bindir}/icu-config |
140 |
%{multiarch_bindir}/icu-config |
141 |
%{_libdir}/*.so |
142 |
%{_libdir}/pkgconfig/*.pc |
143 |
%dir %{_includedir}/layout |
144 |
%dir %{_includedir}/unicode |
145 |
%{_includedir}/layout/* |
146 |
%{_includedir}/unicode/* |
147 |
%dir %{_libdir}/%{name} |
148 |
%dir %{_libdir}/%{name}/%{version} |
149 |
%{_libdir}/%{name}/%{version}/Makefile.inc |
150 |
%{_libdir}/%{name}/%{version}/pkgdata.inc |
151 |
%{_libdir}/%{name}/Makefile.inc |
152 |
%{_libdir}/%{name}/current |
153 |
%{_libdir}/%{name}/pkgdata.inc |
154 |
%{_datadir}/%{name}/%{version}/config |
155 |
%{_datadir}/%{name}/%{version}/install-sh |
156 |
%{_datadir}/%{name}/%{version}/license.html |
157 |
%{_datadir}/%{name}/%{version}/mkinstalldirs |