]> git.pld-linux.org Git - packages/glibc.git/blobdiff - glibc.spec
- rel 3; fixes from git including CVE-2104-7817 fix
[packages/glibc.git] / glibc.spec
index b5b60105a472b0d0d31a9a82298a23074358c277..2b6a8562f176c520e418c1a2e704afbfe4bef41c 100644 (file)
@@ -8,21 +8,21 @@
 # - 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
@@ -35,22 +35,23 @@ Summary(tr.UTF-8):  GNU libc
 Summary(uk.UTF-8):     GNU libc версії
 Name:          glibc
 Version:       %{core_version}
-Release:       0.1
+Release:       3
 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
@@ -60,7 +61,7 @@ Patch5:               %{name}-sparc-softfp-gcc.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
@@ -68,7 +69,9 @@ Patch12:      %{name}-format.patch
 Patch14:       %{name}-sparc-errno_fix.patch
 Patch15:       %{name}-new-charsets.patch
 Patch16:       %{name}-tzfile-noassert.patch
+# additions pending for upstream merge or taken from other distros
 Patch17:       %{name}-morelocales.patch
+# fixes mostly pending for upstream merge
 Patch18:       %{name}-locale_fixes.patch
 Patch19:       %{name}-ZA_collate.patch
 Patch20:       %{name}-thread_start.patch
@@ -933,11 +936,12 @@ Narzędzie do profilowania zużycia pamięci.
 %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
@@ -945,7 +949,8 @@ exit 1
 %patch6 -p1
 %patch7 -p1
 %patch8 -p1
-%patch9 -p1
+%patch9 -p0
+
 %patch10 -p1
 %patch11 -p1
 %patch12 -p1
@@ -953,9 +958,8 @@ exit 1
 %patch14 -p0
 %patch15 -p1
 %patch16 -p1
-# DROP THESE TWO PATCHES OR MERGE UPSTREAM
-#%patch17 -p1
-#%patch18 -p1
+%patch17 -p1
+%patch18 -p1
 %patch19 -p1
 %patch20 -p1
 %{?with_cross:%patch21 -p1}
@@ -978,10 +982,6 @@ find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
 
 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 || :
@@ -997,7 +997,7 @@ cd builddir
 CC="%{__cc} -m64 -mcpu=ultrasparc -mvis -fcall-used-g6"
 %endif
 
-AddOns=nptl,libidn
+AddOns=libidn
 %ifarch %{ports_arch}
 AddOns=$AddOns,ports
 %endif
@@ -1028,26 +1028,14 @@ AWK="gawk" \
 
 %{__make} \
        AWK="gawk" \
+       localedir=%{_prefix}/lib/locale \
        sLIBdir=%{_libdir}
 
 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}
@@ -1065,13 +1053,17 @@ cd builddir
 env LANGUAGE=C LC_ALL=C \
 %{__make} install \
        install_root=$RPM_BUILD_ROOT \
+       localedir=%{_prefix}/lib/locale \
        infodir=%{_infodir} \
        mandir=%{_mandir}
 
 %if %{with localedb}
 env LANGUAGE=C LC_ALL=C \
 %{__make} localedata/install-locales \
+       localedir=%{_prefix}/lib/locale \
        install_root=$RPM_BUILD_ROOT
+%else
+install -d $RPM_BUILD_ROOT%{_prefix}/lib/locale
 %endif
 
 PICFILES="libc_pic.a libc.map
@@ -1140,7 +1132,7 @@ install %{SOURCE9} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/nscd.conf
 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
@@ -1179,6 +1171,7 @@ done
 #   kmr (vlc)
 #   man (ccsm; incorrectly named md)
 #   mus (bluez-gnome)
+#   nah (mate-system-monitor)
 #   pms (deluge)
 #   sco (gnomad2, picard, stellarium)
 #   son (gtkspell3)
@@ -1239,7 +1232,7 @@ done
 #   sv tr zh_CN zh_TW
 #
 for i in aa aa@saaho af am an ang ar ar_TN as ast az az_IR be@latin be@tarask bem \
-       bg bn bn_IN bo br bs byn ca@valencia ckb crh csb cv cy de_AT de_CH dv dz en \
+       bg bn bn_IN bo br bs byn ca@valencia ckb cmn crh csb cv cy de_AT de_CH dv dz en \
        en@boldquot en@quot en@shaw en_AU en_CA en_NZ en_US eo es_AR es_CL es_CO es_CR \
        es_DO es_EC es_GT es_HN es_MX es_NI es_PA es_PE es_PR es_SV es_UY \
        es_VE et eu fa ff fil fo fr_BE fr_CA fr_CH fur fy ga gd gez gu gv ha he \
@@ -1267,7 +1260,7 @@ for i in af be bg ca cs da de el en eo es et eu fi fr ga gl hr hu ia id it ja kk
 done
 
 # localedb-gen infrastructure
-sed -e 's,@localedir@,%{_libdir}/locale,' %{SOURCE6} > $RPM_BUILD_ROOT%{_bindir}/localedb-gen
+sed -e 's,@localedir@,%{_prefix}/lib/locale,' %{SOURCE6} > $RPM_BUILD_ROOT%{_bindir}/localedb-gen
 chmod +x $RPM_BUILD_ROOT%{_bindir}/localedb-gen
 install localedata/SUPPORTED $RPM_BUILD_ROOT%{_datadir}/i18n
 
@@ -1311,6 +1304,14 @@ if [ "$1" != 1 ]; then
        %service -q crond restart
 fi
 
+%ifarch %{x8664}
+# when upgrading from glibc < 6:2.19-3 copy locale-archive
+# from /usr/lib64/locale to /usr/lib/locale
+# but only if the latter doesn't already exist
+%triggerpostun -p /sbin/postshell -- %{name} < 6:2.19-3
+-/bin/cp -an %{_libdir}/locale/locale-archive %{_prefix}/lib/locale/locale-archive
+%endif
+
 %post  libcrypt -p /sbin/ldconfig
 %postun        libcrypt -p /sbin/ldconfig
 
@@ -1434,7 +1435,7 @@ fi
 %else
 %attr(755,root,root) /%{_lib}/libutil.so.1
 %endif
-%{?with_localedb:%dir %{_libdir}/locale}
+%dir %{_prefix}/lib/locale
 
 #%files -n nss_db
 %defattr(644,root,root,755)
@@ -1787,7 +1788,7 @@ fi
 %if %{with localedb}
 %files localedb-all
 %defattr(644,root,root,755)
-%{_libdir}/locale/locale-archive
+%{_prefix}/lib/locale/locale-archive
 %endif
 
 %files -n iconv
This page took 0.11245 seconds and 4 git commands to generate.