]> git.pld-linux.org Git - packages/glibc.git/blobdiff - glibc.spec
- note about still failing alpha tests
[packages/glibc.git] / glibc.spec
index 891a6274e6e67a3bcce5e38374acbcea53c244fd..8dbcf6efcb04062e6af5c17b1d9ac0817fc34ee1 100644 (file)
@@ -8,7 +8,7 @@
 %bcond_with    kernelheaders   # use headers from kernel-headers instead of
                                # linux-libc-headers (evil, breakage etc., don't use)
 %bcond_without dist_kernel     # for above, allow non-distribution kernel
-%bcond_with    nptl            # use nptl instead of linuxthreads
+%bcond_with    nptl            # use nptl instead of linuxthreads (implies tls)
 %bcond_with    tls             # use tls
 %bcond_with    tests           # perform "make test"
 
 # TODO:
 # - localedb-gen man pages(?)
 # - fix what trojan broke while upgreading (getaddrinfo-workaround)
-#
-# WARNING:
-#      posix zoneinfo dir removed, /etc/rc.d/init.d/timezone must be changed
-#      in order to use this version!
+# - math/{test-fenv,test-tgmath,test-float,test-ifloat},
+#   linuxthreads/tst-cancel8, debug/backtrace-tst(SEGV)  fail on alpha
 #
 
 %{!?min_kernel:%global          min_kernel      2.4.6}
 
 %if %{with nptl}
 # it seems that nptl uses cmpxchgl (available since i486) on x86
-%ifarch i486 i586 i686 pentium3 pentium4 athlon amd64 ia64 s390 s390x sparcv9 ppc ppc64
+%ifarch i486 i586 i686 pentium3 pentium4 athlon amd64 ia64 alpha s390 s390x sparcv9 ppc ppc64
 %if "%{min_kernel}" < "2.6.0"
 %global                min_kernel      2.6.0
 %endif
+# NPTL requires TLS
+%define                with_tls        1
 %else
-%undefine with_nptl
+%undefine      with_nptl
 %endif
 %endif
 
 %if %{with tls}
-%ifnarch %{ix86} amd64 ia64 s390 s390x sparc sparcv9 ppc ppc64
-%undefine with_tls
+%ifnarch %{ix86} amd64 ia64 alpha s390 s390x sparc sparcv9 ppc ppc64
+%undefine      with_tls
+%endif
 %endif
+
+%ifarch sparc64
+%undefine      with_memusage
 %endif
 
-%define                llh_version     7:2.6.4.0
-%define                _snap           20040603
+%define                llh_version     7:2.6.6.0
+%define                _snap           20040722
 
 Summary:       GNU libc
 Summary(de):   GNU libc
@@ -55,13 +59,13 @@ Summary(tr):        GNU libc
 Summary(uk):   GNU libc ×ÅÒÓ¦§ 2.3
 Name:          glibc
 Version:       2.3.4
-Release:       0.%{_snap}.1%{?with_nptl:+nptl}
+Release:       0.%{_snap}.2%{?with_nptl:+nptl}%{!?with_nptl:%{?with_tls:+tls}}
 Epoch:         6
 License:       LGPL
 Group:         Libraries
 #Source0:      ftp://sources.redhat.com/pub/glibc/releases/%{name}-%{version}.tar.bz2
 Source0:       %{name}-%{_snap}.tar.bz2
-# Source0-md5: 8564ff95873944201e4bb6317ea070d6
+# Source0-md5: 492f7dbecb7f8e5c03d48dd5443a1e88
 #Source1:      ftp://sources.redhat.com/pub/glibc/releases/%{name}-linuxthreads-%{version}.tar.bz2
 #Source1:      %{name}-linuxthreads-2.3.3.tar.bz2
 Source2:       nscd.init
@@ -92,18 +96,21 @@ Patch12:    %{name}-no_opt_override.patch
 Patch13:       %{name}-kernel_includes.patch
 Patch14:       %{name}-includes.patch
 Patch15:       %{name}-soinit-EH_FRAME.patch
-Patch17:       %{name}-sparc-errno_fix.patch
-Patch18:       %{name}-make.patch
-Patch20:       %{name}-tests-noproc.patch
-Patch21:       %{name}-linuxthreads-ppc-fix.patch
-Patch23:       %{name}-new-charsets.patch
-Patch26:       %{name}-sr_CS.patch
+Patch16:       %{name}-sparc-errno_fix.patch
+Patch17:       %{name}-csu-quotes.patch
+Patch18:       %{name}-tests-noproc.patch
+Patch19:       %{name}-new-charsets.patch
+Patch20:       %{name}-sr_CS.patch
+Patch21:       %{name}-sparc64-dl-machine.patch
+Patch22:       %{name}-tzfile-noassert.patch
+Patch23:       %{name}-ifreq.patch
+Patch24:       %{name}-morelocales.patch
 # PaX
 Patch30:       %{name}-pax_iconvconfig.patch
 Patch31:       %{name}-pax_dl-execstack.patch
 URL:           http://www.gnu.org/software/libc/
 BuildRequires: automake
