]> git.pld-linux.org Git - packages/glibc.git/blobdiff - glibc.spec
bogus
[packages/glibc.git] / glibc.spec
index 01a23bf823da7c9242606126276f89f7de2e4327..f90e7c88c7d634ffd0d9dfcb0bb9868923875533 100644 (file)
@@ -16,6 +16,7 @@
 %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    pax             # apply PaX hack
 #
 # TODO:
 # - look at locale fixes/updates in bugzilla
@@ -76,15 +77,15 @@ Summary(ru):        GNU libc 
 Summary(tr):   GNU libc
 Summary(uk):   GNU libc ×ÅÒÓ¦§ 2.3
 Name:          glibc
-Version:       2.3.5
-Release:       4
+Version:       2.3.6
+Release:       2
 Epoch:         6
 License:       LGPL
 Group:         Libraries
 Source0:       ftp://sources.redhat.com/pub/glibc/releases/%{name}-%{version}.tar.bz2
-# Source0-md5: 93d9c51850e0513aa4846ac0ddcef639
+# Source0-md5: bfdce99f82d6dbcb64b7f11c05d6bc96
 Source1:       ftp://sources.redhat.com/pub/glibc/releases/%{name}-linuxthreads-%{version}.tar.bz2
-# Source1-md5: 77011b0898393c56b799bc011a0f37bf
+# Source1-md5: d4eeda37472666a15cc1f407e9c987a9
 Source2:       nscd.init
 Source3:       nscd.sysconfig
 Source4:       nscd.logrotate
@@ -104,6 +105,7 @@ Patch3:             %{name}-crypt-blowfish.patch
 Patch4:                %{name}-linuxthreads-lock.patch
 Patch5:                %{name}-pthread_create-manpage.patch
 Patch6:                %{name}-paths.patch
+Patch7:                %{name}-dl-execstack.patch
 Patch8:                %{name}-missing-nls.patch
 Patch9:                %{name}-java-libc-wait.patch
 Patch10:       %{name}-lthrds_noomit.patch
@@ -123,17 +125,18 @@ Patch23:  %{name}-locale_fixes.patch
 Patch24:       %{name}-ZA_collate.patch
 Patch25:       %{name}-tls_fix.patch
 Patch26:       %{name}-iconvconfig-nxstack.patch
-Patch27:       %{name}-execvp.patch
-Patch28:       %{name}-sys-kd.patch
-Patch29:       %{name}-cross-gcc_eh.patch
-# PaX hack (dropped)
-#PatchX:       %{name}-pax_dl-execstack.patch
+Patch27:       %{name}-sys-kd.patch
+Patch28:       %{name}-cross-gcc_eh.patch
+Patch29:       %{name}-pax_dl-execstack.patch
+Patch30:       %{name}-large_collate_tables.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.0
+BuildRequires: gcc < 5:4.1
 %ifarch ppc ppc64 sparc sparcv9 sparc64
 %if %{with nptl} || %{with __thread}
 BuildRequires: gcc >= 5:3.4
@@ -151,7 +154,6 @@ BuildRequires:      rpm-perlprov
 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}
@@ -302,7 +304,7 @@ Can be used on: Linux kernel >= %{min_kernel}.
 %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}
 
@@ -326,7 +328,7 @@ Group:              Development/Libraries
 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
 
 %description devel
@@ -382,8 +384,9 @@ kitapl
 ×ÉËÏÎÕ×ÁΦ ÆÁÊÌÉ.
 
 %package headers
-Summary:       Header files for development using standard C libraries.
-Group:         Development/Libraries
+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/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
@@ -396,21 +399,41 @@ Obsoletes:        %{name}-headers(athlon)
 Obsoletes:     %{name}-headers(pentium3)
 Obsoletes:     %{name}-headers(pentium4)
 %endif
+%ifarch ppc64
+Obsoletes:     %{name}-headers(ppc)
+%endif
+%ifarch s390x
+Obsoletes:     %{name}-headers(s390)
+%endif
+%ifarch sparc64
+Obsoletes:     %{name}-headers(sparc)
+%endif
 %{!?with_kernelheaders:Requires:       linux-libc-headers >= %{llh_version}}
 
 %description headers
-The glibc-headers package contains the header files necessary
-for developing programs which use the standard C libraries (which are
-used by nearly all programs).  If you are developing programs which
-will use the standard C libraries, your system needs to have these
-standard header files available in order to create the
-executables.
+The glibc-headers package contains the header files necessary for
+developing programs which use the standard C libraries (which are used
+by nearly all programs). If you are developing programs which will use
+the standard C libraries, your system needs to have these standard
+header files available in order to create the executables.
 
 Install glibc-headers if you are going to develop programs which will
 use the standard C libraries.
 
