]> git.pld-linux.org Git - packages/dietlibc.git/blame - dietlibc.spec
- rel 5
[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
3c8e634d 10Release: 5
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
3c8e634d 31Patch14: %{name}-cvs.patch
ef49f35c 32URL: http://www.fefe.de/dietlibc/
88cc7f71
JB
33%ifarch sparc sparcv9
34BuildRequires: sparc32
35%endif
09de3116 36BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
c3a70eef 37
5c48d132 38%define dietprefix %{_prefix}/lib/dietlibc
b633677b 39# for some reason known only to rpm there must be "\\|" not "\|" here
7e6f0cf7 40%define libarch %(echo %{_target_cpu} | sed -e 's/i.86\\|pentium.\\|athlon/i386/;s/amd64/x86_64/;s/armv.*/arm/')
b633677b 41
c3a70eef 42%description
43Small libc for building embedded applications.
44
f92ec944 45%description -l pl.UTF-8
dd5e72ff
JB
46Niewielka libc do budowania aplikacji wbudowanych.
47
f92ec944
JR
48%description -l pt_BR.UTF-8
49A diet libc e' uma libc otimizada para criar pequenos binários
b633677b 50estaticamente linkados para Linux.
aae0fca7 51
c3a70eef 52%package devel
09de3116 53Summary: Development files for dietlibc
96cac672
ER
54Summary(pl.UTF-8): Pliki dla programistów używających dietlibc
55Summary(pt_BR.UTF-8): libc pequena otimizada para tamanho
09de3116 56Group: Development/Libraries
46f54929 57Requires: %{name} = %{epoch}:%{version}-%{release}
c3a70eef 58
59%description devel
dd5e72ff
JB
60Small libc for building embedded applications - development files.
61
f92ec944 62%description devel -l pl.UTF-8
dd5e72ff 63Niewielka libc do budowania aplikacji wbudowanych - pliki dla
f92ec944 64programistów.
c3a70eef 65
e72c8dd4
MM
66%package static
67Summary: Static libraries for dietlibc
96cac672 68Summary(pl.UTF-8): Biblioteki statyczne dla dietlibc
e72c8dd4 69Group: Development/Libraries
46f54929 70Requires: %{name}-devel = %{epoch}:%{version}-%{release}
e72c8dd4
MM
71
72%description static
73Small libc for building embedded applications - static libraries.
74
f92ec944 75%description static -l pl.UTF-8
e72c8dd4
MM
76Niewielka libc do budowania aplikacji wbudowanych - biblioteki
77statyczne.
78
c3a70eef 79%prep
2bb9d10d 80%setup -q
3c8e634d 81%patch14 -p1
b633677b
JB
82%patch0 -p1
83%patch1 -p1
b0443187 84%patch2 -p1
38ed02e8 85%patch3 -p1
d227bc8d 86%patch4 -p1
6cfbdaaf 87%patch5 -p1
88cc7f71 88%patch6 -p1
2304c81d
AM
89%patch7 -p1
90%patch8 -p1
91%{!?with_ssp:%patch9 -p1}
92%patch10 -p1
93%patch11 -p1
94%patch12 -p1
f7808423 95%patch13 -p1
1f8a1668 96
c3a70eef 97%build
c6a4651e 98export OPTFLAGS="%{rpmcflags}%{?with_ssp: -fno-stack-protector} -fno-strict-aliasing"
2bb9d10d 99%ifarch sparc sparcv9
c7d60d50 100sparc32 \
101%endif
4f4bb2ab 102%{__make} -j1 all \
1f3436a8
JB
103 prefix=%{dietprefix} \
104 CC="%{__cc}"
8d4158b9 105%ifarch %{ix86}
4f4bb2ab 106%{__make} -j1 dyn \
1f3436a8
JB
107 prefix=%{dietprefix} \
108 CC="%{__cc}"
8d4158b9 109%endif
c3a70eef 110
111%install
09de3116 112rm -rf $RPM_BUILD_ROOT
e72c8dd4
MM
113install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_bindir},%{_mandir}/man1}
114
23c8844b 115%ifarch sparc sparcv9
116sparc32 \
117%endif
b9fb397c
PG
118%{__make} install \
119 DESTDIR=$RPM_BUILD_ROOT \
120 prefix=%{dietprefix}
1f8a1668 121
e72c8dd4
MM
122mv $RPM_BUILD_ROOT%{dietprefix}/bin/* $RPM_BUILD_ROOT%{_bindir}
123mv $RPM_BUILD_ROOT%{dietprefix}/man/man1/* $RPM_BUILD_ROOT%{_mandir}/man1
124rm -rf $RPM_BUILD_ROOT%{dietprefix}/{bin,man}
125rm -f $RPM_BUILD_ROOT%{_bindir}/diet-dyn
1f8a1668 126
b633677b 127cat > $RPM_BUILD_ROOT%{_bindir}/%{_target_cpu}-dietlibc-gcc <<EOF
e72c8dd4
MM
128#!/bin/sh
129exec %{_bindir}/diet gcc "\$@"
130EOF
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.115652 seconds and 4 git commands to generate.