-BuildRequires: binutils >= 2.13.90.0.2
+BuildRequires: binutils >= 2.15.90.0.3
 BuildRequires: gcc >= 3.2
 %{?with_memusage:BuildRequires:        gd-devel >= 2.0.1}
 BuildRequires: gettext-devel >= 0.10.36
@@ -136,10 +143,11 @@ BuildRoot:        %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                debugcflags     -O1 -g
 %ifarch sparc64
-%undefine      with_memusage
 %define        specflags_sparc64       -mvis -fcall-used-g6
 %define                _libdir                 /usr/lib64
 %endif
+# we don't want perl dependency in glibc-devel
+%define                _noautoreqfiles         %{_bindir}/mtrace
 # hack: don't depend on rpmlib(PartialHardlinkSets) for easier upgrade from Ra
 # (hardlinks here are unlikely to be "partial"... and rpm 4.0.2 from Ra was
 # patched not to crash on partial hardlinks too)
@@ -157,14 +165,15 @@ national language (locale) support and timezone databases.
 Can be used on: Linux kernel >= %{min_kernel}.
 
 %description -l es
-Contiene las bibliotecas estándared que son usadas por varios programas
-del sistema. Para ahorrar el espacio en el disco y la memoria, igual que
-para facilitar actualizaciones, código común del sistema se guarda en un
-sitio y es compartido entre los programas. Este paquete contiene las
-bibliotecas compartidas más importantes, es decir la biblioteca C estándar
-y la biblioteca estándar de matemática. Sin éstas, un sistema Linux no
-podrá funcionar. También está incluido soporte de idiomas nacionales
-(locale) y bases de datos de zona de tiempo.
+Contiene las bibliotecas estándared que son usadas por varios
+programas del sistema. Para ahorrar el espacio en el disco y la
+memoria, igual que para facilitar actualizaciones, código común del
+sistema se guarda en un sitio y es compartido entre los programas.
+Este paquete contiene las bibliotecas compartidas más importantes, es
+decir la biblioteca C estándar y la biblioteca estándar de matemática.
+Sin éstas, un sistema Linux no podrá funcionar. También está incluido
+soporte de idiomas nacionales (locale) y bases de datos de zona de
+tiempo.
 
 Puede usarse con: núcleo Linux >= %{min_kernel}.
 
@@ -262,7 +271,7 @@ Summary:    Utilities and data used by glibc
 Summary(pl):   Narzêdzia i dane u¿ywane przez glibc
 Group:         Development/Libraries
 AutoReq:       false
-Requires:      %{name} = %{epoch}:%{version}-%{release}
+PreReq:                %{name} = %{epoch}:%{version}-%{release}
 
 %description misc
 Utilities and data used by glibc.
@@ -296,8 +305,8 @@ verwenden (also fast alle), ben
 und Objektdateien zum Erstellen der ausführbaren Programme.
 
 %description devel -l es
-Para desarrollar programas que utilizan las bibliotecas C estándar
-(lo cual hacen prácticamente todos los programas), el sistema necesita
+Para desarrollar programas que utilizan las bibliotecas C estándar (lo
+cual hacen prácticamente todos los programas), el sistema necesita
 disponer de estos ficheros de cabecera y de objetos para crear los
 ejecutables.
 
@@ -357,11 +366,11 @@ nscd with 2.0 kernels, due to bugs in the kernel-side thread support.
 nscd happens to hit these bugs particularly hard.
 
 %description -n nscd -l es
-nscd guarda las peticiones del servicio de nombres en una caché; eso puede
-aumentar drásticamente las prestaciones de NIS+, y también puede ayudar
-con DNS. No puede usar nscd con núcleos 2.0, por contener éstos errores
-en el soporte de hilos. Resulta que estos errores impactan el nscd de manera
-realmente grave.
+nscd guarda las peticiones del servicio de nombres en una caché; eso
+puede aumentar drásticamente las prestaciones de NIS+, y también puede
+ayudar con DNS. No puede usar nscd con núcleos 2.0, por contener éstos
+errores en el soporte de hilos. Resulta que estos errores impactan el
+nscd de manera realmente grave.
 
 %description -n nscd -l ja
 Nscd ¤Ï¥Í¡¼¥à¥µ¡¼¥Ó¥¹»²¾È¤ò¥­¥ã¥Ã¥·¥å¤·¡¢NIS+ ¤Î¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò
