X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=glibc.spec;h=ebc1297d036ad881bb1fb515f2aab164d29819c1;hb=9b339f81c36ad70b9377649d45448d42bd60b5e9;hp=129b1a793b13304e228f7860ab79fb8a7c5e7739;hpb=6ecf20c7974a5f5ea50b9d611a71c133a19585fa;p=packages%2Fglibc.git diff --git a/glibc.spec b/glibc.spec index 129b1a7..ebc1297 100644 --- a/glibc.spec +++ b/glibc.spec @@ -6,7 +6,6 @@ %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) -%bcond_with pax # PaX support # # TODO: # - look at locale fixes/updates in bugzilla @@ -33,15 +32,13 @@ Summary(ru.UTF-8): GNU libc версии Summary(tr.UTF-8): GNU libc Summary(uk.UTF-8): GNU libc версії Name: glibc -Version: 2.7 -Release: 9 +Version: 2.11 +Release: 3 Epoch: 6 License: LGPL v2.1+ Group: Libraries Source0: ftp://sources.redhat.com/pub/glibc/releases/%{name}-%{version}.tar.bz2 -# Source0-md5: 065c5952b439deba40083ccd67bcc8f7 -Source1: ftp://sources.redhat.com/pub/glibc/releases/%{name}-libidn-%{version}.tar.bz2 -# Source1-md5: 226809992fb1f3dc6ea23e0f26952ea4 +# Source0-md5: 2c990f97e9ff9fb1c3c85fe826e991b9 Source2: nscd.init Source3: nscd.sysconfig Source4: nscd.logrotate @@ -53,7 +50,6 @@ Source7: %{name}-LD-path.c Patch1: %{name}-pl.po-update.patch Patch2: %{name}-pld.patch Patch3: %{name}-crypt-blowfish.patch -Patch4: %{name}-alpha-ev6-opcodes.patch Patch5: %{name}-sparc-softfp-gcc.patch Patch6: %{name}-paths.patch Patch7: %{name}-no_opt_override.patch @@ -61,24 +57,18 @@ Patch8: %{name}-missing-nls.patch Patch9: %{name}-java-libc-wait.patch Patch10: %{name}-info.patch Patch11: %{name}-no_debuggable_objects.patch - -Patch13: %{name}-awk.patch Patch14: %{name}-sparc-errno_fix.patch -Patch15: %{name}-memmove.patch -Patch17: %{name}-new-charsets.patch -Patch18: %{name}-i586-build-fix.patch - -Patch20: %{name}-tzfile-noassert.patch -Patch21: %{name}-morelocales.patch -Patch22: %{name}-locale_fixes.patch -Patch23: %{name}-ZA_collate.patch - -Patch25: %{name}-cross-gcc_eh.patch -Patch26: %{name}-with-stroke.patch -Patch30: %{name}-pax_dl-execstack.patch -Patch31: %{name}-pt_pax.patch -Patch32: %{name}-tzfile_read.patch -Patch33: %{name}-sparc-lowlevellock.patch +Patch15: %{name}-new-charsets.patch +Patch16: %{name}-tzfile-noassert.patch +Patch17: %{name}-morelocales.patch +Patch18: %{name}-locale_fixes.patch +Patch19: %{name}-ZA_collate.patch +Patch20: %{name}-thread_start.patch +Patch21: %{name}-cross-gcc_eh.patch +Patch22: %{name}-with-stroke.patch +Patch23: %{name}-pt_pax.patch +Patch25: %{name}-cv_gnu89_inline.patch +Patch26: %{name}-posix-sh.patch URL: http://www.gnu.org/software/libc/ %{?with_selinux:BuildRequires: audit-libs-devel} BuildRequires: autoconf @@ -88,14 +78,14 @@ BuildRequires: binutils >= 2:2.17.50.0.7 %else BuildRequires: binutils >= 2:2.15.90.0.3 %endif -AutoReq: false %{!?with_cross:BuildRequires: dietlibc-static} BuildRequires: gawk -BuildRequires: gcc >= 5:3.4 +BuildRequires: gcc >= 6:4.3 %{?with_memusage:BuildRequires: gd-devel >= 2.0.1} BuildRequires: gettext-devel >= 0.10.36 %{?with_selinux:BuildRequires: libselinux-devel >= 1.18} BuildRequires: linux-libc-headers >= %{llh_version} +BuildRequires: nss-devel >= 1:3.12.3 BuildRequires: perl-base BuildRequires: rpm-build >= 4.3-0.20030610.28 BuildRequires: rpm-perlprov @@ -103,8 +93,6 @@ BuildRequires: rpmbuild(macros) >= 1.413 BuildRequires: sed >= 4.0.5 BuildRequires: texinfo Requires(post): ldconfig = %{epoch}:%{version}-%{release} -Requires: %{name}-misc = %{epoch}:%{version}-%{release} -Requires: basesystem Requires: uname(release) >= %{min_kernel} Provides: glibc(nptl) Provides: glibc(tls) @@ -115,7 +103,10 @@ Obsoletes: glibc-debug Provides: glibc64 Obsoletes: glibc64 %endif +Suggests: localedb +Suggests: tzdata Conflicts: SysVinit < 2.86-11 +Conflicts: %{name}-misc < %{epoch}:%{version}-%{release} Conflicts: kernel < %{min_kernel} Conflicts: kernel24 Conflicts: kernel24-smp @@ -129,7 +120,11 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) # avoid -s here (ld.so must not be stripped to allow any program debugging) %define filterout_ld (-Wl,)?-[sS] (-Wl,)?--strip.* -%define specflags_sparc64 -mcpu=ultrasparc -mvis -fcall-used-g6 +# avoid -D_FORTIFY_SOURCE=X +%define filterout_cpp -D_FORTIFY_SOURCE=[0-9]+ + +%define specflags_sparcv9 -mcpu=ultrasparc -mvis -fcall-used-g6 +%define specflags_sparc64 -mcpu=ultrasparc -mvis -fcall-used-g6 # ld.so needs not to be stripped to work # gdb needs unstripped libpthread for some threading support @@ -143,8 +138,8 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) # Xen-friendly glibc %define specflags_ia32 -mno-tls-direct-seg-refs -%define specflags_x86_64 -mno-tls-direct-seg-refs -%define specflags_amd64 -mno-tls-direct-seg-refs +%define specflags_x86_64 -mno-tls-direct-seg-refs -fasynchronous-unwind-tables +%define specflags_amd64 -mno-tls-direct-seg-refs -fasynchronous-unwind-tables %define specflags_ia32e -mno-tls-direct-seg-refs # we don't want perl dependency in glibc-devel @@ -154,6 +149,9 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) # patched not to crash on partial hardlinks too) %define _hack_dontneed_PartialHardlinkSets 1 %define _noautochrpath .*\\(ldconfig\\|sln\\) +# private symbols +%define _noautoprov .*\(GLIBC_PRIVATE\) +%define _noautoreq .*\(GLIBC_PRIVATE\) %description Contains the standard libraries that are used by multiple programs on @@ -268,7 +266,6 @@ Can be used on: Linux kernel >= %{min_kernel}. Summary: Utilities and data used by glibc Summary(pl.UTF-8): Narzędzia i dane używane przez glibc Group: Applications/System -AutoReq: false Requires: %{name} = %{epoch}:%{version}-%{release} %description misc @@ -277,6 +274,19 @@ Utilities and data used by glibc. %description misc -l pl.UTF-8 Narzędzia i dane używane przez glibc. +%package libcrypt +Summary: glibc library for crypt(3) +Summary(pl.UTF-8): Biblioteka glibc z funkcją crypt(3) +Group: Libraries +Requires: %{name} = %{epoch}:%{version}-%{release} +Provides: crypt(blowfish) + +%description libcrypt +glibc library for crypt(3). + +%description libcrypt -l pl.UTF-8 +Biblioteka glibc z funkcją crypt(3). + %package -n ldconfig Summary: Create shared library cache and maintains symlinks Summary(de.UTF-8): Erstellt ein shared library cache und verwaltet symlinks @@ -287,6 +297,8 @@ Group: Applications/System # 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 +# we want FHS being installed before ldconfig, altho they are both unrelated to each-other. +Requires: FHS %description -n ldconfig ldconfig scans a running system and sets up the symbolic links that @@ -396,22 +408,22 @@ Provides: %{name}-headers(%{_target_cpu}) = %{epoch}:%{version}-%{release} %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: %{name}-headers(i386) -Obsoletes: %{name}-headers(i486) -Obsoletes: %{name}-headers(i586) -Obsoletes: %{name}-headers(i686) -Obsoletes: %{name}-headers(athlon) -Obsoletes: %{name}-headers(pentium3) -Obsoletes: %{name}-headers(pentium4) +Obsoletes: glibc-headers(athlon) +Obsoletes: glibc-headers(i386) +Obsoletes: glibc-headers(i486) +Obsoletes: glibc-headers(i586) +Obsoletes: glibc-headers(i686) +Obsoletes: glibc-headers(pentium3) +Obsoletes: glibc-headers(pentium4) %endif %ifarch ppc64 -Obsoletes: %{name}-headers(ppc) +Obsoletes: glibc-headers(ppc) %endif %ifarch s390x -Obsoletes: %{name}-headers(s390) +Obsoletes: glibc-headers(s390) %endif %ifarch sparc64 -Obsoletes: %{name}-headers(sparc) +Obsoletes: glibc-headers(sparc) %endif Requires: linux-libc-headers >= %{llh_version} @@ -444,22 +456,22 @@ Provides: %{name}-devel-utils(%{_target_cpu}) = %{epoch}:%{version}-%{release} %ifarch %{x8664} # If both -m32 and -m64 is to be supported on AMD64, x86_64 package # have to be installed, not ix86 one. -Obsoletes: %{name}-devel-utils(i386) -Obsoletes: %{name}-devel-utils(i486) -Obsoletes: %{name}-devel-utils(i586) -Obsoletes: %{name}-devel-utils(i686) -Obsoletes: %{name}-devel-utils(athlon) -Obsoletes: %{name}-devel-utils(pentium3) -Obsoletes: %{name}-devel-utils(pentium4) +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(pentium3) +Obsoletes: glibc-devel-utils(pentium4) %endif %ifarch ppc64 -Obsoletes: %{name}-devel-utils(ppc) +Obsoletes: glibc-devel-utils(ppc) %endif %ifarch s390x -Obsoletes: %{name}-devel-utils(s390) +Obsoletes: glibc-devel-utils(s390) %endif %ifarch sparc64 -Obsoletes: %{name}-devel-utils(sparc) +Obsoletes: glibc-devel-utils(sparc) %endif %description devel-utils @@ -490,22 +502,22 @@ Provides: %{name}-devel-doc(%{_target_cpu}) = %{epoch}:%{version}-%{release} %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: %{name}-devel-doc(i386) -Obsoletes: %{name}-devel-doc(i486) -Obsoletes: %{name}-devel-doc(i586) -Obsoletes: %{name}-devel-doc(i686) -Obsoletes: %{name}-devel-doc(athlon) -Obsoletes: %{name}-devel-doc(pentium3) -Obsoletes: %{name}-devel-doc(pentium4) +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(pentium3) +Obsoletes: glibc-devel-doc(pentium4) %endif %ifarch ppc64 -Obsoletes: %{name}-devel-doc(ppc) +Obsoletes: glibc-devel-doc(ppc) %endif %ifarch s390x -Obsoletes: %{name}-devel-doc(s390) +Obsoletes: glibc-devel-doc(s390) %endif %ifarch sparc64 -Obsoletes: %{name}-devel-doc(sparc) +Obsoletes: glibc-devel-doc(sparc) %endif %description devel-doc @@ -581,6 +593,7 @@ Group: Libraries Requires: %{name} = %{epoch}:%{version}-%{release} Requires: gzip Requires: sed +Provides: localedb %description -n localedb-src This add-on package contains the data needed to build the locale data @@ -603,6 +616,7 @@ Summary(pl.UTF-8): Baza danych locale dla wszystkich lokalizacji obsługiwanych Group: Libraries Requires: %{name} = %{epoch}:%{version}-%{release} Requires: iconv = %{epoch}:%{version}-%{release} +Provides: localedb %description localedb-all This package contains locale database for all locales supported by @@ -633,6 +647,7 @@ Summary(es.UTF-8): Convierte entre varias codificaciones de los ficheros dados Summary(pl.UTF-8): Moduły do konwersji plików tekstowych z jednego kodowania do innego Group: Libraries Requires: %{name} = %{epoch}:%{version}-%{release} +Provides: iconv(%{_target_base_arch}) %description -n iconv Convert encoding of given files from one encoding to another. You need @@ -871,12 +886,10 @@ Un juguete. Zabawka. %prep -%setup -q -a1 -ln -s glibc-libidn-%{version} libidn -%patch1 -p1 +%setup -q +#%patch1 -p1 %patch2 -p1 %patch3 -p1 -%patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 @@ -884,35 +897,27 @@ ln -s glibc-libidn-%{version} libidn %patch9 -p1 %patch10 -p1 %patch11 -p1 -%patch13 -p0 %patch14 -p0 %patch15 -p1 +%patch16 -p1 %patch17 -p1 %patch18 -p1 +%patch19 -p1 %patch20 -p1 -%patch21 -p1 +%{?with_cross:%patch21 -p1} %patch22 -p1 -%patch23 -p1 -%{?with_cross:%patch25 -p1} +%patch23 -p0 +%patch25 -p1 %patch26 -p1 -%{?with_pax:%patch30 -p0} -%{?with_pax:%patch31 -p0} -%patch32 -p1 -%patch33 -p1 -# these would be copied to localedb-src -rm -f localedata/locales/*{.orig,~} +# cleanup backups after patching +find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f chmod +x scripts/cpp # i786 (aka pentium4) hack -cd nptl/sysdeps/i386 && ln -s i686 i786 && cd - -cd nptl/sysdeps/unix/sysv/linux/i386 && ln -s i686 i786 && cd - - -# A lot of programs still misuse memcpy when they have to use -# memmove. The memcpy implementation below is not tolerant at -# all. -rm -f sysdeps/alpha/alphaev6/memcpy.S +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. @@ -936,19 +941,22 @@ AWK="gawk" \ --with%{!?with_selinux:out}-selinux \ --with-tls \ --enable-add-ons=nptl,libidn \ +%if "%{pld_release}" != "ti" + --enable-nss-crypt \ +%endif --enable-stackguard-randomization \ --enable-hidden-plt \ --enable-bind-now \ --enable-profile %{__make} \ - sLIBdir=%{_libdir} + AWK="gawk" \ + sLIBdir=%{_libdir} cd .. %if %{with tests} -for d in builddir; do -cd $d +cd builddir env LANGUAGE=C LC_ALL=C \ %{__make} tests 2>&1 | awk ' BEGIN { file = "" } @@ -972,7 +980,7 @@ diet ${CC#*ccache } %{SOURCE7} %{rpmcflags} -Os -static -o glibc-postinst %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{/etc/{logrotate.d,rc.d/init.d,sysconfig},%{_mandir}/man{3,8},/var/log,/var/{lib,run}/nscd} +install -d $RPM_BUILD_ROOT{/etc/{default,logrotate.d,rc.d/init.d,sysconfig},%{_mandir}/man{3,8},/var/log,/var/{lib,run}/nscd} cd builddir env LANGUAGE=C LC_ALL=C \ @@ -991,13 +999,16 @@ PICFILES="libc_pic.a libc.map math/libm_pic.a libm.map resolv/libresolv_pic.a" -install $PICFILES $RPM_BUILD_ROOT%{_libdir} -install elf/soinit.os $RPM_BUILD_ROOT%{_libdir}/soinit.o -install elf/sofini.os $RPM_BUILD_ROOT%{_libdir}/sofini.o +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 +./iconv/iconvconfig --nostdlib --prefix=$RPM_BUILD_ROOT %{_libdir}/gconv -o $RPM_BUILD_ROOT%{_libdir}/gconv/gconv-modules.cache cd .. %if %{without cross} -install glibc-postinst $RPM_BUILD_ROOT/sbin +install -p glibc-postinst $RPM_BUILD_ROOT/sbin %endif %{?with_memusage:mv -f $RPM_BUILD_ROOT/%{_lib}/libmemusage.so $RPM_BUILD_ROOT%{_libdir}} @@ -1010,7 +1021,7 @@ rm -rf $RPM_BUILD_ROOT%{_datadir}/zoneinfo ln -sf libbsd-compat.a $RPM_BUILD_ROOT%{_libdir}/libbsd.a # make symlinks across top-level directories absolute -for l in BrokenLocale anl cidn crypt dl m nsl resolv rt thread_db util ; do +for l in BrokenLocale anl cidn crypt dl m nsl resolv rt thread_db util; do test -L $RPM_BUILD_ROOT%{_libdir}/lib${l}.so || exit 1 rm -f $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 @@ -1019,12 +1030,13 @@ done # linking nss modules directly is not supported rm -f $RPM_BUILD_ROOT%{_libdir}/libnss_*.so -install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd -install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/nscd -install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/nscd -install nscd/nscd.conf $RPM_BUILD_ROOT%{_sysconfdir} +install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd +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 -install posix/gai.conf $RPM_BUILD_ROOT%{_sysconfdir} bzip2 -dc %{SOURCE5} | tar xf - -C $RPM_BUILD_ROOT%{_mandir} > $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.cache @@ -1032,6 +1044,12 @@ install -d $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d echo 'include ld.so.conf.d/*.conf' > $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf rm -f $RPM_BUILD_ROOT%{_mandir}/hu/man7/man.7 +# doesn't fit with out tzdata concept and configure.in is stupid assuming bash +# is first posix compatible shell making this script depend on bash. +rm -f $RPM_BUILD_ROOT%{_bindir}/tzselect +rm -f $RPM_BUILD_ROOT%{_mandir}/man8/tzselect.8* +rm -f $RPM_BUILD_ROOT%{_mandir}/*/man8/tzselect.8* + :> $RPM_BUILD_ROOT/var/log/nscd :> $RPM_BUILD_ROOT/var/lib/nscd/passwd :> $RPM_BUILD_ROOT/var/lib/nscd/group @@ -1041,14 +1059,13 @@ rm -rf documentation install -d documentation for f in ANNOUNCE ChangeLog DESIGN-{barrier,condvar,rwlock,sem}.txt TODO{,-kernel,-testing}; do - cp -f nptl/$f documentation/$f.nptl + cp -af nptl/$f documentation/$f.nptl done -cp -f crypt/README.ufc-crypt ChangeLog* documentation +cp -af crypt/README.ufc-crypt ChangeLog* documentation # 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/* ; do +for i in $RPM_BUILD_ROOT%{_datadir}/locale/*; do if [ -d $i ]; then lang=$(basename $i) dir="${i#$RPM_BUILD_ROOT}" @@ -1059,17 +1076,27 @@ done # NOTES: # Languages not supported by glibc locales, but usable via $LANGUAGE: # ang - Old English (gtk+, gnome) +# ca@valencia (gtk+, gnome; as ca_ES@valencia in FileZilla; locale exists in Debian) # tlh - Klingon (bzflag) # and variants: # sr@ije (use LANGUAGE=sr_ME@ije/sr_RS@ije) (gnome) # # To be added when they become supported by glibc: # az_IR (gtk+) -# ca_ES@valencia (FileZilla; locale exists in Debian) # co (vlc) -# dv, haw, kok, ps, syr (iso-codes) +# dv (iso-codes) # gn (gn_BR in gnome, maybe gn_PY) +# la (deluge, gnome, others; patch needed, won't be officially supported) # my (gaim) +# bal (newt) +# haw (iso-codes) +# ilo (kudzu) +# kok (iso-codes) +# man (ccsm; incorrectly named md) +# mus (bluez-gnome) +# sco (gnomad2) +# syr (iso-codes) +# ven (kalarm) # # bn is used for bn_BD or bn_IN? Assume bn_IN as nothing for bn_BD appeared # till now. @@ -1078,25 +1105,27 @@ 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 as ast az be@alternative be@latin bg bn \ - bn_IN br bs byn csb cy de_AT dz en en@boldquot en@quot en_AU en_CA en_US \ - eo es_AR es_CO es_MX es_NI es_PR et eu fa fil fo fr_BE fr_CA fur fy ga gd gez \ - gu gv he hi hsb hy ia id ik is it_CH iu ka kk kl km kn ku kw ky lg li lo \ - lt lv mai mg mi mk ml mn mr ms mt nds ne nl_BE nn nr nso oc om or pa pap \ - pt rm ro sa sc se si sid sl so sq sr sr@Latn sr@ije sr@latin ss st sw ta \ - te tg th ti tig tk tl tlh tn ts tt ug uk ur uz uz@cyrillic ve vi wa wal \ - wo xh yi yo zh_HK zu ; do +for i in aa aa@saaho af am an ang ar ar_TN as ast az be@alternative be@latin \ + bg bn bn_IN br bs byn ca@valencia crh csb cy de_AT de_CH dz en \ + en@boldquot en@quot 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 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 kk kl km kn ks ku kw ky lg li \ + lo lt lv mai mg mi mk ml mn mr ms mt nds ne nl_BE nn nr nso oc om or \ + pa pap ps pt rm ro sa sc se si sid sl so sq sr sr@Latn sr@ije sr@latin \ + ss st sw ta te tg th ti tig tk tl tlh tn ts tt ug uk ur uz uz@cyrillic \ + ve vi wa wal wo xh yi yo zh_HK zu; do if [ ! -d $RPM_BUILD_ROOT%{_datadir}/locale/$i/LC_MESSAGES ]; then install -d $RPM_BUILD_ROOT%{_datadir}/locale/$i/LC_MESSAGES # use lang() tags with ll_CC@variant (stripping charset and @quot|@boldquot) - lang=`echo $i | sed -e 's/@quot\>\|@boldquot\>//'` + lang=$(echo $i | sed -e 's/@quot\>\|@boldquot\>//') echo "%lang($lang) %{_datadir}/locale/$i" >> glibc.lang fi done # LC_TIME category, used for localized date formats (at least by coreutils) -for i in af be bg ca cs da de el es et eu fi fr ga gl hu it ja ko ms nb nl pl \ - pt pt_BR ru rw sk sl sv tr zh_CN zh_TW ; do +for i in af be bg ca cs da de el en es et eu fi fr ga gl hu id it ja ko lt ms nb nl pl \ + pt pt_BR ru rw sk sl sv tr uk vi zh_CN zh_TW; do if [ ! -d $RPM_BUILD_ROOT%{_datadir}/locale/$i ]; then echo "%lang($lang) %{_datadir}/locale/$i" >> glibc.lang fi @@ -1122,9 +1151,6 @@ rm -f $RPM_BUILD_ROOT%{_sbindir}/rpcinfo %clean rm -rf $RPM_BUILD_ROOT -# don't run iconvconfig in %%postun -n iconv because iconvconfig doesn't exist -# when %%postun is run - %if %{without cross} %post -p /sbin/postshell /sbin/glibc-postinst /%{_lib}/%{_host_cpu} /%{_lib}/tls @@ -1137,28 +1163,33 @@ rm -rf $RPM_BUILD_ROOT -/bin/sed -i -e '1iinclude ld.so.conf.d/*.conf' /etc/ld.so.conf %endif +%post libcrypt -p /sbin/ldconfig +%postun libcrypt -p /sbin/ldconfig + %post memusage -p /sbin/ldconfig %postun memusage -p /sbin/ldconfig -%post -n iconv -p %{_sbindir}/iconvconfig +%post -n localedb-src -p /usr/bin/localedb-gen -%post devel -[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1 +%post devel -p /sbin/postshell +-/usr/sbin/fix-info-dir -c %{_infodir} -%postun devel -[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1 +%postun devel -p /sbin/postshell +-/usr/sbin/fix-info-dir -c %{_infodir} %pre -n nscd %groupadd -P nscd -g 144 -r nscd -%useradd -P nscd -u 144 -r -d /tmp -s /bin/false -c "nscd" -g nscd nscd +%useradd -P nscd -u 144 -r -d /tmp -s /bin/false -c "Name Service Cache Daemon" -g nscd nscd %post -n nscd +if [ ! -f /var/log/nscd ]; then + umask 027 + touch /var/log/nscd + chown root:root /var/log/nscd + chmod 640 /var/log/nscd +fi /sbin/chkconfig --add nscd -touch /var/log/nscd -chmod 000 /var/log/nscd -chown root:root /var/log/nscd -chmod 640 /var/log/nscd -%service nscd restart "nscd daemon" +%service nscd restart "Name Service Cache Daemon" %preun -n nscd if [ "$1" = "0" ]; then @@ -1172,16 +1203,16 @@ if [ "$1" = "0" ]; then %groupremove nscd fi -%files +%files -f %{name}.lang %defattr(644,root,root,755) %doc README NEWS FAQ BUGS -%if !%{with cross} +%if %{without cross} %attr(755,root,root) /sbin/glibc-postinst %endif # TODO: package ldconfig symlinks as %ghost %attr(755,root,root) /%{_lib}/ld-%{version}.so # wildly arch-dependent ld.so SONAME symlink -%ifarch %{ix86} sparc sparcv9 sparc64 alpha sh +%ifarch %{ix86} sparc sparcv9 sparc64 alpha sh %attr(755,root,root) /%{_lib}/ld-linux.so.2 %endif %ifarch ia64 @@ -1213,12 +1244,6 @@ fi %endif %attr(755,root,root) /%{_lib}/libcidn-%{version}.so %attr(755,root,root) /%{_lib}/libcidn.so.1 -%attr(755,root,root) /%{_lib}/libcrypt-%{version}.so -%ifarch alpha -%attr(755,root,root) /%{_lib}/libcrypt.so.1.1 -%else -%attr(755,root,root) /%{_lib}/libcrypt.so.1 -%endif %attr(755,root,root) /%{_lib}/libdl-%{version}.so %ifarch alpha %attr(755,root,root) /%{_lib}/libdl.so.2.1 @@ -1267,41 +1292,23 @@ fi %attr(755,root,root) /%{_lib}/libnss_files-%{version}.so %attr(755,root,root) /%{_lib}/libnss_files.so.2 -%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 -%attr(755,root,root) /sbin/ldconfig -%{_mandir}/man8/ldconfig.8* -%lang(es) %{_mandir}/es/man8/ldconfig.8* -%lang(fr) %{_mandir}/fr/man8/ldconfig.8* -%lang(hu) %{_mandir}/hu/man8/ldconfig.8* -%lang(ja) %{_mandir}/ja/man8/ldconfig.8* -%lang(pl) %{_mandir}/pl/man8/ldconfig.8* -%lang(pt) %{_mandir}/pt/man8/ldconfig.8* -%lang(ru) %{_mandir}/ru/man8/ldconfig.8* - -%files misc -f %{name}.lang %defattr(644,root,root,755) %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 %attr(755,root,root) /sbin/sln -%attr(755,root,root) %{_bindir}/catchsegv %attr(755,root,root) %{_bindir}/getconf %attr(755,root,root) %{_bindir}/getent %attr(755,root,root) %{_bindir}/iconv -%attr(755,root,root) %{_bindir}/ldd %ifarch %{ix86} m68k sparc sparcv9 %attr(755,root,root) %{_bindir}/lddlibc4 %endif %attr(755,root,root) %{_bindir}/locale %attr(755,root,root) %{_bindir}/rpcgen -%attr(755,root,root) %{_bindir}/tzselect %attr(755,root,root) %{_sbindir}/zdump %attr(755,root,root) %{_sbindir}/zic @@ -1312,11 +1319,9 @@ fi %dir %{_datadir}/locale %{_datadir}/locale/locale.alias -%{_mandir}/man1/catchsegv.1* %{_mandir}/man1/getconf.1* %{_mandir}/man1/getent.1* %{_mandir}/man1/iconv.1* -%{_mandir}/man1/ldd.1* %{_mandir}/man1/locale.1* %{_mandir}/man1/rpcgen.1* %{_mandir}/man5/locale.5* @@ -1327,13 +1332,11 @@ fi %{_mandir}/man8/ld-linux.so.8* %{_mandir}/man8/ld.so.8* %{_mandir}/man8/sln.8* -%{_mandir}/man8/tzselect.8* %{_mandir}/man8/zdump.8* %{_mandir}/man8/zic.8* %lang(cs) %{_mandir}/cs/man7/* %lang(de) %{_mandir}/de/man5/tzfile.5* %lang(de) %{_mandir}/de/man7/* -%lang(es) %{_mandir}/es/man1/ldd.1* %lang(es) %{_mandir}/es/man5/locale.5* %lang(es) %{_mandir}/es/man5/nsswitch.conf.5* %lang(es) %{_mandir}/es/man5/tzfile.5* @@ -1341,11 +1344,8 @@ fi %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/tzselect.8* %lang(es) %{_mandir}/es/man8/zdump.8* %lang(es) %{_mandir}/es/man8/zic.8* -%lang(fi) %{_mandir}/fi/man1/ldd.1* -%lang(fr) %{_mandir}/fr/man1/ldd.1* %lang(fr) %{_mandir}/fr/man5/locale.5* %lang(fr) %{_mandir}/fr/man5/nsswitch.conf.5* %lang(fr) %{_mandir}/fr/man5/tzfile.5* @@ -1353,10 +1353,8 @@ fi %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/tzselect.8* %lang(fr) %{_mandir}/fr/man8/zdump.8* %lang(fr) %{_mandir}/fr/man8/zic.8* -%lang(hu) %{_mandir}/hu/man1/ldd.1* %lang(hu) %{_mandir}/hu/man7/* %lang(hu) %{_mandir}/hu/man8/ld-linux.8* %lang(hu) %{_mandir}/hu/man8/ld-linux.so.8* @@ -1364,9 +1362,7 @@ fi %lang(hu) %{_mandir}/hu/man8/zdump.8* %lang(it) %{_mandir}/it/man5/locale.5* %lang(it) %{_mandir}/it/man7/* -%lang(it) %{_mandir}/it/man8/tzselect.8* %lang(it) %{_mandir}/it/man8/zdump.8* -%lang(ja) %{_mandir}/ja/man1/ldd.1* %lang(ja) %{_mandir}/ja/man1/rpcgen.1* %lang(ja) %{_mandir}/ja/man5/locale.5* %lang(ja) %{_mandir}/ja/man5/nsswitch.conf.5* @@ -1376,16 +1372,12 @@ fi %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/tzselect.8* %lang(ja) %{_mandir}/ja/man8/zdump.8* %lang(ja) %{_mandir}/ja/man8/zic.8* -%lang(ko) %{_mandir}/ko/man1/ldd.1* %lang(ko) %{_mandir}/ko/man5/nsswitch.conf.5* %lang(ko) %{_mandir}/ko/man5/tzfile.5* %lang(ko) %{_mandir}/ko/man7/* -%lang(ko) %{_mandir}/ko/man8/tzselect.8* %lang(ko) %{_mandir}/ko/man8/zdump.8* -%lang(pl) %{_mandir}/pl/man1/ldd.1* %lang(pl) %{_mandir}/pl/man5/locale.5* %lang(pl) %{_mandir}/pl/man7/* %lang(pl) %{_mandir}/pl/man8/ld-linux.8* @@ -1395,12 +1387,10 @@ fi %lang(pt) %{_mandir}/pt/man5/nsswitch.conf.5* %lang(pt) %{_mandir}/pt/man5/tzfile.5* %lang(pt) %{_mandir}/pt/man7/* -%lang(pt) %{_mandir}/pt/man8/tzselect.8* %lang(pt) %{_mandir}/pt/man8/zdump.8* %lang(pt) %{_mandir}/pt/man8/zic.8* %lang(ru) %{_mandir}/ru/man1/getent.1* %lang(ru) %{_mandir}/ru/man1/iconv.1* -%lang(ru) %{_mandir}/ru/man1/ldd.1* %lang(ru) %{_mandir}/ru/man1/locale.1* %lang(ru) %{_mandir}/ru/man1/rpcgen.1* %lang(ru) %{_mandir}/ru/man5/locale.5* @@ -1409,20 +1399,57 @@ fi %lang(ru) %{_mandir}/ru/man7/* %lang(ru) %{_mandir}/ru/man8/ld-linux.so.8* %lang(ru) %{_mandir}/ru/man8/ld.so.8* -%lang(ru) %{_mandir}/ru/man8/tzselect.8* %lang(ru) %{_mandir}/ru/man8/zdump.8* %lang(ru) %{_mandir}/ru/man8/zic.8* %lang(tr) %{_mandir}/tr/man1/iconv.1* -%lang(tr) %{_mandir}/tr/man1/ldd.1* %lang(zh_CN) %{_mandir}/zh_CN/man1/iconv.1* -%lang(zh_CN) %{_mandir}/zh_CN/man1/ldd.1* %lang(zh_CN) %{_mandir}/zh_CN/man5/locale.5* %lang(zh_CN) %{_mandir}/zh_CN/man5/tzfile.5* %lang(zh_CN) %{_mandir}/zh_CN/man7/* -%lang(zh_CN) %{_mandir}/zh_CN/man8/tzselect.8* %lang(zh_CN) %{_mandir}/zh_CN/man8/zdump.8* %lang(zh_CN) %{_mandir}/zh_CN/man8/zic.8* +%files misc +%defattr(644,root,root,755) +%attr(755,root,root) %{_bindir}/catchsegv +%attr(755,root,root) %{_bindir}/ldd +%{_mandir}/man1/catchsegv.1* +%{_mandir}/man1/ldd.1* +%lang(es) %{_mandir}/es/man1/ldd.1* +%lang(fi) %{_mandir}/fi/man1/ldd.1* +%lang(fr) %{_mandir}/fr/man1/ldd.1* +%lang(hu) %{_mandir}/hu/man1/ldd.1* +%lang(ja) %{_mandir}/ja/man1/ldd.1* +%lang(ko) %{_mandir}/ko/man1/ldd.1* +%lang(pl) %{_mandir}/pl/man1/ldd.1* +%lang(ru) %{_mandir}/ru/man1/ldd.1* +%lang(tr) %{_mandir}/tr/man1/ldd.1* +%lang(zh_CN) %{_mandir}/zh_CN/man1/ldd.1* + +%files libcrypt +%defattr(644,root,root,755) +%attr(755,root,root) /%{_lib}/libcrypt-%{version}.so +%ifarch alpha +%ghost %attr(755,root,root) /%{_lib}/libcrypt.so.1.1 +%else +%ghost %attr(755,root,root) /%{_lib}/libcrypt.so.1 +%endif + +%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 +%attr(755,root,root) /sbin/ldconfig +%{_mandir}/man8/ldconfig.8* +%lang(es) %{_mandir}/es/man8/ldconfig.8* +%lang(fr) %{_mandir}/fr/man8/ldconfig.8* +%lang(hu) %{_mandir}/hu/man8/ldconfig.8* +%lang(ja) %{_mandir}/ja/man8/ldconfig.8* +%lang(pl) %{_mandir}/pl/man8/ldconfig.8* +%lang(pt) %{_mandir}/pt/man8/ldconfig.8* +%lang(ru) %{_mandir}/ru/man8/ldconfig.8* + %files -n nss_compat %defattr(644,root,root,755) %attr(755,root,root) /%{_lib}/libnss_compat-%{version}.so @@ -1464,8 +1491,8 @@ fi %attr(755,root,root) %{_libdir}/librt.so %attr(755,root,root) %{_libdir}/libthread_db.so %attr(755,root,root) %{_libdir}/libutil.so -%attr(755,root,root) %{_libdir}/crt[1in].o -%attr(755,root,root) %{_libdir}/[MSg]crt1.o +%{_libdir}/crt[1in].o +%{_libdir}/[MSg]crt1.o # ld scripts %{_libdir}/libc.so %{_libdir}/libpthread.so @@ -1501,6 +1528,7 @@ fi %{_includedir}/netatalk %{_includedir}/netax25 %{_includedir}/neteconet +%{_includedir}/netiucv %{_includedir}/netinet %{_includedir}/netipx %{_includedir}/netpacket @@ -1590,6 +1618,7 @@ fi %attr(755,root,root) %{_sbindir}/iconvconfig %dir %{_libdir}/gconv %{_libdir}/gconv/gconv-modules +%verify(not md5 mtime size) %{_libdir}/gconv/gconv-modules.cache %attr(755,root,root) %{_libdir}/gconv/*.so %files static