X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=glibc.spec;h=e511003afd148b5afe45dd0b695962bb38295ea1;hb=c5e0864f040ba8f858aa86f2b94f4686bcc245c2;hp=c61fd98d4992a68a460537b2f949c6edb6388110;hpb=2914288cdf0aa2fbeebcc2650f3dd4434f53f63f;p=packages%2Fglibc.git diff --git a/glibc.spec b/glibc.spec index c61fd98..e511003 100644 --- a/glibc.spec +++ b/glibc.spec @@ -8,7 +8,7 @@ # - math/{test-fenv,test-tgmath,test-float,test-ifloat}, debug/backtrace-tst(SEGV) fail on alpha # # Conditional build: -# min_kernel (default is 2.6.32) +# min_kernel (default is 3.4.0 except for x86/x86_64 where 3.2.0 suffices) %bcond_without memusage # don't build memusage utility %bcond_without selinux # without SELinux support (in nscd) %bcond_with tests # perform "make test" @@ -17,17 +17,17 @@ %bcond_without nss_crypt # disable crypt features based on Mozilla NSS library %bcond_with bash_nls # use bash NLS in shell scripts (ldd, sotruss); restores /bin/bash dep # -%ifarch x32 -%{!?min_kernel:%global min_kernel 3.4.0} +%ifarch %{ix86} %{x8664} +%{!?min_kernel:%global min_kernel 3.2.0} %else -%{!?min_kernel:%global min_kernel 2.6.32} +%{!?min_kernel:%global min_kernel 3.4.0} %endif %ifarch sparc64 %undefine with_memusage %endif -%define core_version 2.22 +%define core_version 2.26 %define llh_version 7:2.6.32.1-1 Summary: GNU libc @@ -41,23 +41,24 @@ Summary(tr.UTF-8): GNU libc Summary(uk.UTF-8): GNU libc версії Name: glibc Version: %{core_version} -Release: 4 +Release: 11 Epoch: 6 License: LGPL v2.1+ Group: Libraries Source0: http://ftp.gnu.org/gnu/glibc/%{name}-%{version}.tar.xz -# Source0-md5: e51e02bf552a0a1fbbdc948fb2f5e83c +# Source0-md5: 102f637c3812f81111f48f2427611be1 Source2: nscd.init Source3: nscd.sysconfig Source4: nscd.logrotate # from man-pages.spec --with tars Source5: %{name}-man-pages.tar.xz -# Source5-md5: 3a4eabb7d28db7d35d8204fdb471a863 +# Source5-md5: 78a8f7f8dfc63123f47a614e99136e61 Source6: %{name}-localedb-gen Source7: %{name}-LD-path.c Source9: nscd.tmpfiles -# git diff glibc-2.22..release/2.22/master +# use branch.sh to update glibc-git.patch Patch0: glibc-git.patch +# Patch0-md5: 870116e19a36b22ce35806d01fd75f26 # against GNU TP (libc domain) #Patch1: %{name}-pl.po-update.patch Patch2: %{name}-pld.patch @@ -65,7 +66,7 @@ Patch3: %{name}-crypt-blowfish.patch Patch4: %{name}-no-bash-nls.patch Patch5: %{name}-sparc-softfp-gcc.patch Patch6: %{name}-paths.patch -Patch7: 1070_all_glibc-fadvise64_64.patch + Patch8: %{name}-missing-nls.patch Patch9: %{name}-nss_include_dirs.patch Patch10: %{name}-info.patch @@ -79,20 +80,17 @@ 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 -Patch22: %{name}-with-stroke.patch + Patch23: %{name}-pt_pax.patch -Patch25: %{name}-cv_gnu89_inline.patch -Patch27: %{name}-locale-C.patch.xz -# Patch27-md5: 34ebe52a2afb923e33af0fb7c541f540 -Patch28: %{name}-locale-C-pld.patch + +# http://pkgs.fedoraproject.org/cgit/rpms/glibc.git/plain/glibc-c-utf8-locale.patch +Patch27: %{name}-c-utf8-locale.patch + Patch29: %{name}-arm-alignment-fix.patch Patch30: glibc-rh1124987.patch - -Patch38: 1055_all_glibc-resolv-dynamic.patch URL: http://www.gnu.org/software/libc/ %{?with_selinux:BuildRequires: audit-libs-devel} -BuildRequires: autoconf +BuildRequires: autoconf >= 2.69 BuildRequires: automake %ifarch alpha BuildRequires: binutils >= 2:2.17.50.0.7 @@ -101,7 +99,7 @@ BuildRequires: binutils >= 2:2.15.90.0.3 %endif %{!?with_cross:BuildRequires: dietlibc-static} BuildRequires: gawk -BuildRequires: gcc >= 6:4.6 +BuildRequires: gcc >= 6:4.7 %{?with_memusage:BuildRequires: gd-devel >= 2.0.1} BuildRequires: gettext-tools >= 0.10.36 %{?with_selinux:BuildRequires: libselinux-devel >= 1.18} @@ -137,7 +135,7 @@ Conflicts: kernel24 Conflicts: kernel24-smp Conflicts: ld.so < 1.9.9-10 Conflicts: man-pages < 4.00 -Conflicts: poldek < 0.18.8-5 +Conflicts: poldek < 0.30.1-9 Conflicts: rc-scripts < 0.3.1-13 Conflicts: rpm < 4.1 Conflicts: xorg-driver-video-nvidia-libs < 1:295.33 @@ -384,6 +382,18 @@ El antiguo módulo NYS NSS de glibc %description -n nss_compat -l pl.UTF-8 Stary moduł NYS NSS glibc. +%package -n nss_db +Summary: NSS glibc module that uses hashed key-value database +Summary(pl.UTF-8): Moduł NSS glibc wykorzystujący haszowaną bazę danych klucz-wartość +Group: Base +Requires: %{name} = %{epoch}:%{version}-%{release} + +%description -n nss_db +NSS glibc module that uses hashed key-value database. + +%description -n nss_db -l pl.UTF-8 +Moduł NSS glibc wykorzystujący haszowaną bazę danych klucz-wartość. + %package -n nss_dns Summary: BIND NSS glibc module Summary(es.UTF-8): Módulo BIND NSS de glibc @@ -498,6 +508,12 @@ Provides: %{name}-devel(%{_target_cpu}) = %{epoch}:%{version}-%{release} Provides: %{name}-devel(ix86) = %{epoch}:%{version}-%{release} %endif Obsoletes: libiconv-devel +%ifarch %{x8664} +# see http://lists.pld-linux.org/mailman/pipermail/pld-devel-en/2016-May/024902.html +%if "%(rpm -q --qf '%{E}:%{V}' binutils)" >= "4:2.26" +Conflicts: binutils < 4:2.26 +%endif +%endif %description devel To develop programs which use the standard C libraries (which nearly @@ -664,35 +680,10 @@ korzystające ze standardowych bibliotek C. Summary: Documentation needed for development using standard C libraries Summary(pl.UTF-8): Dokumentacja do tworzenia programów przy użyciu standardowych bibliotek C Group: Documentation -Provides: %{name}-devel-doc(%{_target_cpu}) = %{epoch}:%{version}-%{release} -%ifarch %{ix86} -Provides: %{name}-devel-doc(ix86) = %{epoch}:%{version}-%{release} +Conflicts: man-pages < 4.09 +%if "%{_rpmversion}" >= "5" +BuildArch: noarch %endif -%ifarch %{x8664} -# If both -m32 and -m64 is to be supported on x86_64, x86_64 package -# have to be installed, not ix86 one. -Obsoletes: glibc-devel-doc(athlon) -Obsoletes: glibc-devel-doc(i386) -Obsoletes: glibc-devel-doc(i486) -Obsoletes: glibc-devel-doc(i586) -Obsoletes: glibc-devel-doc(i686) -Obsoletes: glibc-devel-doc(ix86) -Obsoletes: glibc-devel-doc(pentium3) -Obsoletes: glibc-devel-doc(pentium4) -%endif -%ifarch x32 -Obsoletes: glibc-devel-doc(x86_64) -%endif -%ifarch ppc64 -Obsoletes: glibc-devel-doc(ppc) -%endif -%ifarch s390x -Obsoletes: glibc-devel-doc(s390) -%endif -%ifarch sparc64 -Obsoletes: glibc-devel-doc(sparc) -%endif -Conflicts: man-pages < 4.00 %description devel-doc The glibc-devel-doc package contains info and manual pages necessary @@ -955,8 +946,8 @@ kodowania danych z poziomu dowolnego programu. %prep %setup -q -%if "%{min_kernel}" < "2.6.32" -echo "Minimal supported kernel is 2.6.32" >&2 +%if "%{min_kernel}" < "3.2.0" +echo "Minimal supported kernel is 3.2.0" >&2 exit 1 %endif @@ -967,9 +958,9 @@ exit 1 %{!?with_bash_nls:%patch4 -p1} %patch5 -p1 %patch6 -p1 -%patch7 -p1 + %patch8 -p1 -%patch9 -p0 +%patch9 -p1 %patch10 -p1 %patch11 -p1 @@ -980,18 +971,14 @@ exit 1 %patch17 -p1 %patch18 -p1 %patch19 -p1 -%patch20 -p1 -%patch22 -p1 + %patch23 -p0 -%patch25 -p1 %patch27 -p1 -%patch28 -p1 + %patch29 -p1 %patch30 -p1 -%patch38 -p1 - # cleanup backups after patching find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f @@ -1025,9 +1012,12 @@ AWK="gawk" \ --enable-hidden-plt \ --enable-kernel="%{min_kernel}" \ --enable-nss-crypt%{!?with_nss_crypt:=no} \ + --enable-obsolete-nsl \ --enable-obsolete-rpc \ --enable-profile \ + --enable-stack-protector=strong \ --enable-stackguard-randomization \ + --enable-tunables \ --with-binutils=$(pwd)/alt-tools \ --with-bugurl=http://bugs.pld-linux.org/ \ --with-headers=%{_includedir} \ @@ -1036,7 +1026,7 @@ AWK="gawk" \ %{__make} \ AWK="gawk" \ - localedir=%{_prefix}/lib/locale \ + complocaledir=%{_prefix}/lib/locale \ sLIBdir=%{_libdir} cd .. @@ -1048,7 +1038,9 @@ env LANGUAGE=C LC_ALL=C \ %if %{without cross} CC="%{__cc}" -diet ${CC#*ccache } %{SOURCE7} %{rpmcflags} -Os -static -o glibc-postinst +CC=${CC#*ccache } +CC=${CC#%{_libdir}/ccache/} +diet ${CC} %{SOURCE7} %{rpmcflags} -Os -static -o glibc-postinst %endif %install @@ -1061,14 +1053,14 @@ cd builddir env LANGUAGE=C LC_ALL=C \ %{__make} install \ install_root=$RPM_BUILD_ROOT \ - localedir=%{_prefix}/lib/locale \ + complocaledir=%{_prefix}/lib/locale \ infodir=%{_infodir} \ mandir=%{_mandir} %if %{with localedb} env LANGUAGE=C LC_ALL=C \ %{__make} localedata/install-locales \ - localedir=%{_prefix}/lib/locale \ + complocaledir=%{_prefix}/lib/locale \ install_root=$RPM_BUILD_ROOT %else install -d $RPM_BUILD_ROOT%{_prefix}/lib/locale @@ -1137,7 +1129,7 @@ cp -p %{SOURCE9} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/nscd.conf rm -rf documentation install -d documentation -for f in ChangeLog.old DESIGN-{barrier,condvar,rwlock,systemtap-probes}.txt TODO{,-kernel,-testing}; do +for f in ChangeLog.old DESIGN-systemtap-probes.txt TODO{,-kernel,-testing}; do cp -af nptl/$f documentation/$f.nptl done cp -af crypt/README.ufc-crypt ChangeLog* documentation @@ -1161,30 +1153,41 @@ done # tlh - Klingon (bzflag) # # To be added when they become supported by glibc: -# ach (vlc) -# ak (gtkspell3) -# bal (newt,pessulus) +# ach (vlc, libreport) +# aln (vlc, libreport) +# bal (libosinfo, libreport, newt, pessulus) # cgg (vlc) -# co (vlc) -# frp (xfce, lxlauncher) +# co (FileZilla, vlc) +# frp (xfce, lxlauncher, mate) # gn (gn_BR in gnome, maybe gn_PY) +# guc (gtk-vnc) # haw (iso-codes, stellarium) # hrx (stellarium) -# ilo (kudzu) +# ilo (kudzu, libosinfo, libreport) # io (gtk+2, gnome, alacarte) -# jv (gmpc, avant-window-navigator, kdesudo) +# jv (gmpc, avant-window-navigator, kdesudo, mate) +# kab (FileZilla) +# kok@latin (inkscape) # kmr (vlc) -# ku_IQ (mate-menus,mozo) +# ku_IQ (mate) +# kw@kkcor, kw@uccor (libosinfo - currently empty) - add as supported variants when non-empty? # man (ccsm; incorrectly named md) +# mni@beng[ali] (inkscape) # mus (bluez-gnome) -# nah (mate-system-monitor) -# pms (deluge) -# sco (gnomad2, picard, stellarium) +# nah (mate) +# nqo (mate) +# pms (deluge, mate-tweak) +# sat@deva[nagari] (inkscape) +# sco (gnomad2, picard, stellarium, mate) # son (gtkspell3) +# su (terminator) # swg (sim) # syr (iso-codes) # tet (vlc) +# tpi (mate-tweak) +# tw (libosinfo) # vec (mate-applet-indicator) +# wba (libosinfo) # # To be removed (after fixing packages still using it): # sr@Latn (use sr@latin instead) @@ -1192,6 +1195,8 @@ done # # Short forms (omitted country code, used instead of long form) for ambiguous or unclear cases: # aa=aa_ER +# ak=ak_GH +# anp=anp_IN # ar=common? (AE, BH, DZ, EG, IQ, JO, KW, LB, LY, MA, OM, QA, SA, SD, SY, TN, YE) # az=az_AZ # bn=bn_BD @@ -1210,8 +1215,12 @@ done # fy=fy_NL # gez=gez_ET (?) # it=it_IT +# ks=ks_IN +# ks@devanagari=ks_IN@devanagari # ku=ku_TR # li=li_NL +# ln=ln_CD +# lo=lo_LA # nds=nds_DE # nl=nl_NL # om=om_ET @@ -1221,6 +1230,8 @@ done # quz=quz_PE # ru=ru_RU # sd=sd_IN +# sd@devanagari=sd_IN@devanagari +# shn=shn_MM # so=so_SO # sr=sr_RS [cyrillic] # sr@latin=sr_RS@latin @@ -1239,14 +1250,14 @@ done # be ca cs da de el en_GB es fi fr gl hr hu it ja ko nb nl pl pt_BR ru rw sk # 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 \ +for i in aa aa@saaho af ak am an ang anp ar ar_TN as ast az az_IR be@latin be@tarask bem \ bg bho bn bn_IN bo br brx bs byn ca@valencia ckb cmn crh csb cv cy de_AT de_CH doi 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 \ - hi hne hsb hy ia id ig ik is it_CH iu ka kg kk kl km kn kok ks ku kw ky la lb \ - lg li lo lt lv mai mg mhr mi mk ml mn mni mr ms mt my nds ne nl_BE nn nr nso \ - oc om or pa pap ps pt ps quz rm ro sa sat sc sd se si sid sl so sq sr sr@Latn szl tl \ + hi hne hsb hy ia id ig ik is it_CH iu ka kg kk kl km kn kok ks ks@devanagari ku kw ky la lb \ + lg li ln lo lt lv mai mg mhr mi mk ml mn mni mr ms mt my nds ne nl_BE nn nr nso \ + oc om or pa pap ps pt ps quz rm ro sa sat sc sd sd@devanagari se shn si sid sl so sq sr sr@Latn szl tl \ sr@ije sr@ijekavian sr@ijekavianlatin sr@latin ss st sw ta te tg th ti \ tig tk tl tlh tn ts tt tt@iqtelif ug uk ur uz uz@cyrillic ve vi wa wal wo xh yi yo \ zh_HK zu; do @@ -1260,7 +1271,7 @@ done # LC_TIME category, used for localized date formats (at least by coreutils) 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 ko lg lt \ - ms nb nl pl pt pt_BR ro ru rw sk sl sv tr uk vi zh_CN zh_TW; do + ms nb nl pl pt pt_BR ro ru rw sk sl sr sv tr uk vi zh_CN zh_TW; do if [ ! -d $RPM_BUILD_ROOT%{_localedir}/$i ]; then echo "%lang($lang) %{_localedir}/$i" >> glibc.lang fi @@ -1309,6 +1320,11 @@ if [ "$1" != 1 ]; then %service -q crond restart fi +%triggerin -- apache-base +if [ "$1" != 1 ]; then + %service -q httpd restart +fi + %ifarch %{x8664} # when upgrading from glibc < 6:2.19-3 copy locale-archive # from /usr/lib64/locale to /usr/lib/locale @@ -1449,13 +1465,6 @@ fi %endif %dir %{_prefix}/lib/locale -#%files -n nss_db -%defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/makedb -%attr(755,root,root) /%{_lib}/libnss_db-%{core_version}.so -%attr(755,root,root) /%{_lib}/libnss_db.so.2 -%{_var}/db/Makefile - #%files -n nss_dns %defattr(644,root,root,755) %attr(755,root,root) /%{_lib}/libnss_dns-%{core_version}.so @@ -1772,6 +1781,13 @@ fi %attr(755,root,root) /%{_lib}/libnss_compat-%{core_version}.so %attr(755,root,root) /%{_lib}/libnss_compat.so.2 +%files -n nss_db +%defattr(644,root,root,755) +%attr(755,root,root) %{_bindir}/makedb +%attr(755,root,root) /%{_lib}/libnss_db-%{core_version}.so +%attr(755,root,root) /%{_lib}/libnss_db.so.2 +%{_var}/db/Makefile + %files -n nss_hesiod %defattr(644,root,root,755) %attr(755,root,root) /%{_lib}/libnss_hesiod-%{core_version}.so @@ -1822,6 +1838,9 @@ fi %{_libdir}/libc.so %{_libdir}/libpthread.so # static-only libs +%ifarch %{x8664} x32 +%{_libdir}/libmvec_nonshared.a +%endif %{_libdir}/libc_nonshared.a %{_libdir}/libg.a %{_libdir}/libieee.a @@ -1876,12 +1895,14 @@ fi %files devel-doc %defattr(644,root,root,755) -%doc documentation/* PROJECTS +%doc documentation/* %{_infodir}/libc.info* %{_mandir}/man1/sprof.1* # just a link to getcwd.3 %{_mandir}/man2/getcwd.2* +# just a link to killpg.3 +%{_mandir}/man2/killpg.2* %{_mandir}/man3/* %{_mandir}/man7/aio.7* %{_mandir}/man7/attributes.7* @@ -1898,10 +1919,13 @@ fi %{_mandir}/man7/sem_overview.7* %{_mandir}/man7/shm_overview.7* %lang(cs) %{_mandir}/cs/man3/* +%lang(de) %{_mandir}/de/man2/killpg.2* %lang(de) %{_mandir}/de/man3/* +%lang(es) %{_mandir}/es/man2/killpg.2* %lang(es) %{_mandir}/es/man3/* %lang(es) %{_mandir}/es/man7/glob.7* %lang(fr) %{_mandir}/fr/man2/getcwd.2* +%lang(fr) %{_mandir}/fr/man2/killpg.2* %lang(fr) %{_mandir}/fr/man3/* %lang(fr) %{_mandir}/fr/man7/complex.7* %lang(fr) %{_mandir}/fr/man7/feature_test_macros.7* @@ -1915,6 +1939,7 @@ fi %lang(it) %{_mandir}/it/man7/glob.7* %lang(ja) %{_mandir}/ja/man1/sprof.1* %lang(ja) %{_mandir}/ja/man2/getcwd.2* +%lang(ja) %{_mandir}/ja/man2/killpg.2* %lang(ja) %{_mandir}/ja/man3/* %lang(ja) %{_mandir}/ja/man7/aio.7* %lang(ja) %{_mandir}/ja/man7/complex.7* @@ -1927,12 +1952,16 @@ fi %lang(ja) %{_mandir}/ja/man7/pthreads.7* %lang(ja) %{_mandir}/ja/man7/sem_overview.7* %lang(ja) %{_mandir}/ja/man7/shm_overview.7* +%lang(ko) %{_mandir}/ko/man2/killpg.2* %lang(ko) %{_mandir}/ko/man3/* %lang(nl) %{_mandir}/nl/man3/* +%lang(pl) %{_mandir}/pl/man2/killpg.2* %lang(pl) %{_mandir}/pl/man3/* +%lang(pt) %{_mandir}/pt/man2/killpg.2* %lang(pt) %{_mandir}/pt/man3/* %lang(pt) %{_mandir}/pt/man7/glob.7* %lang(ru) %{_mandir}/ru/man1/sprof.1* +%lang(ru) %{_mandir}/ru/man2/killpg.2* %lang(ru) %{_mandir}/ru/man3/* %lang(ru) %{_mandir}/ru/man7/glob.7* %lang(tr) %{_mandir}/tr/man3/* @@ -1950,6 +1979,7 @@ fi %{_libdir}/libm.a %{_libdir}/libmcheck.a %ifarch %{x8664} x32 +%{_libdir}/libm-%{core_version}.a %{_libdir}/libmvec.a %endif %{_libdir}/libnsl.a