%bcond_with tests_nptl # perform NPTL tests on dual build (requires 2.6.x kernel)
%bcond_without localedb # don't build localedb-all (is time consuming)
%bcond_with cross # build using crossgcc (without libgcc_eh)
+%bcond_with boot64 # bootstrap *64 using cross* (sparc64 currently)
%bcond_with pax # apply PaX hack
#
# TODO:
%ifarch sparc64
%undefine with_memusage
%endif
+%if %{with boot64}
+%define with_cross 1
+%ifarch sparc64
+%define __cc sparc64-pld-linux-gcc
+%endif
+%endif
%if %{with linuxthreads} && %{with nptl}
%define with_dual 1
Summary(uk): GNU libc ×ÅÒÓ¦§ 2.3
Name: glibc
Version: 2.3.6
-Release: 2
+Release: 2.9
Epoch: 6
License: LGPL
Group: Libraries
Source3: nscd.sysconfig
Source4: nscd.logrotate
#Source5: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-man-pages.tar.bz2
-Source5: %{name}-man-pages.tar.bz2
-# Source5-md5: 03bee93e9786b3e7dad2570ccb0cbc5c
-#Source6: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
-Source6: %{name}-non-english-man-pages.tar.bz2
-# Source6-md5: 6159f0a9b6426b5f6fc1b0d8d21b9b76
-Source7: %{name}-localedb-gen
-Source8: %{name}-LD-path.c
-Source9: postshell.c
+Source5: http://qboosh.cs.net.pl/man/%{name}-man-pages.tar.bz2
+# Source5-md5: f464eadf3cf06761f65639e44a179e6b
+Source6: %{name}-localedb-gen
+Source7: %{name}-LD-path.c
+Source8: postshell.c
Patch0: %{name}-info.patch
Patch1: %{name}-pl.po-update.patch
Patch2: %{name}-pld.patch
Patch28: %{name}-cross-gcc_eh.patch
Patch29: %{name}-pax_dl-execstack.patch
Patch30: %{name}-large_collate_tables.patch
+Patch31: %{name}-ctype-compat.patch
+Patch32: %{name}-sparc-mman.h.patch
URL: http://www.gnu.org/software/libc/
%{?with_selinux:BuildRequires: audit-libs-devel}
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: binutils >= 2:2.15.90.0.3
+%{!?with_cross:BuildRequires: dietlibc-static}
BuildRequires: gcc >= 5:3.2
-BuildRequires: gcc < 5:4.1
%ifarch ppc ppc64 sparc sparcv9 sparc64
%if %{with nptl} || %{with __thread}
BuildRequires: gcc >= 5:3.4
BuildRequires: rpmbuild(macros) >= 1.213
BuildRequires: sed >= 4.0.5
BuildRequires: texinfo
-BuildRequires: dietlibc-static
AutoReq: false
-PreReq: basesystem
-Requires: glibc-misc = %{epoch}:%{version}-%{release}
+Requires: %{name}-misc = %{epoch}:%{version}-%{release}
+Requires: basesystem
%{?with_tls:Provides: glibc(tls)}
Provides: ldconfig
Provides: /sbin/ldconfig
%package misc
Summary: Utilities and data used by glibc
Summary(pl): Narzêdzia i dane u¿ywane przez glibc
-Group: Development/Libraries
+Group: Applications/System
AutoReq: false
-PreReq: %{name} = %{epoch}:%{version}-%{release}
+Requires(pre): %{name} = %{epoch}:%{version}-%{release}
+Requires: %{name} = %{epoch}:%{version}-%{release}
%description misc
Utilities and data used by glibc.
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: %{name}-headers = %{epoch}:%{version}-%{release}
Requires: %{name}-devel-utils = %{epoch}:%{version}-%{release}
-Requires: %{name}-devel-doc = %{epoch}:%{version}-%{release}
Provides: %{name}-devel(%{_target_cpu}) = %{epoch}:%{version}-%{release}
Obsoletes: libiconv-devel
%package headers
Summary: Header files for development using standard C libraries
Summary(pl): Pliki nag³ówkowe do tworzenia programów przy u¿yciu standardowych bibliotek C
-Group: Development/Libraries
+Group: Development/Building
Provides: %{name}-headers(%{_target_cpu}) = %{epoch}:%{version}-%{release}
%ifarch %{x8664}
# If both -m32 and -m64 is to be supported on AMD64, x86_64 package
Pakiet glibc-devel-utils zawiera narzêdzia niezbêdne do rozwijania
programów u¿ywaj±cych standardowych bibliotek C (u¿ywanych przez
prawie wszystkie programy). Je¶li tworzymy programy korzystaj±ce ze
-standardowych bibliotek C, system wymaga dostêpno¶ci tych
-narzêdzi do tworzenia programów wykonywalnych.
+standardowych bibliotek C, system wymaga dostêpno¶ci tych narzêdzi do
+tworzenia programów wykonywalnych.
Ten pakiet nale¿y zainstalowaæ je¶li zamierzamy tworzyæ programy
korzystaj±ce ze standardowych bibliotek C.
Summary(ru): ëÜÛÉÒÕÀÝÉÊ ÄÅÍÏÎ ÓÅÒ×ÉÓÏ× ÉÍÅÎ
Summary(uk): ëÅÛÕÀÞÉÊ ÄÅÍÏÎ ÓÅ×¦Ó¦× ¦ÍÅÎ
Group: Networking/Daemons
-PreReq: rc-scripts >= 0.2.0
Requires(pre): /bin/id
Requires(pre): /usr/bin/getgid
Requires(pre): /usr/sbin/groupadd
Requires(postun): /usr/sbin/userdel
Requires: %{name} = %{epoch}:%{version}-%{release}
%{?with_selinux:Requires: libselinux >= 1.18}
+Requires: rc-scripts >= 0.2.0
Provides: group(nscd)
Provides: user(nscd)
Summary(es): GNU libc - bibliotecas de 64 bits
Summary(pl): GNU libc - biblioteki 64-bitowe
Group: Libraries
-PreReq: basesystem
Requires: %{name}-misc = %{epoch}:%{version}-%{release}
+Requires: basesystem
Provides: glibc = %{epoch}:%{version}-%{release}
%{?with_tls:Provides: glibc(tls)}
Provides: ldconfig
%patch4 -p1
%patch5 -p1
%patch6 -p1
-# FIXME
-#%patch7 -p1
+#%patch7 -p1 UPDATE/DROP (which kernels cause problems?)
%patch8 -p1
%patch9 -p1
%patch10 -p1
%{?with_cross:%patch28 -p1}
%{?with_pax:%patch29 -p1}
%patch30 -p1
+%patch31 -p1
+%patch32 -p1
chmod +x scripts/cpp
%if %{without cross}
# compiling static using diet vs glibc saves 400k
-diet -Os %{__cc} %{SOURCE9} %{rpmcflags} -static -o postshell
-diet -Os %{__cc} %{SOURCE8} %{rpmcflags} -static -o glibc-postinst
+diet -Os %{__cc} %{SOURCE8} %{rpmcflags} -static -o postshell
+diet -Os %{__cc} %{SOURCE7} %{rpmcflags} -static -o glibc-postinst
%endif
%install
install nss/nsswitch.conf $RPM_BUILD_ROOT%{_sysconfdir}
bzip2 -dc %{SOURCE5} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
-bzip2 -dc %{SOURCE6} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
> $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.cache
install -d $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d
echo 'include ld.so.conf.d/*.conf'> $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf
# XXX: to be added when become supported by glibc
# as (atk, gail)
# az_IR (gtk+)
-# dv, kok, ps, sw (iso-codes)
+# dv, kok, ps (iso-codes)
# my (gaim)
# tk, ug, yo (used by GNOME)
#
en_AU en_CA en_US eo es_AR es_MX es_NI et eu fa fo fy ga gez gu gv he hi \
hsb hy ia id is it_CH iu ka kk kl kn ku kw ky leet lg li lo lt lv mi mk \
ml mn mr ms mt nds ne nl_BE nn nso oc om or pa pt rm ro ru rw sa se sid \
- sl so sq sr sr@Latn sr@ije ss syr ta te tg th ti tig tl tlh tt uk ur uz \
- ve vi wa wal xh yi zu ; do
+ sl so sq sr sr@Latn sr@ije ss syr sw ta te tg th ti tig tl tlh tt uk ur \
+ uz ve vi wa wal xh yi zu ; do
if [ ! -d $RPM_BUILD_ROOT%{_datadir}/locale/$i/LC_MESSAGES ]; then
install -d $RPM_BUILD_ROOT%{_datadir}/locale/$i/LC_MESSAGES
lang=`echo $i | sed -e 's/_.*//'`
cd -
# localedb-gen infrastructure
-install %{SOURCE7} $RPM_BUILD_ROOT%{_bindir}/localedb-gen
+install %{SOURCE6} $RPM_BUILD_ROOT%{_bindir}/localedb-gen
install localedata/SUPPORTED $RPM_BUILD_ROOT%{_datadir}/i18n
# shutup check-files
%lang(cs) %{_mandir}/cs/man7/*
%lang(de) %{_mandir}/de/man5/tzfile.5*
%lang(de) %{_mandir}/de/man7/*
+%lang(es) %{_mandir}/es/man1/ldd.1*
%lang(es) %{_mandir}/es/man5/locale.5*
%lang(es) %{_mandir}/es/man5/nsswitch.conf.5*
%lang(es) %{_mandir}/es/man5/tzfile.5*
%lang(ja) %{_mandir}/ja/man8/tzselect.8*
%lang(ja) %{_mandir}/ja/man8/zdump.8*
%lang(ja) %{_mandir}/ja/man8/zic.8*
+%lang(ko) %{_mandir}/ko/man1/ldd.1*
%lang(ko) %{_mandir}/ko/man5/nsswitch.conf.5*
%lang(ko) %{_mandir}/ko/man5/tzfile.5*
%lang(ko) %{_mandir}/ko/man7/*
%lang(pt) %{_mandir}/pt/man8/tzselect.8*
%lang(pt) %{_mandir}/pt/man8/zdump.8*
%lang(pt) %{_mandir}/pt/man8/zic.8*
+%lang(ru) %{_mandir}/ru/man1/getent.1*
+%lang(ru) %{_mandir}/ru/man1/iconv.1*
+%lang(ru) %{_mandir}/ru/man1/ldd.1*
+%lang(ru) %{_mandir}/ru/man1/locale.1*
+%lang(ru) %{_mandir}/ru/man1/rpcgen.1*
+%lang(ru) %{_mandir}/ru/man5/locale.5*
%lang(ru) %{_mandir}/ru/man5/nsswitch.conf.5*
%lang(ru) %{_mandir}/ru/man5/tzfile.5*
%lang(ru) %{_mandir}/ru/man7/*
+%lang(ru) %{_mandir}/ru/man8/ld*.8*
+%lang(ru) %{_mandir}/ru/man8/rpcinfo.8*
%lang(ru) %{_mandir}/ru/man8/tzselect.8*
%lang(ru) %{_mandir}/ru/man8/zdump.8*
%lang(ru) %{_mandir}/ru/man8/zic.8*
+%lang(tr) %{_mandir}/tr/man1/iconv.1*
+%lang(tr) %{_mandir}/tr/man1/ldd.1*
%lang(zh_CN) %{_mandir}/zh_CN/man1/iconv.1*
%lang(zh_CN) %{_mandir}/zh_CN/man1/ldd.1*
%lang(zh_CN) %{_mandir}/zh_CN/man5/locale.5*
%lang(nl) %{_mandir}/nl/man3/*
%lang(pl) %{_mandir}/pl/man3/*
%lang(pt) %{_mandir}/pt/man3/*
+%lang(ru) %{_mandir}/ru/man1/sprof.1*
%lang(ru) %{_mandir}/ru/man3/*
+%lang(tr) %{_mandir}/tr/man3/*
%lang(uk) %{_mandir}/uk/man3/*
%lang(zh_CN) %{_mandir}/zh_CN/man3/*
%{_mandir}/man5/nscd.conf.5*
%{_mandir}/man8/nscd.8*
%{_mandir}/man8/nscd_nischeck.8*
+%lang(es) %{_mandir}/es/man5/nscd.conf.5*
+%lang(es) %{_mandir}/es/man8/nscd.8*
%lang(fr) %{_mandir}/fr/man5/nscd.conf.5*
%lang(fr) %{_mandir}/fr/man8/nscd.8*
%lang(ja) %{_mandir}/ja/man5/nscd.conf.5*
%lang(ja) %{_mandir}/ja/man8/nscd.8*
%lang(pt) %{_mandir}/pt/man5/nscd.conf.5*
%lang(pt) %{_mandir}/pt/man8/nscd.8*
+%lang(ru) %{_mandir}/ru/man5/nscd.conf.5*
+%lang(ru) %{_mandir}/ru/man8/nscd.8*
+%lang(zh_CN) %{_mandir}/zh_CN/man5/nscd.conf.5*
%files -n localedb-src
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/localedb-gen
%{_datadir}/i18n
%{_mandir}/man1/localedef.1*
+%lang(ru) %{_mandir}/ru/man1/localedef.1*
%if %{with localedb}
%files localedb-all