]> 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 17560bb578266f92b332a9510758721ca4171197..cbd68941c970b306c72f49e87a9c3e105c202e6e 100644 (file)
 #      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.17
+%define                rel 2.19
 Summary:       GNU libc
 Summary(de):   GNU libc
 Summary(fr):   GNU libc
@@ -53,6 +60,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
@@ -73,6 +82,8 @@ 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
@@ -102,6 +113,10 @@ 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
@@ -443,7 +458,7 @@ 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 = %{epoch}:%{version}
@@ -499,7 +514,7 @@ 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
@@ -567,13 +582,16 @@ Nie potrzebujesz tego. Szczeg
 http://sources.redhat.com/ml/libc-alpha/2000-12/msg00068.html
 
 %prep
-%setup -q -a 1 -a 9
+%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
@@ -582,13 +600,21 @@ 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
 
@@ -617,10 +643,15 @@ cd builddir
 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
@@ -628,7 +659,7 @@ LDFLAGS=" " ; export LDFLAGS
        CPPFLAGS="-I$_headers_dir" \
        --with-headers=$_headers_dir
 %endif
-
+%endif
 # problem compiling with --enable-bounded (must be reported to libc-alpha)
 
 %{__make} %{?parallelmkflags}
@@ -663,8 +694,8 @@ 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
@@ -714,15 +745,15 @@ 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
@@ -773,7 +804,7 @@ 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}
@@ -822,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
@@ -863,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*
@@ -911,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)
@@ -923,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
@@ -976,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*
@@ -1036,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.04666 seconds and 4 git commands to generate.