+%description headers -l pl
+Pakiet glibc-headers zawiera pliki nag³ówkowe 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
+standardowych plików nag³ówkowych do tworzenia programów
+wykonywalnych.
+
+Ten pakiet nale¿y zainstalowaæ je¶li zamierzamy tworzyæ programy
+korzystaj±ce ze standardowych bibliotek C.
+
 %package devel-utils
-Summary:       Utilities needed for development using standard C libraries.
+Summary:       Utilities needed for development using standard C libraries
+Summary(pl):   Narzêdzia do tworzenia programów przy u¿yciu standardowych bibliotek C
 Group:         Development/Libraries
 Provides:      %{name}-devel-utils(%{_target_cpu}) = %{epoch}:%{version}-%{release}
 %ifarch %{x8664}
@@ -424,20 +447,40 @@ Obsoletes:        %{name}-devel-utils(athlon)
 Obsoletes:     %{name}-devel-utils(pentium3)
 Obsoletes:     %{name}-devel-utils(pentium4)
 %endif
+%ifarch ppc64
+Obsoletes:     %{name}-devel-utils(ppc)
+%endif
+%ifarch s390x
+Obsoletes:     %{name}-devel-utils(s390)
+%endif
+%ifarch sparc64
+Obsoletes:     %{name}-devel-utils(sparc)
+%endif
 
 %description devel-utils
-The glibc-devel-utils package contains utilities necessary
-for developing programs which use the standard C libraries (which are
-used by nearly all programs).  If you are developing programs which
-will use the standard C libraries, your system needs to have these
-utilities available.
+The glibc-devel-utils package contains utilities necessary for
+developing programs which use the standard C libraries (which are used
+by nearly all programs). If you are developing programs which will use
+the standard C libraries, your system needs to have these utilities
+available.
+
+Install glibc-devel-utils if you are going to develop programs which
+will use the standard C libraries.
 
-Install glibc-devel-utils if you are going to develop programs
-which will use the standard C libraries.
+%description devel-utils -l pl
+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.
+
+Ten pakiet nale¿y zainstalowaæ je¶li zamierzamy tworzyæ programy
+korzystaj±ce ze standardowych bibliotek C.
 
 %package devel-doc
-Summary:       Documentation needed for development using standard C libraries.
-Group:         Development/Libraries
+Summary:       Documentation needed for development using standard C libraries
+Summary(pl):   Dokumentacja do tworzenia programów przy u¿yciu standardowych bibliotek C
+Group:         Documentation
 Provides:      %{name}-devel-doc(%{_target_cpu}) = %{epoch}:%{version}-%{release}
 %ifarch %{x8664}
 # If both -m32 and -m64 is to be supported on AMD64, x86_64 package
@@ -450,14 +493,31 @@ Obsoletes:        %{name}-devel-doc(athlon)
 Obsoletes:     %{name}-devel-doc(pentium3)
 Obsoletes:     %{name}-devel-doc(pentium4)
 %endif
+%ifarch ppc64
+Obsoletes:     %{name}-devel-doc(ppc)
+%endif
+%ifarch s390x
+Obsoletes:     %{name}-devel-doc(s390)
+%endif
+%ifarch sparc64
+Obsoletes:     %{name}-devel-doc(sparc)
+%endif
 
 %description devel-doc
-The glibc-devel-utils package contains info and manual pages necessary
+The glibc-devel-doc package contains info and manual pages necessary
 for developing programs which use the standard C libraries (which are
 used by nearly all programs).
 
-Install glibc-devel-doc if you are going to develop programs
-which will use the standard C libraries.
+Install glibc-devel-doc if you are going to develop programs which
+will use the standard C libraries.
+
+%description devel-doc -l pl
+Pakiet glibc-devel-doc zawiera strony info i manuala przydatne do
+rozwijania programów u¿ywaj±cych standardowych bibliotek C (u¿ywanych
+przez prawie wszystkie programy).
+
+Ten pakiet nale¿y zainstalowaæ je¶li zamierzamy tworzyæ programy
+korzystaj±ce ze standardowych bibliotek C.
 
 %package -n nscd
 Summary:       Name Service Caching Daemon
@@ -511,7 +571,7 @@ nscd 
 Summary:       locale database source code
 Summary(es):   Código fuente de la base de datos de los locales
 Summary(pl):   Kod ¼ród³owy bazy locale
-Group:         Daemons
+Group:         Libraries
 Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      gzip
 Requires:      sed
@@ -564,8 +624,8 @@ pakiet localedb-src mo
 %package -n iconv
 Summary:       Convert encoding of given files from one encoding to another
 Summary(es):   Convierte entre varias codificaciones de los ficheros dados
