Summary: A small libc implementation
Summary(ja): 小さな libc の実装
Name: dietlibc
Version: 0.31
Release: 1%{?_dist_release}
Group: Development/Libraries
License: GPL
Url: http://www.fefe.de/dietlibc/
ExclusiveArch: i386 x86_64 alpha ppc
Source0: %{name}-%{version}.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-root
Patch1:		dietlibc-0.28-setpriority.patch
Patch3:		dietlibc-0.24-gnuokay.patch
Patch10:	dietlibc-0.29-scall.patch
Patch30:	dietlibc-0.30-longdouble.patch
Patch31:	dietlibc-0.31-defpath.patch
Patch32:	dietlibc-0.31-stacksmash.patch
Patch33:	dietlibc-0.31-stacksmash-dyn.patch


%description
A small libc implementation

%description -l ja
小さな libc の実装


%prep
%setup -q
%patch1  -p1 -b .nice
%patch3  -p1 -b .gnuokay
%patch10 -p1 -b .scall
%patch30 -p1 -b .longdouble
%patch31 -p1 -b .defpath
%patch32 -p1 -b .stacksmash
%patch33 -p1 -b .stacksmash-dyn

sed -i -e 's!strip !: !g' Makefile

%global fixcflags	-fomit-frame-pointer -fno-exceptions -fno-asynchronous-unwind-tables -Os
%global basemakeflags	prefix=%_libdir/dietlibc BINDIR=%_bindir MAN1DIR=%_mandir/man1 COMMENT=: CFLAGS="$RPM_OPT_FLAGS %fixcflags" PDIET=%_libdir/dietlibc
%global makeflags	%basemakeflags

%build
make %makeflags all %{?_smp_mglags}


%install
rm -rf $RPM_BUILD_ROOT
make %makeflags DESTDIR=$RPM_BUILD_ROOT install

ln -s lib-%_arch ${RPM_BUILD_ROOT}%_libdir/dietlibc/lib-%_arch-%_vendor

chmod a-x $RPM_BUILD_ROOT%_libdir/dietlibc/lib-*/*.o
rm -f $RPM_BUILD_ROOT%_bindir/dnsd


%clean
rm -rf $RPM_BUILD_ROOT


%files
%defattr(-,root,root)
%doc AUTHOR BUGS CAVEAT CHANGES README THANKS TODO
%{_bindir}/diet
%{_libdir}/dietlibc
%{_mandir}/man*/*


%changelog
* Sun Jul 27 2008 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 0.31-1
- applied new versioning policy
- spec in UTF-8

* Sat Sep 08 2007 Daisuke SUZUKI <daisuke@linux.or.jp> 0.31-0vl1
- new upstream release

* Fri Jun 11 2004 Daisuke SUZUKI <daisuke@linux.or.jp> 0.25-0vl1
- new upstream release

* Tue Dec 10 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 0.21-2vl1
- based on 0.21-2 from Rawhide and built for Vine Linux

* Tue Nov 19 2002 Bill Nottingham <notting@redhat.com>
- use the right elf definition for hammer

* Fri Nov  1 2002 Jeremy Katz <katzj@redhat.com>
- update to 0.21
- stop applying patches already upstream
- i386 optimized getenv should work now

* Tue Oct 22 2002 Jeremy Katz <katzj@redhat.com>
- also build on alpha, x86_64, and ppc
- add a patch so that the ppc64 kernel still builds for ppc

* Tue Aug 13 2002 Jeremy Katz <katzj@redhat.com>
- apply patch to fix fwrite with empty strings from upstream cvs

* Fri Aug  9 2002 Jeremy Katz <katzj@redhat.com>
- apply patch to fix calloc from upstream cvs

* Fri Aug  9 2002 Jeremy Katz <katzj@redhat.com>
- update to 0.19
- __thread patch is present, so don't apply anymore

* Wed Jul 10 2002 Erik Troan <ewt@redhat.com>
- upgraded to 0.18
- added patch to work around __thread being a gcc 3.1 keyword

* Thu May 23 2002 Tim Powers <timp@redhat.com>
- automated rebuild

* Thu Mar 14 2002 Jeremy Katz <katzj@redhat.com>
- remove the i386 optimized getenv since it seems to break when you have 
  two variables that start out the same (eg LANG and LANGKEY)

* Tue Feb 26 2002 Erik Troan <ewt@redhat.com>
- updated to 0.15 -- no more RH specific patches required

* Wed Feb 20 2002 Jeremy Katz <katzj@redhat.com>
- update to 0.14 which includes a lot of Erik's patches
- include the man page
- munge a few patches
- we want to allow linking against glibc objects

* Mon Feb  4 2002 Bill Nottingham <notting@redhat.com>
- add fdatasync

* Wed Jan 09 2002 Tim Powers <timp@redhat.com>
- automated rebuild

* Sat Dec 15 2001 Erik Troan <ewt@redhat.com>
- fixed putenv to remove environment variables

* Fri Dec 07 2001 Erik Troan <ewt@redhat.com>
- added fnmatch() fix

* Fri Nov 09 2001 Erik Troan <ewt@redhat.com>
- initial packaging