@@ -423,12 +432,12 @@ installing localedb-src and regenerating database using localedb-gen
 script (when database is generated, localedb-src can be uninstalled).
 
 %description localedb-all -l es
-Este paquete contiene una base de datos de todos los locales soportados
-por glibc. En glibc 2.3.x ése es un fichero grande (aprox. 39 MB) -- si
-prefiere algo más pequeño, sólo con soporte de unos locales elegidos,
-considérese instalar localedb-src y regenerar la base de datos usando
-el escript localedb-gen (una vez que la base de datos esté creada,
-localedb-src se podrá desinstalar).
+Este paquete contiene una base de datos de todos los locales
+soportados por glibc. En glibc 2.3.x ése es un fichero grande (aprox.
+39 MB) -- si prefiere algo más pequeño, sólo con soporte de unos
+locales elegidos, considérese instalar localedb-src y regenerar la
+base de datos usando el escript localedb-gen (una vez que la base de
+datos esté creada, localedb-src se podrá desinstalar).
 
 %description localedb-all -l pl
 Ten pakiet zawiera bazê danych locale dla wszystkich lokalizacji
@@ -503,8 +512,8 @@ Summary(ru):        GNU libc 
 Summary(tr):   Ölçüm desteði olan glibc
 Summary(uk):   GNU libc Ú Ð¦ÄÔÒÉÍËÏÀ ÐÒÏÆÁÊÌÅÒÁ
 Group:         Development/Libraries/Libc
-Obsoletes:     libc-profile
 Requires:      %{name}-devel = %{epoch}:%{version}-%{release}
+Obsoletes:     libc-profile
 
 %description profile
 When programs are being profiled using gprof, they must use these
@@ -556,10 +565,10 @@ composed of individual shared objects. This is used for creating a
 library which is a smaller subset of the standard libc shared library.
 
 %description pic -l es
-El archivo PIC de la biblioteca glibc contiene una biblioteca archivada
-(un fichero ar) compuesta de individuales objetos compartidos. Es usado
-para crear una biblioteca que sea un subconjunto más pequeño de la
-biblioteca libc compartida estándar.
+El archivo PIC de la biblioteca glibc contiene una biblioteca
+archivada (un fichero ar) compuesta de individuales objetos
+compartidos. Es usado para crear una biblioteca que sea un subconjunto
+más pequeño de la biblioteca libc compartida estándar.
 
 %description pic -l pl
 Archiwum PIC biblioteki GNU C zawiera archiwaln± bibliotekê (plik ar)
@@ -658,7 +667,8 @@ Requires:   %{name} = %{epoch}:%{version}-%{release}
 glibc NSS (Name Service Switch) module for NIS+ databases access.
 
 %description -n nss_nisplus -l es
-Módulo NSS (Name Service Switch) de glibc para acceder las bases de datos NIS+.
+Módulo NSS (Name Service Switch) de glibc para acceder las bases de
+datos NIS+.
 
 %description -n nss_nisplus -l pl
 Modu³ glibc NSS (Name Service Switch) dostêpu do baz danych NIS+.
@@ -732,8 +742,8 @@ Development files for 64-bit GNU libc libraries for 64bit
 architecture.
 
 %description -n %{name}64-devel -l es
-Ficheros de desarrollo para las bibliotecas GNU libc de 64 bits para la
-arquitectura 64bit.
+Ficheros de desarrollo para las bibliotecas GNU libc de 64 bits para
+la arquitectura 64bit.
 
 %description -n %{name}64-devel -l pl
 Pliki do programowania z u¿yciem 64-bitowych bibliotek GNU libc dla
@@ -775,12 +785,15 @@ Statyczne 64-bitowe biblioteki GNU libc.
 %{?with_kernelheaders:%patch13}
 %{?!with_kernelheaders:%patch14 -p1}
 %patch15 -p1
-%patch17
+%patch16 -p0
+%patch17 -p1
 %patch18 -p1
+%patch19 -p1
 %patch20 -p1
 %patch21 -p1
+%patch22 -p1
 %patch23 -p1
-%patch26 -p1
+%patch24 -p1
 
 %patch30 -p1
 %patch31 -p1
@@ -789,8 +802,8 @@ chmod +x scripts/cpp
 
 %build
 # Build glibc
-cp /usr/share/automake/config.sub .
-cp /usr/share/automake/config.sub scripts
+cp %{_datadir}/automake/config.sub .
+cp %{_datadir}/automake/config.sub scripts
 %{__aclocal}
 %{__autoconf}
 # i786 (aka pentium4) hack