-Summary(pl):   Program do konwersji plików tekstowych z jednego kodowania do innego
-Group:         Applications/Text
+Summary(pl):   Modu³y do konwersji plików tekstowych z jednego kodowania do innego
+Group:         Libraries
 Requires:      %{name} = %{epoch}:%{version}-%{release}
 
 %description -n iconv
@@ -582,12 +642,12 @@ Generic Character Set Conversion Interface (interfaz gen
 conversión de juegos de caracteres).
 
 %description -n iconv -l pl
-Program do konwersji plików tekstowych z jednego kodowania do innego.
-Musisz mieæ zainstalowany ten pakiet je¿eli wykonujesz konwersjê
-dokumentów z jednego kodowania do innego lub je¿eli masz zainstalowane
-jakie¶ programy, które korzystaj± z Generic Character Set Conversion
-Interface w glibc, czyli z zestawu funkcji z tej biblioteki, które
-umo¿liwiaj± konwersjê kodowania danych z poziomu dowolnego programu.
+Modu³y do konwersji plików tekstowych z jednego kodowania do innego.
+Trzeba mieæ zainstalowany ten pakiet, aby wykonywaæ konwersjê
+dokumentów z jednego kodowania do innego lub do u¿ywania programów
+korzystaj±cych z Generic Character Set Conversion Interface w glibc,
+czyli z zestawu funkcji z tej biblioteki, które umo¿liwiaj± konwersjê
+kodowania danych z poziomu dowolnego programu.
 
 %package static
 Summary:       Static libraries
@@ -597,6 +657,7 @@ Summary(ru):        
 Summary(uk):   óÔÁÔÉÞΦ Â¦Â̦ÏÔÅËÉ glibc
 Group:         Development/Libraries
 Requires:      %{name}-devel = %{epoch}:%{version}-%{release}
+Provides:      %{name}-static(%{_target_cpu}) = %{epoch}:%{version}-%{release}
 Obsoletes:     libiconv-static
 
 %description static
@@ -860,6 +921,8 @@ Biblioteki 64-bitowe GNU libc dla architektury 64bit.
 %patch4 -p1
 %patch5 -p1
 %patch6 -p1
+# FIXME
+#%patch7 -p1
 %patch8 -p1
 %patch9 -p1
 %patch10 -p1
@@ -881,8 +944,9 @@ Biblioteki 64-bitowe GNU libc dla architektury 64bit.
 %patch25 -p1
 %patch26 -p1
 %patch27 -p1
-%patch28 -p1
-%{?with_cross:%patch29 -p1}
+%{?with_cross:%patch28 -p1}
+%{?with_pax:%patch29 -p1}
+%patch30 -p1
 
 chmod +x scripts/cpp
 
@@ -957,9 +1021,11 @@ cd ..
 done
 %endif
 
+%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
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -987,8 +1053,10 @@ install elf/soinit.os                             $RPM_BUILD_ROOT%{_libdir}/soinit.o
 install elf/sofini.os                          $RPM_BUILD_ROOT%{_libdir}/sofini.o
 cd ..
 
+%if %{without cross}
 install postshell                                      $RPM_BUILD_ROOT/sbin
 install glibc-postinst                         $RPM_BUILD_ROOT/sbin
+%endif
 
 %if %{with dual}
 env LANGUAGE=C LC_ALL=C \
