+%define min_kernel 2.2.0
Summary: GNU libc
Summary(de): GNU libc
Summary(fr): GNU libc
Summary(pl): GNU libc
Summary(tr): GNU libc
name: glibc
-Version: 2.2
-Release: 3
+Version: 2.2.3
+Release: 15
License: LGPL
Group: Libraries
Group(de): Libraries
Group(fr): Librairies
Group(pl): Biblioteki
-Source0: ftp://sources.redhat.com/pub/glibc/releases/%{name}-%{version}.tar.bz2
-Source1: ftp://sources.redhat.com/pub/glibc/releases/%{name}-linuxthreads-%{version}.tar.bz2
+Source0: ftp://sources.redhat.com/pub/glibc/releases/%{name}-%{version}.tar.gz
+Source1: ftp://sources.redhat.com/pub/glibc/releases/%{name}-linuxthreads-%{version}.tar.gz
Source2: nscd.init
Source3: nscd.sysconfig
Source4: nscd.logrotate
Patch5: %{name}-linuxthreads-lock.patch
Patch6: %{name}-pthread_create-manpage.patch
Patch7: %{name}-sparc-linux-chown.patch
-Patch8: %{name}-ldconfig.patch
-Patch9: %{name}-getxxxxinfo.patch
+Patch8: %{name}-ldconfig-bklinks.patch
+Patch9: %{name}-getconf.patch
+Patch10: %{name}-confname.patch
+Patch11: %{name}-nis.patch
+Patch12: %{name}-speed.patch
+Patch13: %{name}-paths.patch
+Patch14: %{name}-vaargs.patch
URL: http://www.gnu.org/software/libc/
BuildRequires: perl
BuildRequires: gd-devel
+BuildRequires: libpng-devel
+BuildRequires: gettext-devel >= 0.10.36
BuildRequires: texinfo
+BuildRequires: rpm-build >= 4.0-11
Provides: ld.so.2
Provides: ldconfig
Provides: /sbin/ldconfig
-Obsoletes: %{name}-profile
Obsoletes: %{name}-debug
Obsoletes: ldconfig
Autoreq: false
+Prereq: basesystem
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+Conflicts: kernel < %{min_kernel}
%description
Contains the standard libraries that are used by multiple programs on
Group(de): Netzwerkwesen/Server
Group(pl): Sieciowe/Serwery
Prereq: /sbin/chkconfig
-Requires: rc-scripts >= 0.2.0
+Prereq: rc-scripts >= 0.2.0
+Requires: %{name} = %{version}
%description -n nscd
nscd caches name service lookups; it can dramatically improve
Group: Daemons
Group(de): Server
Group(pl): Serwery
+Requires: %{name} = %{version}
%description -n localedb-src
This add-on package contains the data needed to build the locale data
Group: Daemons
Group(de): Server
Group(pl): Serwery
+Requires: %{name} = %{version}
%description -n iconv
Convert encoding of given files from one encoding to another. You need
%package memusage
Summary: A toy.
-Group: Toys
-###### Unknown group!
+Group: Applications
+Group(de): Applikationen
+Group(pl): Aplikacje
Requires: %{name} = %{version}
Requires: gd
%patch5 -p1
%patch6 -p1
%patch7 -p1
-%patch8 -p0
+%patch8 -p1
%patch9 -p1
+%patch10 -p1
+%patch11 -p1
+%patch12 -p1
+%patch13 -p1
+%patch14 -p1
%build
-%configure \
+LDFLAGS=" " ; export LDFLAGS
+%configure2_13 \
--enable-add-ons=linuxthreads \
- --enable-kernel="%{?kernel:%{kernel}}%{!?kernel:2.2.0} \
+ --enable-kernel="%{?kernel:%{kernel}}%{!?kernel:%{min_kernel}}" \
--enable-profile \
--disable-omitfp
math/libm_pic.a libm.map
resolv/libresolv_pic.a"
-install $PICFILES $RPM_BUILD_ROOT/%{_libdir}
-install elf/soinit.os $RPM_BUILD_ROOT/%{_libdir}/soinit.o
-install elf/sofini.os $RPM_BUILD_ROOT/%{_libdir}/sofini.o
+install $PICFILES $RPM_BUILD_ROOT/%{_libdir}
+install elf/soinit.os $RPM_BUILD_ROOT/%{_libdir}/soinit.o
+install elf/sofini.os $RPM_BUILD_ROOT/%{_libdir}/sofini.o
-mv -f $RPM_BUILD_ROOT/lib/libmemusage.so $RPM_BUILD_ROOT%{_libdir}
-mv -f $RPM_BUILD_ROOT/lib/libpcprofile.so $RPM_BUILD_ROOT%{_libdir}
+mv -f $RPM_BUILD_ROOT/lib/libmemusage.so $RPM_BUILD_ROOT%{_libdir}
+mv -f $RPM_BUILD_ROOT/lib/libpcprofile.so $RPM_BUILD_ROOT%{_libdir}
%{__make} -C linuxthreads/man
-install linuxthreads/man/*.3thr $RPM_BUILD_ROOT%{_mandir}/man3
+install linuxthreads/man/*.3thr $RPM_BUILD_ROOT%{_mandir}/man3
rm -rf $RPM_BUILD_ROOT%{_datadir}/zoneinfo/{localtime,posixtime,posixrules}
-ln -sf ../../..%{_sysconfdir}/localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/localtime
-ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixtime
-ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixrules
-ln -sf ../..%{_libdir}/libbsd-compat.a $RPM_BUILD_ROOT%{_libdir}/libbsd.a
+ln -sf ../../..%{_sysconfdir}/localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/localtime
+ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixtime
+ln -sf localtime $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixrules
+ln -sf ../..%{_libdir}/libbsd-compat.a $RPM_BUILD_ROOT%{_libdir}/libbsd.a
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/localtime
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/nscd
-install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/nscd
-install nscd/nscd.conf $RPM_BUILD_ROOT%{_sysconfdir}
-install nss/nsswitch.conf $RPM_BUILD_ROOT%{_sysconfdir}
+install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd
+install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/nscd
+install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/nscd
+install nscd/nscd.conf $RPM_BUILD_ROOT%{_sysconfdir}
+install nss/nsswitch.conf $RPM_BUILD_ROOT%{_sysconfdir}
install %{SOURCE5} $RPM_BUILD_ROOT%{_mandir}/man8/
gzip -9nf README NEWS FAQ BUGS NOTES PROJECTS documentation/*
+# strip ld.so with --strip-debug only (other ELFs are stripped by rpm):
+%{!?debug:strip -g -R .comment -R .note $RPM_BUILD_ROOT/lib/ld-%{version}.so}
+
# Collect locale files and mark them with %%lang()
rm -f glibc.lang
for i in $RPM_BUILD_ROOT%{_datadir}/locale/* $RPM_BUILD_ROOT%{_libdir}/locale/* ; do
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
+%post memusage -p /sbin/ldconfig
+%postun memusage -p /sbin/ldconfig
+
%post devel
[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
%attr(755,root,root) %{_bindir}/catchsegv
%attr(755,root,root) %{_bindir}/getent
%attr(755,root,root) %{_bindir}/glibcbug
+%attr(755,root,root) %{_bindir}/iconv
%attr(755,root,root) %{_bindir}/ldd
+%ifnarch alpha
%attr(755,root,root) %{_bindir}/lddlibc4
+%endif
%attr(755,root,root) %{_bindir}/locale
%attr(755,root,root) %{_bindir}/rpcgen
%attr(755,root,root) %{_bindir}/tzselect
%files memusage
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/memusage*
+%attr(755,root,root) %{_libdir}/libmemusage*
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/*prof*
%attr(755,root,root) %{_bindir}/*trace
-%{_includedir}/*.h
-%{_includedir}/arpa
-%{_includedir}/bits
-%{_includedir}/gnu
-%{_includedir}/net
-%{_includedir}/netash
-%{_includedir}/netatalk
-%{_includedir}/netax25
-%{_includedir}/neteconet
-%{_includedir}/netinet
-%{_includedir}/netipx
-%{_includedir}/netpacket
-%{_includedir}/netrom
-%{_includedir}/netrose
-%{_includedir}/nfs
-%{_includedir}/protocols
-%{_includedir}/rpc
-%{_includedir}/rpcsvc
-%{_includedir}/scsi
-%{_includedir}/sys
-
-%{_infodir}/libc.inf*.gz
+%{_includedir}/*
+
+%{_infodir}/libc.info*
%attr(755,root,root) %{_libdir}/lib*.so
%attr(755,root,root) %{_libdir}/*crt*.o
%files -n iconv
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/iconv
%dir %{_libdir}/gconv
%{_libdir}/gconv/gconv-modules
%attr(755,root,root) %{_libdir}/gconv/*.so