X-Git-Url: http://git.pld-linux.org/?p=packages%2Fglibc.git;a=blobdiff_plain;f=glibc.spec;h=3b209b2d6011c13b79f3bbaa6dc8d622bccfdfed;hp=e45faa803c58b58fc30345cf5b19b785b7fe34d4;hb=66aa4e3;hpb=f5ad3c5c25e0140e2c3e6b56eae3066c4283e704 diff --git a/glibc.spec b/glibc.spec index e45faa8..3b209b2 100644 --- a/glibc.spec +++ b/glibc.spec @@ -17,6 +17,8 @@ %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 %bcond_without cet # Intel Control-flow Enforcement Technology (CET) +%bcond_without crypt # don't build obsolete libcrypt +%bcond_without static_pie # disable static PIE support # %ifarch %{ix86} %{x8664} %{!?min_kernel:%global min_kernel 3.2.0} @@ -30,8 +32,11 @@ %ifnarch i686 %{x8664} x32 %undefine with_cet %endif +%ifarch %{arm} +%undefine with_static_pie +%endif -%define core_version 2.31 +%define core_version 2.34 %define llh_version 7:2.6.32.1-1 Summary: GNU libc @@ -49,20 +54,20 @@ Release: 0.1 Epoch: 6 License: LGPL v2.1+ Group: Libraries -Source0: http://ftp.gnu.org/gnu/glibc/%{name}-%{version}.tar.xz -# Source0-md5: 78a720f17412f3c3282be5a6f3363ec6 +Source0: https://ftp.gnu.org/gnu/glibc/%{name}-%{version}.tar.xz +# Source0-md5: 31998b53fb39cb946e96abc310af1c89 Source2: nscd.init Source3: nscd.sysconfig Source4: nscd.logrotate # from man-pages.spec --with tars Source5: %{name}-man-pages.tar.xz -# Source5-md5: 852c1c77c7435615c0b17d8e4acf05d8 +# Source5-md5: e66023386d2cc0d6a1d5c29bdbf03550 Source6: %{name}-localedb-gen Source7: %{name}-LD-path.c Source9: nscd.tmpfiles # use branch.sh to update glibc-git.patch -Patch0: glibc-git.patch -# Patch0-md5: 30c72a537fc2b2b893832985d7c41f1f +#Patch0: glibc-git.patch +# Patch0-md5: d41d8cd98f00b204e9800998ecf8427e # against GNU TP (libc domain) #Patch1: %{name}-pl.po-update.patch Patch2: %{name}-pld.patch @@ -97,7 +102,7 @@ BuildRequires: automake BuildRequires: binutils >= 2:2.29 BuildRequires: bison >= 2.7 %{!?with_cross:BuildRequires: dietlibc-static} -BuildRequires: gawk +BuildRequires: gawk >= 3.1.2 %if %{with cet} BuildRequires: gcc >= 6:8.0 %else @@ -107,16 +112,20 @@ BuildRequires: gcc >= 6:6.2 BuildRequires: gettext-tools >= 0.10.36 %{?with_selinux:BuildRequires: libselinux-devel >= 1.18} BuildRequires: linux-libc-headers >= %{llh_version} +BuildRequires: make >= 1:4.0 %{?with_nss_crypt:BuildRequires: nss-devel >= 1:3.15.1-2} BuildRequires: perl-base BuildRequires: python3 >= 1:3.4 BuildRequires: python3-modules >= 1:3.4 BuildRequires: rpm-build >= 4.3-0.20030610.28 -BuildRequires: rpmbuild(macros) >= 1.567 +BuildRequires: rpmbuild(macros) >= 1.752 BuildRequires: sed >= 4.0.5 -BuildRequires: texinfo -Requires: %{name}-ld = %{epoch}:%{version}-%{release} +BuildRequires: tar >= 1:1.22 +BuildRequires: texinfo >= 4.7 +BuildRequires: xz +Requires(post): ldconfig = %{epoch}:%{version}-%{release} Requires: filesystem +Requires: ldconfig = %{epoch}:%{version}-%{release} Requires: uname(release) >= %{min_kernel} Provides: %{name}(%{_target_cpu}) = %{epoch}:%{version}-%{release} %ifarch %{ix86} @@ -124,8 +133,10 @@ Provides: %{name}(ix86) = %{epoch}:%{version}-%{release} %endif Provides: glibc(nptl) Provides: glibc(tls) +Provides: rtld(GNU_HASH) Obsoletes: glibc-common Obsoletes: glibc-debug +Obsoletes: glibc-ld < 6:2.33-2 %ifarch %{x8664} sparc64 ppc64 Provides: glibc64 Obsoletes: glibc64 @@ -139,11 +150,13 @@ Conflicts: kernel24 Conflicts: kernel24-smp Conflicts: ld.so < 1.9.9-10 Conflicts: man-pages < 4.00 +Conflicts: openssh-server < 2:8.2p1-1 Conflicts: poldek < 0.30.1-9 Conflicts: rc-scripts < 0.3.1-13 Conflicts: rpm < 4.1 +Conflicts: util-linux < 2.35.1-2 Conflicts: xorg-driver-video-nvidia-libs < 1:295.33 -ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} x32 ia64 alpha s390 s390x sparc sparc64 sparcv9 ppc ppc64 armv5tel +ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} x32 ia64 alpha s390 s390x sparc sparc64 sparcv9 ppc ppc64 armv5tel armv6hl armv7hl armv7hnl aarch64 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) # avoid -s here (ld.so must not be stripped to allow any program debugging) @@ -179,8 +192,9 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _hack_dontneed_PartialHardlinkSets 1 %define _noautochrpath .*\\(ldconfig\\|sln\\) # private symbols +# don't generate deps for ldconfig to avoid loop and force rpm to install it before glibc %define _noautoprov .*\(GLIBC_PRIVATE\) -%define _noautoreq .*\(GLIBC_PRIVATE\) +%define _noautoreq .*\(GLIBC_PRIVATE\) /sbin/ldconfig # to avoid multi-arch conflicts on getconf/* files %define _libexecdir %{_libdir} @@ -329,9 +343,12 @@ glibc library for crypt(3). %description libcrypt -l pl.UTF-8 Biblioteka glibc z funkcją crypt(3). -%package ld -Summary: Dynamic linker -Summary(pl.UTF-8): Linker (konsolidator) dynamiczny +%package -n ldconfig +Summary: Create shared library cache and maintains symlinks +Summary(de.UTF-8): Erstellt ein shared library cache und verwaltet symlinks +Summary(fr.UTF-8): Crée un cache de bibliothčque partagée et gčre *.so +Summary(pl.UTF-8): Tworzenie cache'u bibliotek dynamicznych i ich dowiązań symbolicznych +Summary(tr.UTF-8): Ortak kitaplýk önbelleđi yaratýr ve bađlantýlarý kurar Group: Applications/System Requires: uname(release) >= %{min_kernel} # we want FHS being installed before ldconfig, altho they are both unrelated to each-other. @@ -340,23 +357,38 @@ Provides: rtld(GNU_HASH) # This is needed because previous package (glibc) had autoreq false and had # provided this manually. Probably poldek bug that have to have it here. Provides: /sbin/ldconfig -Provides: ldconfig = %{epoch}:%{version}-%{release} -Obsoletes: ldconfig < 6:2.28-6.1 - -%description ld -The dynamic linker is used to load shared libraries used by -executables linked dynamically. - -The package also contains the ldconfig tool used to maintain shared -library cache for the linker. - -%description ld -l pl.UTF-8 -Linker (konsolidator) dynamiczny służy do ładowania bibliotek -współdzielonych używanych przez programy wykonywalne konsolidowane -dynamicznie. - -Pakiet zawiera także narzędzie ldconfig, służące do utrzymywania -pamięci podręcznej bibliotek współdzielonych dla linkera. +Conflicts: glibc-ld < 6:2.33-2 + +%description -n ldconfig +ldconfig scans a running system and sets up the symbolic links that +are used to load shared libraries properly. It also creates +/etc/ld.so.cache which speeds the loading programs which use shared +libraries. + +%description -n ldconfig -l de.UTF-8 +ldconfig scannt ein laufendes System und richtet die symbolischen +Verknüpfungen zum Laden der gemeinsam genutzten Libraries ein. +Außerdem erstellt es /etc/ld.so.cache, was das Laden von Programmen +mit gemeinsam genutzten Libraries beschleunigt. + +%description -n ldconfig -l fr.UTF-8 +ldconfig analyse un systčme et configure les liens symboliques +utilisés pour charger correctement les bibliothčques partagées. Il +crée aussi /etc/ld.so.cache qui accélčre le chargement des programmes +utilisant les bibliothčques partagées. + +%description -n ldconfig -l pl.UTF-8 +ldconfig testuje uruchomiony system i tworzy dowiązania symboliczne, +które są następnie używane do poprawnego ładowania bibliotek +dynamicznych. Program ten tworzy plik /etc/ld.so.cache, który +przyśpiesza ładowanie programów korzystających z bibliotek +dynamicznych. + +%description -n ldconfig -l tr.UTF-8 +ldconfig, çalýţmakta olan sistemi araţtýrýr ve ortak kitaplýklarýn +düzgün bir ţekilde yüklenmesi için gereken simgesel bađlantýlarý +kurar. Ayrýca ortak kitaplýklarý kullanan programlarýn yüklenmesini +hýzlandýran /etc/ld.so.cache dosyasýný yaratýr. %package -n nss_compat Summary: Old style NYS NSS glibc module @@ -434,39 +466,6 @@ Módulo hesiod NSS de glibc. %description -n nss_hesiod -l pl.UTF-8 Moduł glibc NSS (Name Service Switch) dostępu do baz danych. -%package -n nss_nis -Summary: NIS(YP) NSS glibc module -Summary(es.UTF-8): Módulo NIS(YP) NSS de glibc -Summary(pl.UTF-8): Moduł NIS(YP) NSS glibc -Group: Base -Requires: %{name} = %{epoch}:%{version}-%{release} - -%description -n nss_nis -glibc NSS (Name Service Switch) module for NIS(YP) databases access. - -%description -n nss_nis -l es.UTF-8 -Módulo NSS de glibc para acceder las bases de datos NIS(YP). - -%description -n nss_nis -l pl.UTF-8 -Moduł glibc NSS (Name Service Switch) dostępu do baz danych NIS(YP). - -%package -n nss_nisplus -Summary: NIS+ NSS module -Summary(es.UTF-8): Módulo NIS+ NSS -Summary(pl.UTF-8): Moduł NIS+ NSS -Group: Base -Requires: %{name} = %{epoch}:%{version}-%{release} - -%description -n nss_nisplus -glibc NSS (Name Service Switch) module for NIS+ databases access. - -%description -n nss_nisplus -l es.UTF-8 -Módulo NSS (Name Service Switch) de glibc para acceder las bases de -datos NIS+. - -%description -n nss_nisplus -l pl.UTF-8 -Moduł glibc NSS (Name Service Switch) dostępu do baz danych NIS+. - %package memusage Summary: Memory usage profiler Summary(pl.UTF-8): Narzędzie do profilowania zużycia pamięci @@ -494,7 +493,11 @@ Group: Development/Libraries Requires: %{name} = %{epoch}:%{version}-%{release} Requires: %{name}-devel-utils = %{epoch}:%{version}-%{release} Requires: %{name}-headers = %{epoch}:%{version}-%{release} +%if %{with crypt} Requires: %{name}-libcrypt(%{_target_cpu}) = %{epoch}:%{version}-%{release} +%else +Requires: libxcrypt-devel +%endif Provides: %{name}-devel(%{_target_cpu}) = %{epoch}:%{version}-%{release} %ifarch %{ix86} Provides: %{name}-devel(ix86) = %{epoch}:%{version}-%{release} @@ -563,33 +566,33 @@ kitaplıklar. Summary: Header files for development using standard C libraries Summary(pl.UTF-8): Pliki nagłówkowe do tworzenia programów przy użyciu standardowych bibliotek C Group: Development/Building -Provides: %{name}-headers(%{_target_cpu}) = %{epoch}:%{version}-%{release} +Provides: %{name}-header-cpu-%{_target_cpu} = %{epoch}:%{version}-%{release} %ifarch %{ix86} -Provides: %{name}-headers(ix86) = %{epoch}:%{version}-%{release} +Provides: %{name}-headers-cpu-ix86 = %{epoch}:%{version}-%{release} %endif %ifarch %{x8664} x32 # If both -m32 and -m64 is to be supported on x86_64, x86_64 package # have to be installed, not ix86 one. -Obsoletes: glibc-headers(athlon) -Obsoletes: glibc-headers(i386) -Obsoletes: glibc-headers(i486) -Obsoletes: glibc-headers(i586) -Obsoletes: glibc-headers(i686) -Obsoletes: glibc-headers(ix86) -Obsoletes: glibc-headers(pentium3) -Obsoletes: glibc-headers(pentium4) +Obsoletes: glibc-headers-cpu-athlon +Obsoletes: glibc-headers-cpu-i386 +Obsoletes: glibc-headers-cpu-i486 +Obsoletes: glibc-headers-cpu-i586 +Obsoletes: glibc-headers-cpu-i686 +Obsoletes: glibc-headers-cpu-ix86 +Obsoletes: glibc-headers-cpu-pentium3 +Obsoletes: glibc-headers-cpu-pentium4 %endif %ifarch x32 -Obsoletes: glibc-headers(x86_64) +Obsoletes: glibc-headers-cpu-x86_64 %endif %ifarch ppc64 -Obsoletes: glibc-headers(ppc) +Obsoletes: glibc-headers-cpu-ppc %endif %ifarch s390x -Obsoletes: glibc-headers(s390) +Obsoletes: glibc-headers-cpu-s390 %endif %ifarch sparc64 -Obsoletes: glibc-headers(sparc) +Obsoletes: glibc-headers-cpu-sparc %endif Requires: linux-libc-headers >= %{llh_version} @@ -618,33 +621,33 @@ korzystające ze standardowych bibliotek C. Summary: Utilities needed for development using standard C libraries Summary(pl.UTF-8): Narzędzia do tworzenia programów przy użyciu standardowych bibliotek C Group: Development/Libraries -Provides: %{name}-devel-utils(%{_target_cpu}) = %{epoch}:%{version}-%{release} +Provides: %{name}-devel-util-cpu-%{_target_cpu} = %{epoch}:%{version}-%{release} %ifarch %{ix86} -Provides: %{name}-devel-utils(ix86) = %{epoch}:%{version}-%{release} +Provides: %{name}-devel-utils-cpu-ix86 = %{epoch}:%{version}-%{release} %endif %ifarch %{x8664} x32 # If both -m32 and -m64 is to be supported on AMD64, x86_64 package # have to be installed, not ix86 one. -Obsoletes: glibc-devel-utils(athlon) -Obsoletes: glibc-devel-utils(i386) -Obsoletes: glibc-devel-utils(i486) -Obsoletes: glibc-devel-utils(i586) -Obsoletes: glibc-devel-utils(i686) -Obsoletes: glibc-devel-utils(ix86) -Obsoletes: glibc-devel-utils(pentium3) -Obsoletes: glibc-devel-utils(pentium4) +Obsoletes: glibc-devel-utils-cpu-athlon +Obsoletes: glibc-devel-utils-cpu-i386 +Obsoletes: glibc-devel-utils-cpu-i486 +Obsoletes: glibc-devel-utils-cpu-i586 +Obsoletes: glibc-devel-utils-cpu-i686 +Obsoletes: glibc-devel-utils-cpu-ix86 +Obsoletes: glibc-devel-utils-cpu-pentium3 +Obsoletes: glibc-devel-utils-cpu-pentium4 %endif %ifarch x32 -Obsoletes: glibc-devel-utils(x86_64) +Obsoletes: glibc-devel-utils-cpu-x86_64 %endif %ifarch ppc64 -Obsoletes: glibc-devel-utils(ppc) +Obsoletes: glibc-devel-utils-cpu-ppc %endif %ifarch s390x -Obsoletes: glibc-devel-utils(s390) +Obsoletes: glibc-devel-utils-cpu-s390 %endif %ifarch sparc64 -Obsoletes: glibc-devel-utils(sparc) +Obsoletes: glibc-devel-utils-cpu-sparc %endif Conflicts: man-pages < 4.00 @@ -673,9 +676,7 @@ 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 Conflicts: man-pages < 4.09 -%if "%{_rpmversion}" >= "5" BuildArch: noarch -%endif %description devel-doc The glibc-devel-doc package contains info and manual pages necessary @@ -701,6 +702,7 @@ Summary(ru.UTF-8): Статические библиотеки glibc Summary(uk.UTF-8): Статичні бібліотеки glibc Group: Development/Libraries Requires: %{name}-devel = %{epoch}:%{version}-%{release} +%{!?with_crypt:Requires: libxcrypt-static} Provides: %{name}-static(%{_target_cpu}) = %{epoch}:%{version}-%{release} %ifarch %{ix86} Provides: %{name}-static(ix86) = %{epoch}:%{version}-%{release} @@ -943,10 +945,10 @@ echo "Minimal supported kernel is 3.2.0" >&2 exit 1 %endif -#patch0 -p1 +#%patch0 -p1 %patch2 -p1 -%patch3 -p0 +%patch3 -p1 %{!?with_bash_nls:%patch4 -p1} %patch6 -p1 @@ -977,7 +979,6 @@ chmod +x scripts/cpp # glibc has its own way to remove PLT relocations. / H. J. Lu. unset LD_SYMBOLIC_FUNCTIONS || : -cp -f /usr/share/automake/config.sub scripts %{__aclocal} %{__autoconf} @@ -997,6 +998,9 @@ AWK="gawk" \ ../%configure \ %if %{with cet} --enable-cet \ +%endif +%if %{without crypt} + --disable-crypt \ %endif --enable-bind-now \ --enable-experimental-malloc \ @@ -1004,11 +1008,10 @@ AWK="gawk" \ --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-static-pie \ + %{?with_static_pie:--enable-static-pie} \ --enable-tunables \ --with-binutils=$(pwd)/alt-tools \ --with-bugurl=http://bugs.pld-linux.org/ \ @@ -1072,7 +1075,6 @@ PICFILES="libc_pic.a libc.map resolv/libresolv_pic.a" install -p $PICFILES $RPM_BUILD_ROOT%{_libdir} -install -p elf/soinit.os $RPM_BUILD_ROOT%{_libdir}/soinit.o install -p elf/sofini.os $RPM_BUILD_ROOT%{_libdir}/sofini.o # Include %{_libdir}/gconv/gconv-modules.cache @@ -1087,11 +1089,11 @@ install -p glibc-postinst $RPM_BUILD_ROOT/sbin mv -f $RPM_BUILD_ROOT/%{_lib}/libpcprofile.so $RPM_BUILD_ROOT%{_libdir} # make symlinks across top-level directories absolute -for l in BrokenLocale anl crypt dl \ +for l in BrokenLocale anl %{?with_crypt:crypt} \ %ifarch %{x8664} x32 mvec \ %endif - nsl resolv rt thread_db util; do + ; do test -L $RPM_BUILD_ROOT%{_libdir}/lib${l}.so || exit 1 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib${l}.so ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/lib${l}.so.*) $RPM_BUILD_ROOT%{_libdir}/lib${l}.so @@ -1105,7 +1107,6 @@ cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/nscd cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/nscd cp -a nscd/nscd.conf $RPM_BUILD_ROOT%{_sysconfdir} cp -a posix/gai.conf $RPM_BUILD_ROOT%{_sysconfdir} -cp -a nis/nss $RPM_BUILD_ROOT/etc/default/nss sed -e 's#\([ \t]\)db\([ \t]\)#\1#g' nss/nsswitch.conf > $RPM_BUILD_ROOT%{_sysconfdir}/nsswitch.conf xz -dc %{SOURCE5} | tar xf - -C $RPM_BUILD_ROOT%{_mandir} @@ -1167,14 +1168,16 @@ done # guc (gtk-vnc) # haw (iso-codes, stellarium) # hrx (stellarium) -# ie (xfce) +# hye (tumbler) +# ie (xfce, cinnamon) # ilo (kudzu, libosinfo, libreport) # io (alacarte, gtk+2, gnome, iso-codes) # jam (iso-codes) -# jv (avant-window-navigator, gmpc, kdesudo, mate) +# jv (avant-window-navigator, gmpc, kdesudo, mate, cinnamon) # ki (iso-codes) # kok@latin (inkscape) # kmr (vlc) +# ksw (cinnamon) # ku_IQ (mate) # kv (iso-codes) # kw@kkcor, kw@uccor (libosinfo - currently empty) - add as supported variants when non-empty? @@ -1184,12 +1187,14 @@ done # mus (bluez-gnome) # na (iso-codes) # nah (iso-codes, mate) +# nap (cinnamon) # nqo (mate) # nv (iso-codes) # pi (iso-codes) # pms (deluge, mate-tweak) +# rue (cinnamon) # sat@deva[nagari] (inkscape) -# sco (gnomad2, mate, picard, stellarium) +# sco (gnomad2, mate, picard, stellarium, cinnamon) # son (gtkspell3, iso-codes) # su (terminator) # swg (sim) @@ -1239,6 +1244,7 @@ done # nl=nl_NL # om=om_ET # or=or_IN +# os=os_RU # pa=pa_IN # pt=pt_PT # quz=quz_PE @@ -1268,12 +1274,12 @@ done 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 ce chr 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 \ + en en@boldquot en@quot en@shaw en_AU en_CA en_IE en_NZ en_US en_ZA 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 ht hsb hy ia id ig ik is it_CH iu \ ka kab kg kk kl km kn kok ks ks@devanagari ku kw ky la lb lg li ln lo lt lv \ - mai mg mhr mi mjw mk ml mn mni mr ms mt my nds ne nl_BE nn nr nso oc om or \ + mai mg mhr mi mjw mk ml mn mni mr ms mt my nds ne nl_BE nn nr nso oc om or os \ pa pap ps pt ps quz rm ro \ sa sat sc sd sd@devanagari se shn si sid sl so sq \ sr sr@Latn sr@ije sr@ijekavian sr@ijekavianlatin sr@latin ss st sw szl \ @@ -1317,24 +1323,22 @@ install -d $RPM_BUILD_ROOT%{_mandir}{,/ru,/es,/fr,/ja}/man2 %{__rm} $RPM_BUILD_ROOT%{_mandir}/pl/man3/{alphasort,cfgetispeed,cfgetospeed,cfmakeraw,cfsetispeed,cfsetospeed,closelog,dn_comp,dn_expand,fscanf}.3 %{__rm} $RPM_BUILD_ROOT%{_mandir}/tr/man3/{encrypt_r,setkey,setkey_r}.3 +%if %{without crypt} +%{__rm} $RPM_BUILD_ROOT%{_mandir}{,/ja}/man3/crypt{,_r}.3 +%{__rm} $RPM_BUILD_ROOT%{_mandir}/{de,es,fr,pl,pt,ru,tr}/man3/crypt.3 +%endif + %clean rm -rf $RPM_BUILD_ROOT %if %{without cross} %post -p /sbin/postshell /sbin/glibc-postinst /%{_lib}/%{_host_cpu} /%{_lib}/tls --/sbin/ldconfig - -%postun -p /sbin/postshell --/sbin/ldconfig +/sbin/ldconfig -%post ld -p /sbin/postshell --/sbin/ldconfig +%postun -p /sbin/ldconfig -%postun ld -p /sbin/postshell --/sbin/ldconfig - -%triggerpostun ld -p /sbin/postshell -- glibc-misc < 6:2.3.5-7.6 +%triggerpostun -p /sbin/postshell -- glibc-misc < 6:2.3.5-7.6 -/bin/cp -f /etc/ld.so.conf /etc/ld.so.conf.rpmsave -/bin/sed -i -e '1iinclude ld.so.conf.d/*.conf' /etc/ld.so.conf %endif @@ -1410,7 +1414,33 @@ fi %if %{without cross} %attr(755,root,root) /sbin/glibc-postinst %endif -# wildly arch-dependent ld.so SONAME symlink +# TODO: package ldconfig symlinks as %ghost +%attr(755,root,root) /%{_lib}/ld-%{core_version}.so +%ifarch %{ix86} sparc sparcv9 sparc64 alpha sh +%attr(755,root,root) /%{_lib}/ld-linux.so.2 +%endif +%ifarch ia64 +%attr(755,root,root) /%{_lib}/ld-linux-ia64.so.2 +%endif +%ifarch %{x8664} +%attr(755,root,root) /%{_lib}/ld-linux-x86-64.so.2 +%endif +%ifarch x32 +%attr(755,root,root) /%{_lib}/ld-linux-x32.so.2 +%endif +%ifarch ppc64 s390x +%attr(755,root,root) /%{_lib}/ld64.so.1 +%endif +%ifarch aarch64 +%attr(755,root,root) /lib/ld-linux-aarch64.so.1 +%attr(755,root,root) /%{_lib}/ld-linux-aarch64.so.1 +%endif +%ifarch armv6hl armv7hl armv7hnl +%attr(755,root,root) /lib/ld-linux-armhf.so.3 +%endif +%ifnarch %{ix86} sparc sparcv9 sparc64 alpha sh ia64 %{x8664} x32 ppc64 s390x %{arm} aarch64 +%attr(755,root,root) /%{_lib}/ld.so.1 +%endif %attr(755,root,root) /%{_lib}/libBrokenLocale-%{core_version}.so %ifarch alpha %attr(755,root,root) /%{_lib}/libBrokenLocale.so.1.1 @@ -1482,7 +1512,6 @@ fi %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nsswitch.conf %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gai.conf -%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/default/nss %config %{_sysconfdir}/rpc @@ -1491,8 +1520,7 @@ fi %attr(755,root,root) %{_bindir}/getent %attr(755,root,root) %{_bindir}/iconv %attr(755,root,root) %{_bindir}/locale -%attr(755,root,root) %{_bindir}/rpcgen -%attr(755,root,root) %{_sbindir}/zdump +%attr(755,root,root) %{_bindir}/zdump %attr(755,root,root) %{_sbindir}/zic %dir %{_libexecdir}/getconf @@ -1505,7 +1533,6 @@ fi %{_mandir}/man1/getent.1* %{_mandir}/man1/iconv.1* %{_mandir}/man1/locale.1* -%{_mandir}/man1/rpcgen.1* %{_mandir}/man5/gai.conf.5* %{_mandir}/man5/locale.5* %{_mandir}/man5/nss.5* @@ -1528,6 +1555,9 @@ fi %{_mandir}/man7/unicode.7* %{_mandir}/man7/utf-8.7* %{_mandir}/man7/utf8.7* +%{_mandir}/man8/ld-linux.8* +%{_mandir}/man8/ld-linux.so.8* +%{_mandir}/man8/ld.so.8* %{_mandir}/man8/sln.8* %{_mandir}/man8/zdump.8* %{_mandir}/man8/zic.8* @@ -1561,6 +1591,9 @@ fi %lang(es) %{_mandir}/es/man7/unicode.7* %lang(es) %{_mandir}/es/man7/utf-8.7* %lang(es) %{_mandir}/es/man7/utf8.7* +%lang(es) %{_mandir}/es/man8/ld-linux.8* +%lang(es) %{_mandir}/es/man8/ld-linux.so.8* +%lang(es) %{_mandir}/es/man8/ld.so.8* %lang(es) %{_mandir}/es/man8/zdump.8* %lang(es) %{_mandir}/es/man8/zic.8* %lang(fr) %{_mandir}/fr/man1/getent.1* @@ -1585,6 +1618,9 @@ fi %lang(fr) %{_mandir}/fr/man7/unicode.7* %lang(fr) %{_mandir}/fr/man7/utf-8.7* %lang(fr) %{_mandir}/fr/man7/utf8.7* +%lang(fr) %{_mandir}/fr/man8/ld-linux.8* +%lang(fr) %{_mandir}/fr/man8/ld-linux.so.8* +%lang(fr) %{_mandir}/fr/man8/ld.so.8* %lang(fr) %{_mandir}/fr/man8/sln.8* %lang(fr) %{_mandir}/fr/man8/zdump.8* %lang(fr) %{_mandir}/fr/man8/zic.8* @@ -1596,6 +1632,9 @@ fi %lang(hu) %{_mandir}/hu/man7/locale.7* %lang(hu) %{_mandir}/hu/man7/utf-8.7* %lang(hu) %{_mandir}/hu/man7/utf8.7* +%lang(hu) %{_mandir}/hu/man8/ld-linux.8* +%lang(hu) %{_mandir}/hu/man8/ld-linux.so.8* +%lang(hu) %{_mandir}/hu/man8/ld.so.8* %lang(hu) %{_mandir}/hu/man8/zdump.8* %lang(it) %{_mandir}/it/man5/locale.5* %lang(it) %{_mandir}/it/man7/ascii.7* @@ -1612,7 +1651,6 @@ fi %lang(ja) %{_mandir}/ja/man1/getent.1* %lang(ja) %{_mandir}/ja/man1/iconv.1* %lang(ja) %{_mandir}/ja/man1/locale.1* -%lang(ja) %{_mandir}/ja/man1/rpcgen.1* %lang(ja) %{_mandir}/ja/man5/gai.conf.5* %lang(ja) %{_mandir}/ja/man5/locale.5* %lang(ja) %{_mandir}/ja/man5/nss.5* @@ -1635,6 +1673,9 @@ fi %lang(ja) %{_mandir}/ja/man7/unicode.7* %lang(ja) %{_mandir}/ja/man7/utf-8.7* %lang(ja) %{_mandir}/ja/man7/utf8.7* +%lang(ja) %{_mandir}/ja/man8/ld-linux.8* +%lang(ja) %{_mandir}/ja/man8/ld-linux.so.8* +%lang(ja) %{_mandir}/ja/man8/ld.so.8* %lang(ja) %{_mandir}/ja/man8/sln.8* %lang(ja) %{_mandir}/ja/man8/zdump.8* %lang(ja) %{_mandir}/ja/man8/zic.8* @@ -1659,6 +1700,9 @@ fi %lang(pl) %{_mandir}/pl/man7/unicode.7* %lang(pl) %{_mandir}/pl/man7/utf-8.7* %lang(pl) %{_mandir}/pl/man7/utf8.7* +%lang(pl) %{_mandir}/pl/man8/ld-linux.8* +%lang(pl) %{_mandir}/pl/man8/ld-linux.so.8* +%lang(pl) %{_mandir}/pl/man8/ld.so.8* %lang(pt) %{_mandir}/pt/man5/locale.5* %lang(pt) %{_mandir}/pt/man5/nsswitch.conf.5* %lang(pt) %{_mandir}/pt/man5/rpc.5* @@ -1679,7 +1723,6 @@ fi %lang(ru) %{_mandir}/ru/man1/getent.1* %lang(ru) %{_mandir}/ru/man1/iconv.1* %lang(ru) %{_mandir}/ru/man1/locale.1* -%lang(ru) %{_mandir}/ru/man1/rpcgen.1* %lang(ru) %{_mandir}/ru/man5/locale.5* %lang(ru) %{_mandir}/ru/man5/nsswitch.conf.5* %lang(ru) %{_mandir}/ru/man5/rpc.5* @@ -1695,6 +1738,8 @@ fi %lang(ru) %{_mandir}/ru/man7/unicode.7* %lang(ru) %{_mandir}/ru/man7/utf-8.7* %lang(ru) %{_mandir}/ru/man7/utf8.7* +%lang(ru) %{_mandir}/ru/man8/ld-linux.so.8* +%lang(ru) %{_mandir}/ru/man8/ld.so.8* %lang(ru) %{_mandir}/ru/man8/zdump.8* %lang(ru) %{_mandir}/ru/man8/zic.8* %lang(tr) %{_mandir}/tr/man1/iconv.1* @@ -1754,6 +1799,7 @@ fi %lang(zh_CN) %{_mandir}/zh_CN/man1/ldd.1* %lang(zh_TW) %{_mandir}/zh_TW/man1/ldd.1* +%if %{with crypt} %files libcrypt %defattr(644,root,root,755) %attr(755,root,root) /%{_lib}/libcrypt-%{core_version}.so @@ -1762,60 +1808,21 @@ fi %else %attr(755,root,root) %ghost /%{_lib}/libcrypt.so.1 %endif +%endif -%files ld +%files -n ldconfig %defattr(644,root,root,755) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf %dir %{_sysconfdir}/ld.so.conf.d %ghost %{_sysconfdir}/ld.so.cache -# TODO: package ldconfig symlinks as %ghost -%attr(755,root,root) /%{_lib}/ld-%{core_version}.so -%ifarch %{ix86} sparc sparcv9 sparc64 alpha sh -%attr(755,root,root) /%{_lib}/ld-linux.so.2 -%endif -%ifarch ia64 -%attr(755,root,root) /%{_lib}/ld-linux-ia64.so.2 -%endif -%ifarch %{x8664} -%attr(755,root,root) /%{_lib}/ld-linux-x86-64.so.2 -%endif -%ifarch x32 -%attr(755,root,root) /%{_lib}/ld-linux-x32.so.2 -%endif -%ifarch ppc64 s390x -%attr(755,root,root) /%{_lib}/ld64.so.1 -%endif -%ifnarch %{ix86} sparc sparcv9 sparc64 alpha sh ia64 %{x8664} x32 ppc64 s390x %{arm} -%attr(755,root,root) /%{_lib}/ld.so.1 -%endif %attr(755,root,root) /sbin/ldconfig -%{_mandir}/man8/ld-linux.8* -%{_mandir}/man8/ld-linux.so.8* -%{_mandir}/man8/ld.so.8* %{_mandir}/man8/ldconfig.8* -%lang(es) %{_mandir}/es/man8/ld-linux.8* -%lang(es) %{_mandir}/es/man8/ld-linux.so.8* -%lang(es) %{_mandir}/es/man8/ld.so.8* %lang(es) %{_mandir}/es/man8/ldconfig.8* -%lang(fr) %{_mandir}/fr/man8/ld-linux.8* -%lang(fr) %{_mandir}/fr/man8/ld-linux.so.8* -%lang(fr) %{_mandir}/fr/man8/ld.so.8* %lang(fr) %{_mandir}/fr/man8/ldconfig.8* -%lang(hu) %{_mandir}/hu/man8/ld-linux.8* -%lang(hu) %{_mandir}/hu/man8/ld-linux.so.8* -%lang(hu) %{_mandir}/hu/man8/ld.so.8* %lang(hu) %{_mandir}/hu/man8/ldconfig.8* -%lang(ja) %{_mandir}/ja/man8/ld-linux.8* -%lang(ja) %{_mandir}/ja/man8/ld-linux.so.8* -%lang(ja) %{_mandir}/ja/man8/ld.so.8* %lang(ja) %{_mandir}/ja/man8/ldconfig.8* -%lang(pl) %{_mandir}/pl/man8/ld-linux.8* -%lang(pl) %{_mandir}/pl/man8/ld-linux.so.8* -%lang(pl) %{_mandir}/pl/man8/ld.so.8* %lang(pl) %{_mandir}/pl/man8/ldconfig.8* %lang(pt) %{_mandir}/pt/man8/ldconfig.8* -%lang(ru) %{_mandir}/ru/man8/ld-linux.so.8* -%lang(ru) %{_mandir}/ru/man8/ld.so.8* %lang(ru) %{_mandir}/ru/man8/ldconfig.8* %dir %attr(700,root,root) /var/cache/ldconfig %attr(600,root,root) %ghost /var/cache/ldconfig/aux-cache @@ -1837,16 +1844,6 @@ fi %attr(755,root,root) /%{_lib}/libnss_hesiod-%{core_version}.so %attr(755,root,root) /%{_lib}/libnss_hesiod.so.2 -%files -n nss_nis -%defattr(644,root,root,755) -%attr(755,root,root) /%{_lib}/libnss_nis-%{core_version}.so -%attr(755,root,root) /%{_lib}/libnss_nis.so.2 - -%files -n nss_nisplus -%defattr(644,root,root,755) -%attr(755,root,root) /%{_lib}/libnss_nisplus-%{core_version}.so -%attr(755,root,root) /%{_lib}/libnss_nisplus.so.2 - %if %{with memusage} %files memusage %defattr(644,root,root,755) @@ -1863,13 +1860,12 @@ fi %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libBrokenLocale.so %attr(755,root,root) %{_libdir}/libanl.so -%attr(755,root,root) %{_libdir}/libcrypt.so +%{?with_crypt:%attr(755,root,root) %{_libdir}/libcrypt.so} %attr(755,root,root) %{_libdir}/libdl.so %attr(755,root,root) %{_libdir}/libm.so %ifarch %{x8664} x32 %attr(755,root,root) %{_libdir}/libmvec.so %endif -%attr(755,root,root) %{_libdir}/libnsl.so %attr(755,root,root) %{_libdir}/libpcprofile.so %attr(755,root,root) %{_libdir}/libresolv.so %attr(755,root,root) %{_libdir}/librt.so @@ -1877,7 +1873,7 @@ fi %attr(755,root,root) %{_libdir}/libutil.so %{_libdir}/crt[1in].o %{_libdir}/[MSgr]crt1.o -%{_libdir}/grcrt1.o +%{?with_static_pie:%{_libdir}/grcrt1.o} # ld scripts %{_libdir}/libc.so %{_libdir}/libpthread.so @@ -1887,8 +1883,7 @@ fi %ifarch alpha ppc sparc %{_libdir}/libnldbl_nonshared.a %endif -%{_libdir}/librpcsvc.a -%ifarch %{ix86} %{x8664} x32 ppc ppc64 s390 s390x sparc sparcv9 sparc64 +%ifarch %{ix86} %{x8664} x32 ppc ppc64 s390 s390x sparc sparcv9 sparc64 aarch64 armv6hl armv7hl armv7hnl # ABI-dependent headers %{_includedir}/gnu/stubs-*.h %endif @@ -1920,7 +1915,6 @@ fi %{_includedir}/nfs %{_includedir}/protocols %{_includedir}/rpc -%{_includedir}/rpcsvc %{_includedir}/scsi %{_includedir}/sys @@ -1932,18 +1926,17 @@ fi %attr(755,root,root) %{_bindir}/sprof %attr(755,root,root) %{_bindir}/xtrace %{_mandir}/man1/mtrace.1* +%{_mandir}/man1/sprof.1* %lang(ja) %{_mandir}/ja/man1/mtrace.1* +%lang(ja) %{_mandir}/ja/man1/sprof.1* +%lang(ru) %{_mandir}/ru/man1/sprof.1* %files devel-doc %defattr(644,root,root,755) %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* @@ -1956,17 +1949,15 @@ fi %{_mandir}/man7/nptl.7* %{_mandir}/man7/posixoptions.7* %{_mandir}/man7/pthreads.7* +%{_mandir}/man7/queue.7* %{_mandir}/man7/rtld-audit.7* %{_mandir}/man7/sem_overview.7* %{_mandir}/man7/shm_overview.7* +%{_mandir}/man7/system_data_types.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/aio.7* %lang(fr) %{_mandir}/fr/man7/complex.7* @@ -1983,9 +1974,7 @@ fi %lang(hu) %{_mandir}/hu/man3/* %lang(it) %{_mandir}/it/man3/* %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* @@ -1998,16 +1987,11 @@ 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/* @@ -2022,7 +2006,7 @@ fi %{_libdir}/libanl.a %{_libdir}/libBrokenLocale.a %{_libdir}/libc.a -%{_libdir}/libcrypt.a +%{?with_crypt:%{_libdir}/libcrypt.a} %{_libdir}/libdl.a %{_libdir}/libm.a %{_libdir}/libmcheck.a @@ -2030,7 +2014,6 @@ fi %{_libdir}/libm-%{core_version}.a %{_libdir}/libmvec.a %endif -%{_libdir}/libnsl.a %{_libdir}/libpthread.a %{_libdir}/libresolv.a %{_libdir}/librt.a @@ -2044,7 +2027,6 @@ fi %defattr(644,root,root,755) %{_libdir}/lib*_pic.a %{_libdir}/lib*.map -%{_libdir}/soinit.o %{_libdir}/sofini.o %files -n nscd