Summary: A minimal libc subset for use with initramfs. Name: klibc Version: @@VERSION@@ Release: 1 License: BSD/GPL Group: Development/Libraries URL: http://www.zytor.com/mailman/listinfo/klibc Source: http://www.kernel.org/pub/linux/libs/klibc-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot BuildRequires: kernel >= 2.6.0 Packager: H. Peter Anvin Prefix: /usr Vendor: Starving Linux Artists %define klibcdir %{_prefix}/lib/klibc %define libdocdir %{_docdir}/%{name}-%{version}-%{release} %define bindocdir %{_docdir}/%{name}-utils-%{version}-%{release} %description %{name} is intended to be a minimalistic libc subset for use with initramfs. It is deliberately written for small size, minimal entanglement, and portability, not speed. It is definitely a work in progress, and a lot of things are still missing. %package utils Summary: Small utilities built with klibc. Group: Utilities/System Requires: klibc = %{version} %description utils This package contains a collection of programs that are linked against klibc. These duplicate some of the functionality of a regular Linux toolset, but are typically much smaller than their full-function counterparts. They are intended for inclusion in initramfs images and embedded systems. %prep %setup -q cp -dRs /lib/modules/`uname -r`/build ./linux # Shouldn't need this when getting the build tree from /lib/modules # make -C linux defconfig ARCH=%{_target_cpu} # make -C linux prepare ARCH=%{_target_cpu} # Deal with braindamage in RedHat's kernel-source RPM rm -f linux/include/linux/config.h cat < linux/include/linux/config.h #ifndef _LINUX_CONFIG_H #define _LINUX_CONFIG_H #include #endif EOF mkdir -p %{buildroot} %build make ARCH=%{_target_cpu} prefix=%{_prefix} bindir=%{_bindir} \ INSTALLDIR=%{klibcdir} mandir=%{_mandir} INSTALLROOT=%{buildroot} %install rm -rf %{buildroot} make ARCH=%{_target_cpu} prefix=%{_prefix} bindir=%{_bindir} \ INSTALLDIR=%{klibcdir} mandir=%{_mandir} INSTALLROOT=%{buildroot} \ install # Install the docs mkdir -p %{buildroot}%{bindocdir} %{buildroot}%{libdocdir} install -m 444 README %{buildroot}%{libdocdir} install -m 444 klibc/README %{buildroot}%{libdocdir}/README.klibc install -m 444 klibc/arch/README %{buildroot}%{libdocdir}/README.klibc.arch install -m 444 gzip/COPYING %{buildroot}%{bindocdir}/COPYING.gzip install -m 444 gzip/README %{buildroot}%{bindocdir}/README.gzip install -m 444 ipconfig/README %{buildroot}%{bindocdir}/README.ipconfig install -m 444 kinit/README %{buildroot}%{bindocdir}/README.kinit %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) %{klibcdir}/lib %{klibcdir}/include %{_bindir}/klcc /lib/klibc-*.so %doc %{_mandir}/man1/* %doc %{libdocdir}/* %files utils %defattr(-,root,root,-) %{klibcdir}/bin %doc %{bindocdir}/* %changelog * Tue Mar 1 2005 H. Peter Anvin - New "make install" scheme, klcc * Tue Jul 6 2004 H. Peter Anvin - Update to use kernel-source RPM for the kernel symlink. * Sat Nov 29 2003 Bryan O'Sullivan - - Initial build.