Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
[packaging] import fedora packaging and adapt to subtree build
- Loading branch information
Islam Amer
committed
Mar 23, 2014
1 parent
670d96d
commit 7fe56c1
Showing
2 changed files
with
169 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
#!/bin/sh | ||
OOO_ARCH=$(uname -m) | ||
case $OOO_ARCH in | ||
x86_64 | s390x | ppc64 | sparc64 | aarch64) | ||
bits=64 | ||
;; | ||
* ) | ||
bits=32 | ||
;; | ||
esac | ||
exec icu-config-$bits "$@" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,158 @@ | ||
Name: icu | ||
Version: 52.1 | ||
Release: 10%{?dist} | ||
Summary: International Components for Unicode | ||
Group: Development/Tools | ||
License: MIT and UCD and Public Domain | ||
URL: http://www.icu-project.org/ | ||
Source0: %{name}-%{version}.tar.gz | ||
Source1: icu-config.sh | ||
BuildRequires: autoconf, python | ||
Requires: lib%{name}%{?_isa} = %{version}-%{release} | ||
|
||
%description | ||
Tools and utilities for developing with icu. | ||
|
||
%package -n lib%{name} | ||
Summary: International Components for Unicode - libraries | ||
Group: System Environment/Libraries | ||
|
||
%description -n lib%{name} | ||
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. | ||
|
||
%package -n lib%{name}-devel | ||
Summary: Development files for International Components for Unicode | ||
Group: Development/Libraries | ||
Requires: lib%{name}%{?_isa} = %{version}-%{release} | ||
Requires: pkgconfig | ||
|
||
%description -n lib%{name}-devel | ||
Includes and definitions for developing with icu. | ||
|
||
%package -n lib%{name}-doc | ||
Summary: Documentation for International Components for Unicode | ||
Group: Documentation | ||
BuildArch: noarch | ||
|
||
%description -n lib%{name}-doc | ||
%{summary}. | ||
|
||
%{!?endian: %global endian %(%{__python} -c "import sys;print (0 if sys.byteorder=='big' else 1)")} | ||
# " this line just fixes syntax highlighting for vim that is confused by the above and continues literal | ||
|
||
%prep | ||
%setup -q -n %{name}-%{version}/%{name} | ||
|
||
%build | ||
cd source | ||
autoconf | ||
CFLAGS='%optflags -fno-strict-aliasing' | ||
CXXFLAGS='%optflags -fno-strict-aliasing' | ||
# Endian: BE=0 LE=1 | ||
%if ! 0%{?endian} | ||
CPPFLAGS='-DU_IS_BIG_ENDIAN=1' | ||
%endif | ||
#rhbz856594 do not use --disable-renaming or cope with the mess | ||
%configure --with-data-packaging=library --disable-samples | ||
#rhbz#225896 | ||
sed -i 's|-nodefaultlibs -nostdlib||' config/mh-linux | ||
#rhbz#681941 | ||
sed -i 's|^LIBS =.*|LIBS = -L../lib -licuuc -lpthread -lm|' i18n/Makefile | ||
sed -i 's|^LIBS =.*|LIBS = -nostdlib -L../lib -licuuc -licui18n -lc -lgcc|' io/Makefile | ||
sed -i 's|^LIBS =.*|LIBS = -nostdlib -L../lib -licuuc -lc|' layout/Makefile | ||
sed -i 's|^LIBS =.*|LIBS = -nostdlib -L../lib -licuuc -licule -lc|' layoutex/Makefile | ||
sed -i 's|^LIBS =.*|LIBS = -nostdlib -L../../lib -licutu -licuuc -lc|' tools/ctestfw/Makefile | ||
sed -i 's|^LIBS =.*|LIBS = -nostdlib -L../../lib -licui18n -licuuc -lpthread -lc|' tools/toolutil/Makefile | ||
#rhbz#813484 | ||
sed -i 's| \$(docfilesdir)/installdox||' Makefile | ||
# There is no source/doc/html/search/ directory | ||
sed -i '/^\s\+\$(INSTALL_DATA) \$(docsrchfiles) \$(DESTDIR)\$(docdir)\/\$(docsubsrchdir)\s*$/d' Makefile | ||
# rhbz#856594 The configure --disable-renaming and possibly other options | ||
# result in icu/source/uconfig.h.prepend being created, include that content in | ||
# icu/source/common/unicode/uconfig.h to propagate to consumer packages. | ||
test -f uconfig.h.prepend && sed -e '/^#define __UCONFIG_H__/ r uconfig.h.prepend' -i common/unicode/uconfig.h | ||
|
||
make %{?_smp_mflags} | ||
#make %{?_smp_mflags} doc | ||
|
||
%install | ||
rm -rf $RPM_BUILD_ROOT source/__docs | ||
make %{?_smp_mflags} -C source install DESTDIR=$RPM_BUILD_ROOT | ||
make %{?_smp_mflags} -C source install-doc docdir=__docs | ||
chmod +x $RPM_BUILD_ROOT%{_libdir}/*.so.* | ||
( | ||
cd $RPM_BUILD_ROOT%{_bindir} | ||
mv icu-config icu-config-%{__isa_bits} | ||
) | ||
install -p -m755 -D %{SOURCE2} $RPM_BUILD_ROOT%{_bindir}/icu-config | ||
|
||
%check | ||
# test to ensure that -j(X>1) didn't "break" man pages. b.f.u #2357 | ||
if grep -q @VERSION@ source/tools/*/*.8 source/tools/*/*.1 source/config/*.1; then | ||
exit 1 | ||
fi | ||
make %{?_smp_mflags} -C source check | ||
|
||
%post -n lib%{name} -p /sbin/ldconfig | ||
|
||
%postun -n lib%{name} -p /sbin/ldconfig | ||
|
||
%files | ||
%defattr(-,root,root,-) | ||
%{_bindir}/derb | ||
%{_bindir}/genbrk | ||
%{_bindir}/gencfu | ||
%{_bindir}/gencnval | ||
%{_bindir}/gendict | ||
%{_bindir}/genrb | ||
%{_bindir}/makeconv | ||
%{_bindir}/pkgdata | ||
%{_bindir}/uconv | ||
%{_sbindir}/* | ||
%{_mandir}/man1/derb.1* | ||
%{_mandir}/man1/gencfu.1* | ||
%{_mandir}/man1/gencnval.1* | ||
%{_mandir}/man1/gendict.1* | ||
%{_mandir}/man1/genrb.1* | ||
%{_mandir}/man1/genbrk.1* | ||
%{_mandir}/man1/makeconv.1* | ||
%{_mandir}/man1/pkgdata.1* | ||
%{_mandir}/man1/uconv.1* | ||
%{_mandir}/man8/*.8* | ||
|
||
%files -n lib%{name} | ||
%defattr(-,root,root,-) | ||
%doc license.html readme.html | ||
%{_libdir}/*.so.* | ||
|
||
%files -n lib%{name}-devel | ||
%defattr(-,root,root,-) | ||
%{_bindir}/%{name}-config* | ||
%{_bindir}/icuinfo | ||
%{_mandir}/man1/%{name}-config.1* | ||
%{_mandir}/man1/icuinfo.1* | ||
%{_includedir}/layout | ||
%{_includedir}/unicode | ||
%{_libdir}/*.so | ||
%{_libdir}/pkgconfig/*.pc | ||
%{_libdir}/%{name} | ||
%dir %{_datadir}/%{name} | ||
%dir %{_datadir}/%{name}/%{version} | ||
%{_datadir}/%{name}/%{version}/install-sh | ||
%{_datadir}/%{name}/%{version}/mkinstalldirs | ||
%{_datadir}/%{name}/%{version}/config | ||
%doc %{_datadir}/%{name}/%{version}/license.html | ||
|
||
%files -n lib%{name}-doc | ||
%defattr(-,root,root,-) | ||
%doc license.html readme.html | ||
%doc source/__docs/%{name}/html/* |