@@ -1039,15 +1107,15 @@ rm -rf $RPM_BUILD_ROOT%{_datadir}/zoneinfo/{localtime,posixtime,posixrules,posix
 #done
 #cd -
 
-# Where should s390 go?
-%ifarch %{ix86} ppc sparc
+%ifarch %{ix86} ppc s390 sparc sparcv9
 mv $RPM_BUILD_ROOT%{_includedir}/gnu/stubs.h $RPM_BUILD_ROOT%{_includedir}/gnu/stubs-32.h
 %endif
 
-%ifarch %{x8664} ppc64 sparc64 alpha
+%ifarch %{x8664} ppc64 s390x sparc64
 mv $RPM_BUILD_ROOT%{_includedir}/gnu/stubs.h $RPM_BUILD_ROOT%{_includedir}/gnu/stubs-64.h
 %endif
 
+%ifarch %{ix86} %{x8664} ppc ppc64 s390 s390x sparc sparcv9 sparc64
 cat <<EOF >$RPM_BUILD_ROOT%{_includedir}/gnu/stubs.h
 /* This file selects the right generated file of '__stub_FUNCTION' macros
    based on the architecture being compiled for.  */
@@ -1062,6 +1130,7 @@ cat <<EOF >$RPM_BUILD_ROOT%{_includedir}/gnu/stubs.h
 # error "unexpected value for __WORDSIZE macro"
 #endif
 EOF
+%endif
 
 ln -sf %{_sysconfdir}/localtime        $RPM_BUILD_ROOT%{_datadir}/zoneinfo/localtime
 ln -sf localtime               $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixtime
@@ -1085,7 +1154,8 @@ 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
-> $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d
+echo 'include ld.so.conf.d/*.conf'> $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf
 rm -f $RPM_BUILD_ROOT%{_mandir}/hu/man7/man.7
 
 :> $RPM_BUILD_ROOT/var/log/nscd
@@ -1143,19 +1213,24 @@ done
 # XXX: to be added when become supported by glibc
 # as (atk, gail)
 # az_IR (gtk+)
+# dv, kok, ps (iso-codes)
 # my (gaim)
-# rm (gtkspell)
-# tk, yo (used by GNOME)
+# tk, ug, yo (used by GNOME)
 #
 # NOTES:
-# bn is used for bn_BD or bn_IN?
+# bn is used for bn_BD or bn_IN? Assume bn_IN as nothing for bn_BD appeared
+#   till now
+#
 # 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 ang ar az bg bn br bs cy de_AT en en@boldquot en@quot en_AU \
-    en_CA en_US eo es_AR es_MX et eu fa fo ga gu he hi hsb ia id is it_CH ka \
-    kn ku leet lg li lo lt lv mi mk ml mn mr ms mt nds ne nn nso or pa pt ro \
-    ru rw se sl sq sr sr@Latn sr@ije ss ta tg th tl tlh uk uz ve vi wa xh yi \
-    zu ; do
+#   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 aa af am ang ar az bg bn br bs byn cy de_AT en en@boldquot en@quot \
+    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 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/_.*//'`
@@ -1184,6 +1259,7 @@ rm -rf $RPM_BUILD_ROOT
 # don't run iconvconfig in %%postun -n iconv because iconvconfig doesn't exist
 # when %%postun is run
 
+%if %{without cross}
 %ifarch %{x8664} ppc64 s390x sparc64
 %post  -n %{name}64 -p /sbin/postshell
 %else
@@ -1208,6 +1284,15 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 -/bin/mv %{_sysconfdir}/ld.so.conf.rpmsave %{_sysconfdir}/ld.so.conf
 
+%ifarch %{x8664} ppc64 s390x sparc64
+%triggerpostun -n %{name}64 -p /sbin/postshell -- %{name}64 < 6:2.3.5-7.6
+%else
+%triggerpostun -p /sbin/postshell -- %{name} < 6:2.3.5-7.6
+%endif
+-/bin/cp -f /etc/ld.so.conf /etc/ld.so.conf.rpmsave
+-/bin/sed -i -e '1iinclude ld.so.conf.d/*.conf' /etc/ld.so.conf
+%endif
+
 %post  memusage -p /sbin/ldconfig
 %postun memusage -p /sbin/ldconfig
 
@@ -1258,8 +1343,10 @@ fi
 %endif
 %defattr(644,root,root,755)
 %doc README NEWS FAQ BUGS
+%if %{without cross}
 %attr(755,root,root) /sbin/postshell
 %attr(755,root,root) /sbin/glibc-postinst
+%endif
 %attr(755,root,root) /sbin/ldconfig
 # ld* and libc.so.6 SONAME symlinks must be in package because of
 # chicken-egg problem (postshell is dynamically linked with libc);
@@ -1280,6 +1367,7 @@ fi
 %endif
 %{?with_localedb:%dir %{_libdir}/locale}
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf
+%dir %{_sysconfdir}/ld.so.conf.d
 %ghost %{_sysconfdir}/ld.so.cache
 
 #%files -n nss_dns
@@ -1466,15 +1554,19 @@ fi
 %{_libdir}/nptl/libpthread_nonshared.a
 %endif
 
+%ifarch %{ix86} %{x8664} ppc ppc64 s390 s390x sparc sparcv9 sparc64
 %{_includedir}/gnu/stubs-*.h
+%endif
 
 %files headers
+%defattr(644,root,root,755)
 %{_includedir}/*.h
 %ifarch alpha
 %{_includedir}/alpha
 %endif
 %{_includedir}/arpa
 %{_includedir}/bits
+%dir %{_includedir}/gnu
 %{_includedir}/gnu/lib*.h
 %{_includedir}/gnu/stubs.h
 %{_includedir}/net
@@ -1505,6 +1597,7 @@ fi
 %attr(755,root,root) %{_bindir}/*trace
 
 %files devel-doc
+%defattr(644,root,root,755)
 %doc documentation/* NOTES PROJECTS
 %{_infodir}/libc.info*
 
This page took 0.055095 seconds and 4 git commands to generate.