@@ -814,10 +827,10 @@ LDFLAGS=" " ; export LDFLAGS
 %endif
 %if %{with kernelheaders}
        CPPFLAGS="-I%{_kernelsrcdir}/include" \
-       --with-headers=%{_kernelsrcdir}/include 
+       --with-headers=%{_kernelsrcdir}/include
 %else
        CPPFLAGS="-I%{_includedir}" \
-       --with-headers=%{_includedir} 
+       --with-headers=%{_includedir}
 %endif
 
 # problem compiling with --enable-bounded (must be reported to libc-alpha)
@@ -829,7 +842,7 @@ env LANGUAGE=C LC_ALL=C \
 %{__make} tests 2>&1 | awk '
 BEGIN { file = "" }
 {
-       if (($0 ~ /\*\*\* \[.*\.out\] Error/) && (file == "")) {
+       if (($0 ~ /\*\*\* \[.*\.out\] Error/) && ($0 !~ /annexc/) && (file == "")) {
                file=$0;
                gsub(/.*\[/, NIL, file);
                gsub(/\].*/, NIL, file);
@@ -928,7 +941,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libnss_*.so
 
 # strip ld.so with --strip-debug only (other ELFs are stripped by rpm):
 %ifnarch sparc64
-%{!?debug:strip -g -R .comment -R .note $RPM_BUILD_ROOT/%{_lib}/ld-%{version}.so}
+%{!?debug:strip -g -R .comment -R .note $RPM_BUILD_ROOT/%{_lib}/ld-*.so}
 %endif
 
 # Collect locale files and mark them with %%lang()
@@ -963,15 +976,19 @@ done
 # bn is used for bn_BD or bn_IN?
 # omitted here - already existing (with libc.mo):
 #   be,ca,cs,da,de,el,en_GB,es,fi,fr,gl,hr,hu,it,ja,ko,nb,nl,pl,pt_BR,sk,sv,tr,zh_CN,zh_TW
-for i in af am ar az bg bn br bs cy de_AT en en_AU eo es_AR es_MX et eu fa ga \
-        gr he hi id is ja_JP.SJIS ka kn lg lt lv mk ml mn ms mt nn pt ro ru \
-        se sl sq sr sr@Latn ta tg th uk uz vi wa xh yi zu ; do
+for i in af am ar az bg bn br bs cy de_AT en en_AU en_CA en_US eo es_AR es_MX \
+    et eu fa fo ga gu he hi ia id is ja_JP.SJIS ka kn leet lg li lo lt lv mi \
+    mk ml mn mr ms mt nds ne nn pa pt ro ru se sl sq sr sr@Latn sr@ije ta tg \
+    th uk uz vi wa xh yi zh_HK 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/_.*//'`
                echo "%lang($lang) %{_datadir}/locale/$i" >> ../glibc.lang
        fi
 done
+cd $RPM_BUILD_ROOT%{_datadir}/locale
+ln -s zh_CN zh_SG
+cd -
 
 # localedb-gen infrastructure
 install %{SOURCE7} $RPM_BUILD_ROOT%{_bindir}/localedb-gen
@@ -1010,6 +1027,13 @@ rm -rf $RPM_BUILD_ROOT
 /sbin/ldconfig
 -/sbin/telinit u
 
+%ifarch amd64
+%triggerpostun -n %{name}64 -p /sbin/postshell -- glibc-misc < 6:2.3.4-0.20040505.1
+%else
+%triggerpostun -p /sbin/postshell -- glibc-misc < 6:2.3.4-0.20040505.1
+%endif
+-/bin/mv %{_sysconfdir}/ld.so.conf.rpmsave %{_sysconfdir}/ld.so.conf
+
 %post  memusage -p /sbin/ldconfig
 %postun memusage -p /sbin/ldconfig
 
@@ -1045,8 +1069,10 @@ fi
 %ifnarch sparc64
 %ifarch amd64
 %files -n glibc64
+%defattr(644,root,root,755)
 %else
-%files 
+%files
+%defattr(644,root,root,755)
 %endif
 %defattr(644,root,root,755)
 %doc README NEWS FAQ BUGS
@@ -1084,7 +1110,7 @@ fi
 %attr(755,root,root) %{_bindir}/getent
 %attr(755,root,root) %{_bindir}/iconv
 %attr(755,root,root) %{_bindir}/ldd
-%ifnarch alpha ppc sparc64 amd64
+%ifnarch alpha amd64 ia64 ppc sparc64
 %attr(755,root,root) %{_bindir}/lddlibc4
 %endif
 %attr(755,root,root) %{_bindir}/locale
This page took 0.393417 seconds and 4 git commands to generate.