]> git.pld-linux.org Git - packages/glibc.git/blobdiff - glibc.spec
- minkernel 2.5.65 in order to turn on all new features on all arch incl. ppc
[packages/glibc.git] / glibc.spec
index 957d2ddce9932c378c5df052093aad0d9cf66d3b..cbd68941c970b306c72f49e87a9c3e105c202e6e 100644 (file)
@@ -7,12 +7,28 @@
 # _without_fp          build without frame pointer (pass --enable-omitfp)
 # _without_memusage    build without memusage
 #
+# _with_kernheaders    use "kernheaders" as user-space kernel headers
+#                      (instead of copying from kernel-headers 2.4.x)
+#                      [broken at the moment]
+#
 # TODO:
 # - localedb-gen man pages(?)
 # - serious problem with upgrade (changing zoneinfo/posix/* dirs into symlinks)
 #   are there any other solutions than revert???
 #
+# WARNING:
+#      posix zoneinfo dir removed, /etc/rc.d/init.d/timezone must be changed
+#      in order to use this version!
+#
+%bcond_with    nptl # enable new posix thread library (req: kernel 2.5/2.6) 
+                    # instead of linuxthreads
+
+%if %{with nptl}
+%define         min_kernel      2.5.65
+%endif
+
 %{!?min_kernel:%define         min_kernel      2.2.0}
+%define                rel 2.19
 Summary:       GNU libc
 Summary(de):   GNU libc
 Summary(fr):   GNU libc
@@ -23,7 +39,7 @@ Summary(tr):  GNU libc
 Summary(uk):   GNU libc ×ÅÒÓ¦§ 2.3
 Name:          glibc
 Version:       2.3.2
-Release:       2.9
+Release:       %{rel}
 Epoch:         6
 License:       LGPL
 Group:         Libraries
@@ -41,6 +57,11 @@ Source6:     http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-ma
 # borrowed from util-linux
 Source7:       sln.8
 Source8:       %{name}-localedb-gen
+# Kernel headers for userspace
+Source9:       %{name}-kernheaders.tar.bz2
+# Source9-md5:  b48fec281f854627d6b8781cd1dd72d2
+Source10:      ftp://people.redhat.com/drepper/nptl/nptl-0.57.tar.bz2
+# Source10-md5:        82472303a736b53812906f97548e54f1
 Patch0:                %{name}-info.patch
 Patch2:                %{name}-pld.patch
 Patch3:                %{name}-crypt-blowfish.patch
@@ -58,14 +79,19 @@ Patch17:    %{name}-morelocales.patch
 Patch18:       %{name}-lthrds_noomit.patch
 Patch19:       %{name}-no_opt_override.patch
 Patch20:       %{name}-gcc33.patch
+#Patch21:      %{name}-sanity.patch
+Patch22:       %{name}-secureexec.patch
+Patch23:       %{name}-kernel_includes.patch
+Patch24:       %{name}-sparc64_pause.patch
+Patch25:       %{name}-linuxthreads.patch
 URL:           http://www.gnu.org/software/libc/
 BuildRequires: binutils >= 2.13.90.0.2
 BuildRequires: gcc >= 3.2
 %{!?_without_memusage:BuildRequires:   gd-devel >= 2.0.1}
-%{!?_without_memusage:BuildRequires:    XFree86-devel}
-%{!?_without_memusage:BuildRequires:    libpng-devel}
 BuildRequires: gettext-devel >= 0.10.36
-%{!?_without_dist_kernel:BuildRequires:        kernel-headers}
+%if 0%{!?_with_kernheaders:1}
+%{!?_without_dist_kernel:BuildRequires:        kernel-headers < 2.5}
+%endif
 BuildRequires: perl-base
 BuildRequires: rpm-build >= 4.0.2-46
 BuildRequires: rpm-perlprov
@@ -83,9 +109,14 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 Conflicts:     kernel < %{min_kernel}
 Conflicts:     ld.so < 1.9.9-10
 Conflicts:     man-pages < 1.43
+Conflicts:     rc-scripts < 0.3.1-13
 Conflicts:     rpm < 4.1
 
 %define                debugcflags     -O1 -g
