# - math/{test-fenv,test-tgmath,test-float,test-ifloat}, debug/backtrace-tst(SEGV) fail on alpha
#
# Conditional build:
-# min_kernel (default is 2.6.16)
+# min_kernel (default is 2.6.32)
%bcond_without memusage # don't build memusage utility
%bcond_without selinux # without SELinux support (in nscd)
%bcond_with tests # perform "make test"
%bcond_without localedb # don't build localedb-all (is time consuming)
%bcond_with cross # build using crossgcc (without libgcc_eh)
#
-%{!?min_kernel:%global min_kernel 2.6.16}
+%{!?min_kernel:%global min_kernel 2.6.32}
%ifarch sparc64
%undefine with_memusage
%endif
-%define core_version 2.19
-%define llh_version 7:2.6.20.4-1
+%define core_version 2.20
+%define llh_version 7:2.6.32.1-1
Summary: GNU libc
Summary(de.UTF-8): GNU libc
Summary(uk.UTF-8): GNU libc версії
Name: glibc
Version: %{core_version}
-Release: 3
+Release: 4
Epoch: 6
License: LGPL v2.1+
Group: Libraries
Source0: http://ftp.gnu.org/gnu/glibc/%{name}-%{version}.tar.xz
-# Source0-md5: e26b8cc666b162f999404b03970f14e4
+# Source0-md5: 948a6e06419a01bd51e97206861595b0
Source2: nscd.init
Source3: nscd.sysconfig
Source4: nscd.logrotate
#Source5: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-man-pages.tar.bz2
-Source5: http://qboosh.pl/man/%{name}-man-pages.tar.bz2
-# Source5-md5: f464eadf3cf06761f65639e44a179e6b
+Source5: %{name}-man-pages.tar.bz2
+# Source5-md5: 0d93d9628f35f1eae015affb11390df3
Source6: %{name}-localedb-gen
Source7: %{name}-LD-path.c
Source8: nscd.upstart
Source9: nscd.tmpfiles
+Patch0: %{name}-git.patch
# against GNU TP (libc domain)
#Patch1: %{name}-pl.po-update.patch
Patch2: %{name}-pld.patch
Patch6: %{name}-paths.patch
Patch7: 1070_all_glibc-fadvise64_64.patch
Patch8: %{name}-missing-nls.patch
-Patch9: %{name}-java-libc-wait.patch
+Patch9: %{name}-nss_include_dirs.patch
Patch10: %{name}-info.patch
Patch11: %{name}-autoconf.patch
Patch12: %{name}-format.patch
# Patch27-md5: 34ebe52a2afb923e33af0fb7c541f540
Patch28: %{name}-locale-C-pld.patch
Patch29: %{name}-arm-alignment-fix.patch
-
+Patch30: glibc-rh1124987.patch
Patch31: %{name}-origin.patch
Patch32: %{name}-Os-fail-workaround.patch
Requires: rc-scripts >= 0.4.3.0
Provides: group(nscd)
Provides: user(nscd)
+Obsoletes: gnscd
+Obsoletes: unscd
%description -n nscd
nscd caches name service lookups; it can dramatically improve
%prep
%setup -q
-%if "%{min_kernel}" < "2.6.16"
-echo "Minimal supported kernel is 2.6.16" >&2
+%if "%{min_kernel}" < "2.6.32"
+echo "Minimal supported kernel is 2.6.32" >&2
exit 1
%endif
+%patch0 -p1
%patch2 -p1
%patch3 -p0
%patch4 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
-%patch9 -p1
+%patch9 -p0
+
%patch10 -p1
%patch11 -p1
%patch12 -p1
%patch27 -p1
%patch28 -p1
%patch29 -p1
-
+%patch30 -p1
%patch31 -p1
%patch32 -p1
chmod +x scripts/cpp
-# i786 (aka pentium4) hack
-ln -s i686 nptl/sysdeps/i386/i786
-ln -s i686 nptl/sysdeps/unix/sysv/linux/i386/i786
-
%build
# glibc has its own way to remove PLT relocations. / H. J. Lu.
unset LD_SYMBOLIC_FUNCTIONS || :
CC="%{__cc} -m64 -mcpu=ultrasparc -mvis -fcall-used-g6"
%endif
-AddOns=nptl,libidn
+AddOns=libidn
%ifarch %{ports_arch}
AddOns=$AddOns,ports
%endif
cd ..
%if %{with tests}
-cd builddir
env LANGUAGE=C LC_ALL=C \
-%{__make} -j1 tests 2>&1 | awk '
-BEGIN { file = "" }
-{
- if (($0 ~ /\*\*\* \[.*\.out\] Error/) && ($0 !~ /annexc/) && (file == "")) {
- file=$0;
- gsub(/.*\[/, NIL, file);
- gsub(/\].*/, NIL, file);
- }
- print $0;
-}
-END { if (file != "") { print "ERROR OUTPUT FROM " file; system("cat " file); exit(1); } }'
-cd ..
-done
+%{__make} -j1 -C builddir tests
%endif
%if %{without cross}
rm -rf documentation
install -d documentation
-for f in ANNOUNCE ChangeLog DESIGN-{barrier,condvar,rwlock,sem}.txt TODO{,-kernel,-testing}; do
+for f in ChangeLog.old DESIGN-{barrier,condvar,rwlock,sem}.txt TODO{,-kernel,-testing}; do
cp -af nptl/$f documentation/$f.nptl
done
cp -af crypt/README.ufc-crypt ChangeLog* documentation