%define major 73 %define libname %mklibname icu %{major} %define develname %mklibname icu -d %define dataname %{name}%{major}-data %define tarballver %(echo %version|tr '.' '_') %define dashver %(echo %version|tr '.' '-') # re-enable when upgrading this package to a new version %define with_tests 1 Summary: International Components for Unicode Name: icu # # when updating to a new version, please, start rebuilds from tracker and tracker-miners # to have all needed libs available before mirrors gets cleaned from old icu libs # Epoch: 1 Version: 73.2 Release: %mkrel 1 License: Unicode Group: System/Libraries URL: http://site.icu-project.org/ Source0: https://github.com/unicode-org/icu/releases/download/release-%{dashver}/icu4c-%{tarballver}-src.tgz Patch0: icu-50.1-disable-renaming.patch BuildRequires: doxygen Requires: %{libname} = %{epoch}:%{version} %description The International Components for Unicode (ICU) libraries provide robust and full-featured Unicode services on a wide variety of platforms. ICU supports the most current version of the Unicode standard, and they provide support for supplementary Unicode characters (needed for GB 18030 repertoire support). As computing environments become more heterogeneous, software portability becomes more important. ICU lets you produce the same results across all the various platforms you support, without sacrificing performance. It offers great flexibility to extend and customize the supplied services, which include: * Text: Unicode text handling, full character properties and character set conversions (500+ codepages) * Analysis: Unicode regular expressions; full Unicode sets; character, word and line boundaries * Comparison: Language sensitive collation and searching * Transformations: normalization, upper/lowercase, script transliterations (50+ pairs) * Locales: Comprehensive locale data (230+) and resource bundle architecture * Complex Text Layout: Arabic, Hebrew, Indic and Thai * Time: Multi-calendar and time zone * Formatting and Parsing: dates, times, numbers, currencies, messages and rule based %package -n %{dataname} Summary: Shared data for the International Components for Unicode Group: System/Libraries BuildArch: noarch %description -n %{dataname} Shared data for the International Components for Unicode. %package doc Summary: Documentation for the International Components for Unicode Group: System/Libraries Requires: %{name} BuildArch: noarch %description doc Documentation for the International Components for Unicode. %package -n %{libname} Summary: Libraries for the International Components for Unicode Group: System/Libraries Requires: %{dataname} = %{epoch}:%{version}-%{release} %description -n %{libname} Libraries for the International Components for Unicode. %package -n %{develname} Summary: Development files for the International Components for Unicode Group: Development/Other Requires: %{libname} = %{epoch}:%{version}-%{release} Provides: %{name}%{major}-devel = %{epoch}:%{version}-%{release} Provides: %{name}-devel = %{epoch}:%{version}-%{release} Provides: lib%{name}-devel = %{epoch}:%{version}-%{release} %description -n %{develname} Development files and headers for the International Components for Unicode. %prep %setup -q -n %{name} %autopatch -p1 %build pushd source %configure \ --with-library-bits=64else32 \ --with-data-packaging=archive \ --disable-renaming \ --disable-samples mkdir -p data/out/tmp # fix test failures sed -i.testdata -r -e 's#/genrb#/genrb $(ICU_DATA_OPT)#' test/testdata/rules.mk %__make %__make doc popd %if %{with_tests} %check pushd source export LC_ALL=C LANG=en %ifarch aarch64 x86_64 %ix86 %arm make check ||: %else make check %endif popd %endif %install %make_install -C source %files %{_bindir}/* %exclude %{_bindir}/icu-config %{_sbindir}/* %files -n %{dataname} %dir %{_datadir}/%{name} %dir %{_datadir}/%{name}/%{version} %{_datadir}/%{name}/%{version}/icudt%{major}l.dat %files doc %doc readme.html source/doc/html/* %{_mandir}/man1/* %{_mandir}/man8/* %files -n %{libname} %{_libdir}/*.so.%{major}{,.*} %files -n %{develname} %{_bindir}/icu-config %{_libdir}/*.so %{_libdir}/pkgconfig/*.pc %dir %{_includedir}/unicode %{_includedir}/unicode/* %dir %{_libdir}/%{name} %dir %{_libdir}/%{name}/%{version} %{_libdir}/%{name}/%{version}/Makefile.inc %{_libdir}/%{name}/%{version}/pkgdata.inc %{_libdir}/%{name}/Makefile.inc %{_libdir}/%{name}/current %{_libdir}/%{name}/pkgdata.inc %{_datadir}/%{name}/%{version}/config %{_datadir}/%{name}/%{version}/install-sh %{_datadir}/%{name}/%{version}/LICENSE %{_datadir}/%{name}/%{version}/mkinstalldirs