%if "%{_host_cpu}" == "i586" %define _host_arch i386 %else %define _host_arch %{_host_cpu} %endif Name: uClibc Version: 0.9.31 Release: 1mamba Summary: A C library for developing embedded Linux systems Group: System/Libraries Vendor: openmamba Distribution: openmamba Packager: Silvan Calarco URL: http://www.uclibc.org Source: http://www.uclibc.org/downloads/uClibc-%{version}.tar.bz2 Source1: %{name}-0.9.31-i386-config Source2: %{name}-0.9.31-arm-config License: LGPL PreReq: %{__install_info} Provides: rtld(GNU_HASH) BuildRoot: %{_tmppath}/%{name}-%{version}-root %description uClibc (aka µClibc/pronounced yew-see-lib-see) is a C library for developing embedded Linux systems. It is much smaller than the GNU C Library, but nearly all applications supported by glibc also work perfectly with uClibc. Porting applications from glibc to uClibc typically involves just recompiling the source code. uClibc even supports shared libraries and threading. It currently runs on standard Linux and MMU-less (also known as µClinux) systems with support for alpha, amd64, ARM, Blackfin, cris, h8300, hppa, i386, i960, ia64, m68k, mips/mipsel, PowerPC, SH, SPARC, and v850 processors. If you are building an embedded Linux system and you find that glibc is eating up too much space, you may want to consider using uClibc. If you are building a huge fileserver with 12 Terabytes of storage, then using glibc may make more sense. Unless, for example, that 12 Terabytes will be Network Attached Storage and you plan to burn Linux into the system's firmware... %package devel Summary: Development files for %{name} Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel uClibc (aka µClibc/pronounced yew-see-lib-see) is a C library for developing embedded Linux systems. It is much smaller than the GNU C Library, but nearly all applications supported by glibc also work perfectly with uClibc. Porting applications from glibc to uClibc typically involves just recompiling the source code. uClibc even supports shared libraries and threading. It currently runs on standard Linux and MMU-less (also known as µClinux) systems with support for alpha, amd64, ARM, Blackfin, cris, h8300, hppa, i386, i960, ia64, m68k, mips/mipsel, PowerPC, SH, SPARC, and v850 processors. If you are building an embedded Linux system and you find that glibc is eating up too much space, you may want to consider using uClibc. If you are building a huge fileserver with 12 Terabytes of storage, then using glibc may make more sense. Unless, for example, that 12 Terabytes will be Network Attached Storage and you plan to burn Linux into the system's firmware... This package contains the header and static libraries needed for development. %prep %setup -q %build case %{_host_cpu} in *86) cp %{S:1} .config ;; arm) cp %{S:2} .config ;; esac %make CC=%{_host}-gcc \ %if "%{_host}" != "%{_build}" KERNEL_HEADERS=%{_prefix}/%{_host}/include/ %endif %install [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" %makeinstall CC=%{_host}-gcc \ %if "%{_host}" != "%{_build}" KERNEL_HEADERS=%{_prefix}/%{_host}/include/ %endif %clean [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" %files %defattr(-,root,root) %{_prefix}/%{_host_arch}-linux-uclibc/lib/*.so.* %{_prefix}/%{_host_arch}-linux-uclibc/lib/*.so %files devel %defattr(-,root,root) %{_prefix}/%{_host_arch}-linux-uclibc/usr/lib/*.a %{_prefix}/%{_host_arch}-linux-uclibc/usr/lib/*.o %{_prefix}/%{_host_arch}-linux-uclibc/usr/lib/*.so %{_prefix}/%{_host_arch}-linux-uclibc/usr/include/* %doc COPYING.LIB README TODO %changelog * Tue Apr 20 2010 Silvan Calarco 0.9.31-1mamba - update to 0.9.31 * Thu Jul 03 2008 Silvan Calarco 0.9.29-1mamba - package created by autospec