]> git.pld-linux.org Git - packages/dietlibc.git/blame - dietlibc.spec
- rel 4
[packages/dietlibc.git] / dietlibc.spec
CommitLineData
ed0486b4
PS
1#
2# Conditional build:
3%bcond_with ssp # disable stack-smashing protector 'coz dietlibc will not work with it!
4#
c3a70eef 5Summary: C library optimized for size
96cac672
ER
6Summary(pl.UTF-8): Biblioteka standardowa C zoptymalizowana na rozmiar
7Summary(pt_BR.UTF-8): libc pequena otimizada para tamanho
09de3116 8Name: dietlibc
68f2a273 9Version: 0.31
24c171b2 10Release: 4
e72c8dd4 11Epoch: 2
aae0fca7 12License: GPL v2
09de3116 13Group: Development/Libraries
18646183 14Source0: http://www.kernel.org/pub/linux/libs/dietlibc/%{name}-%{version}.tar.bz2
68f2a273 15# Source0-md5: acb98d469ee932d902fdf6de07802b7c
711665cb 16Patch0: %{name}-ppc.patch
b633677b 17Patch1: %{name}-opt.patch
1337a3d8 18Patch2: %{name}-platform.patch
73062649 19# workaround for http://gcc.gnu.org/PR26374
1337a3d8 20Patch3: %{name}-gcc4.patch
d227bc8d 21Patch4: %{name}-guard.patch
6cfbdaaf 22Patch5: %{name}-arm.patch
88cc7f71 23Patch6: %{name}-diet-m.patch
2304c81d
AM
24Patch7: %{name}-nice.patch
25Patch8: %{name}-nostrip.patch
26Patch9: %{name}-stackgap-instead-of-ssp.patch
27Patch10: %{name}-fflush-null.patch
28Patch11: %{name}-_syscall-no-arch.patch
29Patch12: %{name}-noexecstacks.patch
f7808423 30Patch13: %{name}-strcoll.patch
ef49f35c 31URL: http://www.fefe.de/dietlibc/
88cc7f71
JB
32%ifarch sparc sparcv9
33BuildRequires: sparc32
34%endif
09de3116 35BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
c3a70eef 36
5c48d132 37%define dietprefix %{_prefix}/lib/dietlibc
b633677b 38# for some reason known only to rpm there must be "\\|" not "\|" here
7e6f0cf7 39%define libarch %(echo %{_target_cpu} | sed -e 's/i.86\\|pentium.\\|athlon/i386/;s/amd64/x86_64/;s/armv.*/arm/')
b633677b 40
c3a70eef 41%description
42Small libc for building embedded applications.
43
f92ec944 44%description -l pl.UTF-8
dd5e72ff
JB
45Niewielka libc do budowania aplikacji wbudowanych.
46
f92ec944
JR
47%description -l pt_BR.UTF-8
48A diet libc e' uma libc otimizada para criar pequenos binários
b633677b 49estaticamente linkados para Linux.
aae0fca7 50
c3a70eef 51%package devel
09de3116 52Summary: Development files for dietlibc
96cac672
ER
53Summary(pl.UTF-8): Pliki dla programistów używających dietlibc
54Summary(pt_BR.UTF-8): libc pequena otimizada para tamanho
09de3116 55Group: Development/Libraries
46f54929 56Requires: %{name} = %{epoch}:%{version}-%{release}
c3a70eef 57
58%description devel
dd5e72ff
JB
59Small libc for building embedded applications - development files.
60
f92ec944 61%description devel -l pl.UTF-8
dd5e72ff 62Niewielka libc do budowania aplikacji wbudowanych - pliki dla
f92ec944 63programistów.
c3a70eef 64
e72c8dd4
MM
65%package static
66Summary: Static libraries for dietlibc
96cac672 67Summary(pl.UTF-8): Biblioteki statyczne dla dietlibc
e72c8dd4 68Group: Development/Libraries
46f54929 69Requires: %{name}-devel = %{epoch}:%{version}-%{release}
e72c8dd4
MM
70
71%description static
72Small libc for building embedded applications - static libraries.
73
f92ec944 74%description static -l pl.UTF-8
e72c8dd4
MM
75Niewielka libc do budowania aplikacji wbudowanych - biblioteki
76statyczne.
77
c3a70eef 78%prep
2bb9d10d 79%setup -q
b633677b
JB
80%patch0 -p1
81%patch1 -p1
b0443187 82%patch2 -p1
38ed02e8 83%patch3 -p1
d227bc8d 84%patch4 -p1
6cfbdaaf 85%patch5 -p1
88cc7f71 86%patch6 -p1
2304c81d
AM
87%patch7 -p1
88%patch8 -p1
89%{!?with_ssp:%patch9 -p1}
90%patch10 -p1
91%patch11 -p1
92%patch12 -p1
f7808423 93%patch13 -p1
1f8a1668 94
c3a70eef 95%build
c6a4651e 96export OPTFLAGS="%{rpmcflags}%{?with_ssp: -fno-stack-protector} -fno-strict-aliasing"
2bb9d10d 97%ifarch sparc sparcv9
c7d60d50 98sparc32 \
99%endif
4f4bb2ab 100%{__make} -j1 all \
1f3436a8
JB
101 prefix=%{dietprefix} \
102 CC="%{__cc}"
8d4158b9 103%ifarch %{ix86}
4f4bb2ab 104%{__make} -j1 dyn \
1f3436a8
JB
105 prefix=%{dietprefix} \
106 CC="%{__cc}"
8d4158b9 107%endif
c3a70eef 108
109%install
09de3116 110rm -rf $RPM_BUILD_ROOT
e72c8dd4
MM
111install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_bindir},%{_mandir}/man1}
112
23c8844b 113%ifarch sparc sparcv9
114sparc32 \
115%endif
b9fb397c
PG
116%{__make} install \
117 DESTDIR=$RPM_BUILD_ROOT \
118 prefix=%{dietprefix}
1f8a1668 119
e72c8dd4
MM
120mv $RPM_BUILD_ROOT%{dietprefix}/bin/* $RPM_BUILD_ROOT%{_bindir}
121mv $RPM_BUILD_ROOT%{dietprefix}/man/man1/* $RPM_BUILD_ROOT%{_mandir}/man1
122rm -rf $RPM_BUILD_ROOT%{dietprefix}/{bin,man}
123rm -f $RPM_BUILD_ROOT%{_bindir}/diet-dyn
1f8a1668 124
b633677b 125cat > $RPM_BUILD_ROOT%{_bindir}/%{_target_cpu}-dietlibc-gcc <<EOF
e72c8dd4
MM
126#!/bin/sh
127exec %{_bindir}/diet gcc "\$@"
128EOF
129
130rm -rf $RPM_BUILD_ROOT%{dietprefix}/include/{asm,linux}
131
c3a70eef 132%clean
133rm -rf $RPM_BUILD_ROOT
134
135%files
09de3116 136%defattr(644,root,root,755)
c6f935c3 137%doc AUTHOR BUGS CAVEAT CHANGES FAQ README THANKS TODO
e72c8dd4 138%dir %{dietprefix}
b633677b 139%dir %{dietprefix}/lib-%{libarch}
8d4158b9 140%ifarch %{ix86}
b633677b 141%attr(755,root,root) %{dietprefix}/lib-%{libarch}/*.so
86c9e868 142%{_sysconfdir}/diet.ld.conf
8d4158b9 143%endif
c3a70eef 144
145%files devel
09de3116 146%defattr(644,root,root,755)
86c9e868
JB
147%attr(755,root,root) %{_bindir}/*-dietlibc-gcc
148%attr(755,root,root) %{_bindir}/diet
149%attr(755,root,root) %{_bindir}/dnsd
150%attr(755,root,root) %{_bindir}/elftrunc
151%{dietprefix}/lib-%{libarch}/*.o
e72c8dd4 152%{dietprefix}/include
86c9e868 153%{_mandir}/man1/diet.1*
e72c8dd4
MM
154
155%files static
156%defattr(644,root,root,755)
b633677b 157%{dietprefix}/lib-%{libarch}/*.a
This page took 0.137806 seconds and 4 git commands to generate.