+%ifarch sparc64
+%define                _without_memusage       1
+%define        specflags_sparc64       -mvis -fcall-used-g6
+%endif
 
 %description
 Contains the standard libraries that are used by multiple programs on
@@ -96,8 +127,7 @@ libraries, the standard C library and the standard math library.
 Without these, a Linux system will not function. It also contains
 national language (locale) support and timezone databases.
 
-Compiled on: Linux kernel %{_kernel_ver_str}. Can be used on: Linux
-kernel >= %{min_kernel}.
+Can be used on: Linux kernel >= %{min_kernel}.
 
 %description -l de
 Enthält die Standard-Libraries, die von verschiedenen Programmen im
@@ -110,8 +140,7 @@ Standard-Math-Library, ohne die das Linux-System nicht funktioniert.
 Ferner enthält es den Support für die verschiedenen Sprachgregionen
 (locale) und die Zeitzonen-Datenbank.
 
-Compiled on: Linux kernel %{_kernel_ver_str}. Can be used on: Linux
-kernel >= %{min_kernel}.
+Can be used on: Linux kernel >= %{min_kernel}.
 
 %description -l fr
 Contient les bibliothèques standards utilisées par de nombreux
@@ -124,8 +153,7 @@ syst
 langues nationales (locales) et les bases de données des zones
 horaires.
 
-Compiled on: Linux kernel %{_kernel_ver_str}. Can be used on: Linux
-kernel >= %{min_kernel}.
+Can be used on: Linux kernel >= %{min_kernel}.
 
 %description -l ja
 glibc
@@ -138,6 +166,8 @@ glibc
 ¥Ñ¥Ã¥±¡¼¥¸¤Ï¤Þ¤¿ÃÏ°è¸À¸ì (locale) ¥µ¥Ý¡¼¥È¤È¥¿¥¤¥à¥¾¡¼¥ó¥Ç¡¼¥¿¥Ù¡¼¥¹
 ¥µ¥Ý¡¼¥È¤ò¤Õ¤¯¤ß¤Þ¤¹¡£
 
+Can be used on: Linux kernel >= %{min_kernel}.
+
 %description -l pl
 W pakiecie znajduj± siê podstawowe biblioteki, u¿ywane przez ró¿ne
 programy w Twoim systemie. U¿ywanie przez programy bibliotek z tego
@@ -149,8 +179,7 @@ matematycznych. Bez glibc system Linux nie jest w stanie funkcjonowa
 Znajduj± siê tutaj równie¿ definicje ró¿nych informacji dla wielu
 jêzyków (locale) oraz definicje stref czasowych.
 
-Pakiet skompilowano na nag³ówkach j±dra Linuksa %{_kernel_ver_str}.
-Mo¿na go u¿ywaæ na j±drach Linuksa >= %{min_kernel}.
+Przeznaczony dla j±dra Linux >= %{min_kernel}.
 
 %description -l ru
 óÏÄÅÒÖÉÔ ÓÔÁÎÄÁÒÔÎÙÅ ÂÉÂÌÉÏÔÅËÉ, ÉÓÐÏÌØÚÕÅÍÙÅ ÍÎÏÇÏÞÉÓÌÅÎÎÙÍÉ
@@ -163,8 +192,7 @@ Mo
 ÐÁËÅÔ ÓÏÄÅÒÖÉÔ ÐÏÄÄÅÒÖËÕ ÎÁÃÉÏÎÁÌØÎÙÈ ÑÚÙËÏ× (locale) É ÂÁÚÙ ÄÁÎÎÙÈ
 ×ÒÅÍÅÎÎÙÈ ÚÏΠ(timezone databases).
 
-Compiled on: Linux kernel %{_kernel_ver_str}. Can be used on: Linux
-kernel >= %{min_kernel}.
+Can be used on: Linux kernel >= %{min_kernel}.
 
 %description -l tr
 Bu paket, birçok programýn kullandýðý standart kitaplýklarý içerir.
@@ -175,8 +203,7 @@ kitapl
 içerir. Bu kitaplýklar olmadan Linux sistemi çalýþmayacaktýr. Yerel
 dil desteði ve zaman dilimi veri tabaný da bu pakette yer alýr.
 
