]> git.pld-linux.org Git - packages/glibc.git/blobdiff - glibc.spec
- rel 3; add en/LC_TIME
[packages/glibc.git] / glibc.spec
index 129b1a793b13304e228f7860ab79fb8a7c5e7739..ebc1297d036ad881bb1fb515f2aab164d29819c1 100644 (file)
@@ -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
This page took 0.060298 seconds and 4 git commands to generate.