-Compiled on: Linux kernel %{_kernel_ver_str}. Can be used on: Linux
-kernel >= %{min_kernel}.
+Can be used on: Linux kernel >= %{min_kernel}.
 
 %description -l uk
 í¦ÓÔÉÔØ ÓÔÁÎÄÁÒÔΦ Â¦Â̦ÏÔÅËÉ, ËÏÔÒ¦ ×ÉËÏÒÉÓÔÏ×ÕÀÔØÓÑ ÞÉÓÌÅÎÎÉÍÉ
@@ -189,8 +216,7 @@ kernel >= %{min_kernel}.
 ôÁËÏÖ ÐÁËÅԠͦÓÔÉÔؠЦÄÔÒÉÍËÕ ÎÁæÏÎÁÌØÎÉÈ ÍÏ× (locale) ÔÁ ÂÁÚÉ ÄÁÎÎÉÈ
 ÞÁÓÏ×ÉÈ ÚÏΠ(timezone databases).
 
-Compiled on: Linux kernel %{_kernel_ver_str}. Can be used on: Linux
-kernel >= %{min_kernel}.
+Can be used on: Linux kernel >= %{min_kernel}.
 
 %package devel
 Summary:       Additional libraries required to compile
@@ -202,7 +228,7 @@ Summary(ru):        
 Summary(tr):   Geliþtirme için gerekli diðer kitaplýklar
 Summary(uk):   äÏÄÁÔËÏצ Â¦Â̦ÏÔÅËÉ, ÐÏÔÒ¦ÂΦ ÄÌÑ ËÏÍЦÌÑæ§
 Group:         Development/Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description devel
 To develop programs which use the standard C libraries (which nearly
@@ -253,15 +279,14 @@ kitapl
 %package kernel-headers
 Summary:       Kernel header files the glibc has been built with
 Summary(pl):   Pliki nag³ówkowe j±dra, z którymi zosta³a zbudowana ta wersja glibc
+Release:       %{rel}
 Group:         Development/Libraries
 
 %description kernel-headers
-Kernel header files the glibc has been built with (Linux
-%{_kernel_ver_str}).
+Kernel header files for userspace.
 
 %description kernel-headers -l pl
-Pliki nag³ówkowe j±dra, z którymi zosta³a zbudowana ta wersja glibc
-(Linux %{_kernel_ver_str}).
+Pliki nag³ówkowe j±dra dla przestrzeni u¿ytkownika
 
 %package -n nscd
 Summary:       Name Service Caching Daemon
@@ -269,11 +294,12 @@ Summary(ja):      
 Summary(pl):   Demon zapamiêtuj±cy odpowiedzi serwisów nazw
 Summary(ru):   ëÜÛÉÒÕÀÝÉÊ ÄÅÍÏΠÓÅÒ×ÉÓÏ× ÉÍÅÎ
 Summary(uk):   ëÅÛÕÀÞÉÊ ÄÅÍÏΠÓÅצӦנ¦ÍÅÎ
+Release:       %{rel}
 Group:         Networking/Daemons
 PreReq:                rc-scripts >= 0.2.0
 Requires(post,preun):  /sbin/chkconfig
 Requires(post):        fileutils
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description -n nscd
 nscd caches name service lookups; it can dramatically improve
@@ -306,8 +332,9 @@ nscd 
 %package -n localedb-src
 Summary:       locale database source code
 Summary(pl):   Kod ¼ród³owy bazy locale
+Release:       %{rel}
 Group:         Daemons
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description -n localedb-src
 This add-on package contains the data needed to build the locale data
@@ -321,8 +348,9 @@ libc.
 %package localedb-all
 Summary:       locale database for all locales supported by glibc
 Summary(pl):   Baza danych locale dla wszystkich lokalizacji obs³ugiwanych przez glibc
+Release:       %{rel}
 Group:         Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description localedb-all
 This package contains locale database for all locales supported by
@@ -342,8 +370,9 @@ pakiet localedb-src mo
 %package -n iconv
 Summary:       Convert encoding of given files from one encoding to another
 Summary(pl):   Program do konwersji plików tekstowych z jednego kodowania do innego
+Release:       %{rel}
 Group:         Applications/Text
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description -n iconv
 Convert encoding of given files from one encoding to another. You need
@@ -364,8 +393,9 @@ Summary:    Static libraries
 Summary(pl):   Biblioteki statyczne
 Summary(ru):   óÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ glibc
 Summary(uk):   óÔÁÔÉÞΦ Â¦Â̦ÏÔÅËÉ glibc
+Release:       %{rel}
 Group:         Development/Libraries
-Requires:      %{name}-devel = %{version}
+Requires:      %{name}-devel = %{epoch}:%{version}
 
 %description static
 GNU libc static libraries.
@@ -389,9 +419,10 @@ Summary(pl):       glibc ze wsparciem dla profilowania
 Summary(ru):   GNU libc Ó ÐÏÄÄÅÒÖËÏÊ ÐÒÏÆÁÊÌÅÒÁ
 Summary(tr):   Ölçüm desteði olan glibc
 Summary(uk):   GNU libc Ú Ð¦ÄÔÒÉÍËÏÀ ÐÒÏÆÁÊÌÅÒÁ
+Release:       %{rel}
 Group:         Development/Libraries/Libc
 Obsoletes:     libc-profile
-Requires:      %{name}-devel = %{version}
+Requires:      %{name}-devel = %{epoch}:%{version}
 
 %description profile
 When programs are being profiled used gprof, they must use these
@@ -427,9 +458,10 @@ kitapl
 
 %package pic
 Summary:       glibc PIC archive
-Summary(pl):   archiwum PIC glibc
+Summary(pl):   Archiwum PIC glibc
+Release:       %{rel}
 Group:         Development/Libraries/Libc
-Requires:      %{name}-devel = %{version}
+Requires:      %{name}-devel = %{epoch}:%{version}
 
 %description pic
 GNU C Library PIC archive contains an archive library (ar file)
@@ -445,8 +477,9 @@ biblioteki wsp
 %package -n nss_compat
 Summary:       Old style NYS NSS glibc module
 Summary(pl):   Stary modu³ NYS NSS glibc
+Release:       %{rel}
 Group:         Base
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description -n nss_compat
 Old style NYS NSS glibc module.
@@ -457,8 +490,9 @@ Stary modu
 %package -n nss_dns
 Summary:       BIND NSS glibc module
 Summary(pl):   Modu³ BIND NSS glibc
+Release:       %{rel}
 Group:         Base
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description -n nss_dns
 BIND NSS glibc module.
@@ -469,8 +503,9 @@ Modu
 %package -n nss_files
 Summary:       Traditional files databases NSS glibc module
 Summary(pl):   Modu³ tradycyjnych plikowych baz danych NSS glibc
+Release:       %{rel}
 Group:         Base
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description -n nss_files
 Traditional files databases NSS glibc module.
@@ -479,10 +514,11 @@ Traditional files databases NSS glibc module.
 Modu³ tradycyjnych plikowych baz danych NSS glibc.
 
 %package -n nss_hesiod
-Summary:       Hesiod NSS glibc module
+Summary:       hesiod NSS glibc module
 Summary(pl):   Modu³ hesiod NSS glibc
+Release:       %{rel}
 Group:         Base
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description -n nss_hesiod
 glibc NSS (Name Service Switch) module for databases access.
@@ -493,8 +529,9 @@ Modu
 %package -n nss_nis
 Summary:       NIS(YP) NSS glibc module
 Summary(pl):   Modu³ NIS(YP) NSS glibc
+Release:       %{rel}
 Group:         Base
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description -n nss_nis
 glibc NSS (Name Service Switch) module for NIS(YP) databases access.
@@ -505,8 +542,9 @@ Modu
 %package -n nss_nisplus
 Summary:       NIS+ NSS module
 Summary(pl):   Modu³ NIS+ NSS
+Release:       %{rel}
 Group:         Base
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description -n nss_nisplus
 glibc NSS (Name Service Switch) module for NIS+ databases accesa.
@@ -517,8 +555,9 @@ Modu
 %package memusage
 Summary:       A toy
 Summary(pl):   Zabawka
+Release:       %{rel}
 Group:         Applications
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 Requires:      gd
 
 %description memusage
@@ -530,8 +569,9 @@ Zabawka.
 %package zoneinfo_right
 Summary:       Non-POSIX (real) time zones
 Summary(pl):   Nie-POSIX-owe (prawdziwe) strefy czasowe
+Release:       %{rel}
 Group:         Libraries
-Requires:      %{name} = %{version}
+Requires:      %{name} = %{epoch}:%{version}
 
 %description zoneinfo_right
 You don't want this. Details at:
@@ -542,13 +582,16 @@ Nie potrzebujesz tego. Szczeg
 http://sources.redhat.com/ml/libc-alpha/2000-12/msg00068.html
 
 %prep
-%setup -q -a 1
+%setup -q -a 9
+%if %{with nptl}
+%{__tar} xfj %{SOURCE10}
+%else
+%{__tar} xfj %{SOURCE1}
+%endif
 %patch0 -p1
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
-%patch5 -p1
-%patch6 -p1
 %patch9 -p1
 %patch10 -p1
 #%%patch11 -p1
@@ -557,27 +600,66 @@ http://sources.redhat.com/ml/libc-alpha/2000-12/msg00068.html
 %patch14 -p1
 %patch16 -p1
 %patch17 -p1
-%patch18 -p1
 # don't know, if it is good idea, for brave ones
 #%patch19 -p1
 %patch20 -p1
+#%patch21 -p1
+%patch22 -p1
+%{!?_with_kernheaders:%patch23}
+%patch24 -p1
+# updated - lt
+
+%if %{without nptl}
+%patch5 -p1
+%patch6 -p1
+%patch25 -p1
+%patch18 -p1
+%endif
 
 chmod +x scripts/cpp
 
 # standardize name
 mv -f localedata/locales/{lug_UG,lg_UG}
 
+#make proper symlink for asm in headers
+#cd usr/include
+#%ifarch %{ix86}
+#ln -s asm-i386 asm
+#%endif
+#cd ../..
+
 %build
+# Prepare kernel headers
+TARGET_CPU=$(echo "%{_target_cpu}" | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
+                                  -e s/athlon/i386/ -e s/arm.*/arm/ \
+                                  -e s/sa110/arm/ -e s/s390x/s390/)
+_headers_dir=`pwd`/usr/include; export _headers_dir;
+(cd $_headers_dir && ln -s asm-${TARGET_CPU} asm)
+
+# Build glibc
 mkdir builddir
 cd builddir
 # avoid stripping ld.so by -s in rpmldflags
 LDFLAGS=" " ; export LDFLAGS
+#CFLAGS="-I $_headers_dir %{rpmcflags}"; export CFLAGS
 ../%configure \
-       --enable-add-ons=linuxthreads \
        --enable-kernel="%{?kernel:%{kernel}}%{!?kernel:%{min_kernel}}" \
        --enable-profile \
        --%{?_without_fp:en}%{!?_without_fp:dis}able-omitfp \
+%if %{with nptl}
+        CPPFLAGS="-I%{_kernelsrcdir}/include" \
+       --with-headers=%{_kernelsrcdir}/include
+       --enable-add-ons=nptl \
+%else
+       --enable-add-ons=linuxthreads \
+%if 0%{!?_with_kernheaders:1}
+       CPPFLAGS="-I%{_kernelsrcdir}/include" \
        --with-headers=%{_kernelsrcdir}/include
+%else
+       CPPFLAGS="-I$_headers_dir" \
+       --with-headers=$_headers_dir
+%endif
+%endif
 # problem compiling with --enable-bounded (must be reported to libc-alpha)
 
 %{__make} %{?parallelmkflags}
@@ -586,6 +668,8 @@ LDFLAGS=" " ; export LDFLAGS
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{/etc/{logrotate.d,rc.d/init.d,sysconfig},%{_mandir}/man{3,8},/var/log}
 
+_headers_dir=`pwd`/usr/include; export _headers_dir;
+
 cd builddir
 
 env LANGUAGE=C LC_ALL=C \
@@ -610,19 +694,19 @@ install elf/sofini.os                             $RPM_BUILD_ROOT%{_libdir}/sofini.o
 
 install elf/postshell                          $RPM_BUILD_ROOT/sbin
 
-%{!?_without_memusage:mv -f $RPM_BUILD_ROOT/lib/libmemusage.so $RPM_BUILD_ROOT%{_libdir}}
-mv -f $RPM_BUILD_ROOT/lib/libpcprofile.so      $RPM_BUILD_ROOT%{_libdir}
+%{!?_without_memusage: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
 
 rm -rf $RPM_BUILD_ROOT%{_datadir}/zoneinfo/{localtime,posixtime,posixrules,posix/*}
 
-cd $RPM_BUILD_ROOT%{_datadir}/zoneinfo
-for i in [A-Z]*; do
-       ln -s ../$i posix
-done
-cd -
+#cd $RPM_BUILD_ROOT%{_datadir}/zoneinfo
+#for i in [A-Z]*; do
+#      ln -s ../$i posix
+#done
+#cd -
 
 ln -sf %{_sysconfdir}/localtime        $RPM_BUILD_ROOT%{_datadir}/zoneinfo/localtime
 ln -sf localtime               $RPM_BUILD_ROOT%{_datadir}/zoneinfo/posixtime
@@ -661,20 +745,20 @@ cp -f ../crypt/README.ufc-crypt ../documentation/
 
 cp -f ../ChangeLog* ../documentation
 
-rm -f $RPM_BUILD_ROOT%{_libdir}/libnss_*.so
+rm -f $RPM_BUILD_ROOT%{_libdir}*/libnss_*.so
 
 # 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}
+%{!?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
 echo '%defattr(644,root,root,755)' > ../glibc.lang
-for i in $RPM_BUILD_ROOT%{_datadir}/locale/* $RPM_BUILD_ROOT%{_libdir}/locale/* ; do
+for i in $RPM_BUILD_ROOT%{_datadir}/locale/* $RPM_BUILD_ROOT%{_libdir}*/locale/* ; do
        if [ -d $i ]; then
                lang=`echo $i | sed -e 's/.*locale\///' -e 's/\/.*//'`
                twochar=1
                # list of long %%lang values we do support
-               for j in de_AT de_BE de_CH de_LU es_AR ja_JP.SJIS ko_KR.utf8 pt_BR \
+               for j in de_AT de_BE de_CH de_LU es_AR es_MX ja_JP.SJIS ko_KR.utf8 pt_BR \
                         zh_CN zh_CN.gbk zh_HK zh_TW ; do
                        if [ $j = "$lang" ]; then
                                twochar=
@@ -693,11 +777,12 @@ for i in $RPM_BUILD_ROOT%{_datadir}/locale/* $RPM_BUILD_ROOT%{_libdir}/locale/*
 done
 # XXX: to be added when become supported by glibc
 # am,bn,ml (present in sources, but incomplete and disabled) (used by GNOME)
-# kn,mn,ia (used by GNOME)
+# ia,kn,li,mn,sr@Latn (used by GNOME)
+#      note: GNOME2 uses sr as cyrillic!
 # nso,ss,ven,xh,zu (used by KDE)
-for i in af ar az be bg br bs cy de_AT el en eo es_AR et eu fa fi ga gr he hi \
-        hr hu id is ja_JP.SJIS ka lg lt lv mk ms mt nn pt ro ru se sl sq sr \
-        sr@cyrillic ta tg th uk uz vi wa yi zh_CN ; do
+for i in af ar az be bg br bs cy de_AT el en en_AU eo es_AR es_MX et eu fa fi \
+        ga gr he hi hr hu id is ja_JP.SJIS ka lg lt lv mk ms mt nn pt ro ru \
+        se sl sq sr sr@cyrillic ta tg th uk uz vi wa yi zh_CN ; 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/_.*//'`
@@ -719,11 +804,18 @@ rm -f $RPM_BUILD_ROOT%{_mandir}/README.*
 rm -f $RPM_BUILD_ROOT%{_mandir}/diff.*
 rm -f $RPM_BUILD_ROOT%{_infodir}/dir
 # we don't support kernel without ptys support
-rm -f $RPM_BUILD_ROOT%{_libdir}/pt_chown
+rm -f $RPM_BUILD_ROOT%{_libdir}*/pt_chown
 
 # copy actual kernel headers for glibc-kernel-headers
+%if 0%{!?_with_kernheaders:1}
 %{__mkdir} -p $RPM_BUILD_ROOT%{_includedir}
 %{__cp} -Hr %{_kernelsrcdir}/include/{asm,linux} $RPM_BUILD_ROOT%{_includedir}
+if [ -d %{_kernelsrcdir}/include/asm-generic ] ; then
+       %{__cp} -Hr %{_kernelsrcdir}/include/asm-generic $RPM_BUILD_ROOT%{_includedir}
+fi
+%else
+%{__cp} -Hr $_headers_dir/{asm,linux} $RPM_BUILD_ROOT%{_includedir}
+%endif
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -761,7 +853,10 @@ if [ -h %{_includedir}/linux ]; then rm -f %{_includedir}/linux; fi
 
 %post -n nscd
 /sbin/chkconfig --add nscd
-touch /var/log/nscd && (chmod 000 /var/log/nscd; chown root.root /var/log/nscd; chmod 640 /var/log/nscd)
+touch /var/log/nscd
+chmod 000 /var/log/nscd
+chown root:root /var/log/nscd
+chmod 640 /var/log/nscd
 if [ -f /var/lock/subsys/nscd ]; then
        /etc/rc.d/init.d/nscd restart 1>&2
 else
@@ -802,18 +897,18 @@ fi
 %attr(755,root,root) %{_sbindir}/zdump
 %attr(755,root,root) %{_sbindir}/zic
 
-%attr(755,root,root) /lib/ld-*
-%attr(755,root,root) /lib/libanl*
-%attr(755,root,root) /lib/libdl*
-%attr(755,root,root) /lib/libnsl*
-%attr(755,root,root) /lib/lib[BScmprtu]*
+%attr(755,root,root) /lib*/ld-*
+%attr(755,root,root) /lib*/libanl*
+%attr(755,root,root) /lib*/libdl*
+%attr(755,root,root) /lib*/libnsl*
+%attr(755,root,root) /lib*/lib[BScmprtu]*
 
 %dir %{_datadir}/locale
 %{_datadir}/locale/locale.alias
 %{_datadir}/zoneinfo
 %exclude %{_datadir}/zoneinfo/right
 
-%dir %{_libdir}/locale
+%dir %{_libdir}*/locale
 
 %{_mandir}/man1/[!lsg]*
 %{_mandir}/man1/getent.1*
@@ -850,11 +945,11 @@ fi
 
 #%files -n nss_dns
 %defattr(644,root,root,755)
-%attr(755,root,root) /lib/libnss_dns*.so*
+%attr(755,root,root) /lib*/libnss_dns*.so*
 
 #%files -n nss_files
 %defattr(644,root,root,755)
-%attr(755,root,root) /lib/libnss_files*.so*
+%attr(755,root,root) /lib*/libnss_files*.so*
 
 %files zoneinfo_right
 %defattr(644,root,root,755)
@@ -862,26 +957,26 @@ fi
 
 %files -n nss_compat
 %defattr(644,root,root,755)
-%attr(755,root,root) /lib/libnss_compat*.so*
+%attr(755,root,root) /lib*/libnss_compat*.so*
 
 %files -n nss_hesiod
 %defattr(644,root,root,755)
-%attr(755,root,root) /lib/libnss_hesiod*.so*
+%attr(755,root,root) /lib*/libnss_hesiod*.so*
 
 %files -n nss_nis
 %defattr(644,root,root,755)
-%attr(755,root,root) /lib/libnss_nis.so.*
-%attr(755,root,root) /lib/libnss_nis-*.so
+%attr(755,root,root) /lib*/libnss_nis.so.*
+%attr(755,root,root) /lib*/libnss_nis-*.so
 
 %files -n nss_nisplus
 %defattr(644,root,root,755)
-%attr(755,root,root) /lib/libnss_nisplus*.so*
+%attr(755,root,root) /lib*/libnss_nisplus*.so*
 
 %if %{?_without_memusage:0}%{!?_without_memusage:1}
 %files memusage
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/memusage*
-%attr(755,root,root) %{_libdir}/libmemusage*
+%attr(755,root,root) %{_libdir}*/libmemusage*
 %endif
 
 %files devel
@@ -915,16 +1010,16 @@ fi
 
 %{_infodir}/libc.info*
 
-%attr(755,root,root) %{_libdir}/lib[!m]*.so
-%attr(755,root,root) %{_libdir}/libm.so
-%attr(755,root,root) %{_libdir}/*crt*.o
-%{_libdir}/libbsd-compat.a
-%{_libdir}/libbsd.a
-%{_libdir}/libc_nonshared.a
-%{_libdir}/libg.a
-%{_libdir}/libieee.a
-%{_libdir}/libpthread_nonshared.a
-%{_libdir}/librpcsvc.a
+%attr(755,root,root) %{_libdir}*/lib[!m]*.so
+%attr(755,root,root) %{_libdir}*/libm.so
+%attr(755,root,root) %{_libdir}*/*crt*.o
+%{_libdir}*/libbsd-compat.a
+%{_libdir}*/libbsd.a
+%{_libdir}*/libc_nonshared.a
+%{_libdir}*/libg.a
+%{_libdir}*/libieee.a
+%{_libdir}*/libpthread_nonshared.a
+%{_libdir}*/librpcsvc.a
 
 %{_mandir}/man1/getconf*
 %{_mandir}/man1/sprof*
@@ -945,7 +1040,7 @@ fi
 
 %files kernel-headers
 %defattr(644,root,root,755)
-%{_includedir}/asm
+%{_includedir}/asm*
 %{_includedir}/linux
 
 %files -n nscd
@@ -975,37 +1070,37 @@ fi
 
 %files localedb-all
 %defattr(644,root,root,755)
-%{_libdir}/locale/locale-archive
+%{_libdir}*/locale/locale-archive
 
 %files -n iconv
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_sbindir}/iconvconfig
-%dir %{_libdir}/gconv
-%{_libdir}/gconv/gconv-modules
-%attr(755,root,root) %{_libdir}/gconv/*.so
+%dir %{_libdir}*/gconv
+%{_libdir}*/gconv/gconv-modules
+%attr(755,root,root) %{_libdir}*/gconv/*.so
 
 %files static
 %defattr(644,root,root,755)
-%{_libdir}/libanl.a
-%{_libdir}/libBrokenLocale.a
-%{_libdir}/libc.a
-%{_libdir}/libcrypt.a
-%{_libdir}/libdl.a
-%{_libdir}/libm.a
-%{_libdir}/libmcheck.a
-%{_libdir}/libnsl.a
-%{_libdir}/libpthread.a
-%{_libdir}/libresolv.a
-%{_libdir}/librt.a
-%{_libdir}/libutil.a
+%{_libdir}*/libanl.a
+%{_libdir}*/libBrokenLocale.a
+%{_libdir}*/libc.a
+%{_libdir}*/libcrypt.a
+%{_libdir}*/libdl.a
+%{_libdir}*/libm.a
+%{_libdir}*/libmcheck.a
+%{_libdir}*/libnsl.a
+%{_libdir}*/libpthread.a
+%{_libdir}*/libresolv.a
+%{_libdir}*/librt.a
+%{_libdir}*/libutil.a
 
 %files profile
 %defattr(644,root,root,755)
-%{_libdir}/lib*_p.a
+%{_libdir}*/lib*_p.a
 
 %files pic
 %defattr(644,root,root,755)
-%{_libdir}/lib*_pic.a
-%{_libdir}/lib*.map
-%{_libdir}/soinit.o
-%{_libdir}/sofini.o
+%{_libdir}*/lib*_pic.a
+%{_libdir}*/lib*.map
+%{_libdir}*/soinit.o
+%{_libdir}*/sofini.o
This page took 0.062692 seconds and 4 git commands to generate.