Browse Source

glibc: updated to 2.14.1

git-svn-id: http://trac.vinelinux.org/repos/projects/specs@5290 ec354946-7b23-47d6-9f5a-488ba84defc7
kenta 13 years ago
parent
commit
978fce75fa
1 changed files with 237 additions and 157 deletions
  1. 237 157
      g/glibc/glibc-vl.spec

+ 237 - 157
g/glibc/glibc-vl.spec

@@ -1,9 +1,13 @@
-%define glibcsrcdir glibc-2.11.1
-%define glibc_release_url ftp://sources.redhat.com/pub/glibc/releases/
-%define glibcversion 2.11.1
+%define glibcversion 2.14.1
+%define glibcsrcdir glibc-%{glibcversion}
+%define glibcportsdir glibc-ports-%{glibcversion}
+%define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}
 ### glibc.spec.in follows:
 ### glibc.spec.in follows:
 %define run_glibc_tests 1
 %define run_glibc_tests 1
 %define auxarches athlon sparcv9v sparc64v alphaev6
 %define auxarches athlon sparcv9v sparc64v alphaev6
+%if %{build_compat32}
+%define auxarches i586 athlon sparcv9 alphaev6
+%endif
 %define xenarches i686 athlon
 %define xenarches i686 athlon
 %ifarch %{xenarches}
 %ifarch %{xenarches}
 %define buildxen 1
 %define buildxen 1
@@ -12,30 +16,23 @@
 %define buildxen 0
 %define buildxen 0
 %define xenpackage 0
 %define xenpackage 0
 %endif
 %endif
-%ifarch ppc ppc64
-##VINE##%define buildpower6 1
-%define buildpower6 0
+%ifarch ppc64
+%define buildpower6 1
 %else
 %else
 %define buildpower6 0
 %define buildpower6 0
 %endif
 %endif
 %define rtkaioarches %{ix86} x86_64 ia64 ppc ppc64 s390 s390x
 %define rtkaioarches %{ix86} x86_64 ia64 ppc ppc64 s390 s390x
-%define debuginfocommonarches alpha alphaev6 sparc sparcv9 sparcv9v sparc64 sparc64v
-%if 0%{?rhel} >= 6
-%define multiarcharches ppc pp64 %{ix86} x86_64
-%else
-%define multiarcharches %{ix86} x86_64
-%endif
-%define _unpackaged_files_terminate_build 0
-%define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}
-%if %{build_compat32}
-%define auxarches i586 athlon sparcv9 alphaev6
-%endif
+%define biarcharches %{ix86} x86_64 ppc ppc64 s390 s390x
+%define debuginfocommonarches %{biarcharches} alpha alphaev6
+%define multiarcharches ppc ppc64 %{ix86} x86_64 %{sparc}
+# Remove -s to get verbose output.
+%define silentrules PARALLELMFLAGS=-s
 
 
 Summary: The GNU libc libraries
 Summary: The GNU libc libraries
 Summary(ja): GNU libc ライブラリ
 Summary(ja): GNU libc ライブラリ
 Name: glibc
 Name: glibc
 Version: %{glibcversion}
 Version: %{glibcversion}
-Release: 9%{?_dist_release}
+Release: 1%{?_dist_release}
 # GPLv2+ is used in a bunch of programs, LGPLv2+ is used for libraries.
 # GPLv2+ is used in a bunch of programs, LGPLv2+ is used for libraries.
 # Things that are linked directly into dynamically linked programs
 # Things that are linked directly into dynamically linked programs
 # and shared libraries (e.g. crt files, lib*_nonshared.a) have an additional
 # and shared libraries (e.g. crt files, lib*_nonshared.a) have an additional
@@ -43,20 +40,19 @@ Release: 9%{?_dist_release}
 # libraries without restrictions.
 # libraries without restrictions.
 License: LGPLv2+ and LGPLv2+ with exceptions and GPLv2+
 License: LGPLv2+ and LGPLv2+ with exceptions and GPLv2+
 Group: System Environment/Libraries
 Group: System Environment/Libraries
-URL: http://sources.redhat.com/glibc/
-Source0: %{?glibc_release_url}%{glibcsrcdir}.tar.bz2
-Source1: %{glibcsrcdir}-fedora.tar.bz2
+URL: http://www.gnu.org/software/glibc/
+Source0: %{?glibc_release_url}%{glibcsrcdir}.tar.xz
+Source1: %{?glibc_release_url}%{glibcportsdir}.tar.xz
+Source2: %{glibcsrcdir}-fedora.tar.xz
 Source10: find_provides_glibc.sh
 Source10: find_provides_glibc.sh
 Source11: find_requires_glibc.sh
 Source11: find_requires_glibc.sh
 Patch0: %{name}-fedora.patch
 Patch0: %{name}-fedora.patch
-Patch1: %{name}-ia64-lib64.patch
-# updates or security fix
-Patch100: glibc-rh643822.patch
-Patch101: glibc-rh667974.patch 
-Patch102: glibc-rh625893.patch 
-Patch103: glibc-rh681054.patch 
-Patch104: glibc-rh645672.patch 
-
+Patch1: %{name}-%{version}-locarchive.patch
+Patch2: %{name}-%{version}-sysdep-ASFLAGS.patch
+Patch3: %{name}-%{version}-locales-dir.patch
+# Patch4: %{name}-no-leaf-attribute.patch
+# Patch5: %{name}-arenalock.patch
+# Patch6: %{name}-rh757881.patch
 Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 Obsoletes: glibc-profile < 2.4
 Obsoletes: glibc-profile < 2.4
 Provides: ldconfig
 Provides: ldconfig
@@ -73,6 +69,8 @@ BuildRequires: /bin/ps, /bin/kill, /bin/awk
 # This is to ensure that __frame_state_for is exported by glibc
 # This is to ensure that __frame_state_for is exported by glibc
 # will be compatible with egcs 1.x.y
 # will be compatible with egcs 1.x.y
 BuildRequires: gcc >= 3.2
 BuildRequires: gcc >= 3.2
+%define enablekernel 2.6.32
+Conflicts: kernel < %{enablekernel}
 %define enablekernel 2.6.18
 %define enablekernel 2.6.18
 %ifarch i386
 %ifarch i386
 %define nptl_target_cpu i486
 %define nptl_target_cpu i486
@@ -131,7 +129,7 @@ glibc パッケージはシステム上の複数のプログラムで使われ
 Summary: The GNU libc libraries.
 Summary: The GNU libc libraries.
 Summary(ja): GNU libc ライブラリ
 Summary(ja): GNU libc ライブラリ
 Group: System Environment/Libraries
 Group: System Environment/Libraries
-Requires: %{name} >= %{version}
+Requires: %{name} >= %{version}-%{release}
 
 
 %description -n compat32-%{name}
 %description -n compat32-%{name}
 The glibc package contains standard libraries which are used by
 The glibc package contains standard libraries which are used by
@@ -197,7 +195,7 @@ glibc-devel パッケージには (ほとんどすべてのプログラムで使
 Summary: Object files for development using standard C libraries.
 Summary: Object files for development using standard C libraries.
 Summary(ja): 標準 C ライブラリで使われるオブジェクトファイル
 Summary(ja): 標準 C ライブラリで使われるオブジェクトファイル
 Group: Development/Libraries
 Group: Development/Libraries
-Requires: %{name}-devel >= %{version}
+Requires: %{name}-devel = %{version}-%{release}
 Requires: compat32-%{name} = %{version}-%{release}
 Requires: compat32-%{name} = %{version}-%{release}
 
 
 %description -n compat32-%{name}-devel
 %description -n compat32-%{name}-devel
@@ -282,7 +280,7 @@ executables.
 Install glibc-headers if you are going to develop programs which will
 Install glibc-headers if you are going to develop programs which will
 use the standard C libraries.
 use the standard C libraries.
 
 
-%description devel -l ja
+%description headers -l ja
 glibc-headers パッケージには (ほとんどすべてのプログラムで使われる)
 glibc-headers パッケージには (ほとんどすべてのプログラムで使われる)
 標準 C ライブラリを使用したプログラムを開発するためのヘッダーファイルが
 標準 C ライブラリを使用したプログラムを開発するためのヘッダーファイルが
 含まれます。標準 C ライブラリを使用するプログラムを開発する場合には、
 含まれます。標準 C ライブラリを使用するプログラムを開発する場合には、
@@ -327,6 +325,7 @@ glibc-common-extra パッケージには GNU libc ライブラリ用の英語と
 Summary: A Name Service Caching Daemon (nscd).
 Summary: A Name Service Caching Daemon (nscd).
 Summary(ja): ネームサービスキャッシングデーモン (nscd)
 Summary(ja): ネームサービスキャッシングデーモン (nscd)
 Group: System Environment/Daemons
 Group: System Environment/Daemons
+Requires: %{name} = %{version}-%{release}
 Requires: audit-libs >= 1.1.3
 Requires: audit-libs >= 1.1.3
 Requires(pre): /sbin/chkconfig, /usr/sbin/useradd, /usr/sbin/userdel, sh-utils
 Requires(pre): /sbin/chkconfig, /usr/sbin/useradd, /usr/sbin/userdel, sh-utils
 
 
@@ -403,19 +402,13 @@ package or when debugging this package.
 %endif
 %endif
 
 
 %prep
 %prep
-%setup -q -n %{glibcsrcdir} -b1
-%patch0 -E -p1
-%ifarch ia64
-%if "%{_lib}" == "lib64"
+rm -rf %{glibcportsdir}
+%setup -q -n %{glibcsrcdir} -b1 -b2
+# %patch0 -E -p1
 %patch1 -p1
 %patch1 -p1
-%endif
-%endif
-
-%patch100 -p1 -b .CVE-2011-0536-1
-%patch101 -p1 -b .CVE-2011-0536-2
-%patch102 -p1 -b .CVE-2011-1095
-%patch103 -p1 -b .CVE-2011-1071
-%patch104 -p1 -b .CVE-2010-3856
+%patch2 -p1
+%patch3 -p1
+# %patch4 -p1
 
 
 # A lot of programs still misuse memcpy when they have to use
 # A lot of programs still misuse memcpy when they have to use
 # memmove. The memcpy implementation below is not tolerant at
 # memmove. The memcpy implementation below is not tolerant at
@@ -503,16 +496,20 @@ shift
 rm -rf $builddir
 rm -rf $builddir
 mkdir $builddir ; cd $builddir
 mkdir $builddir ; cd $builddir
 build_CFLAGS="$BuildFlags -g -O3 $*"
 build_CFLAGS="$BuildFlags -g -O3 $*"
-../configure CC="$GCC" CXX="$GXX" CFLAGS="$build_CFLAGS" \
+# Some configure checks can spuriously fail for some architectures if
+# unwind info is present
+configure_CFLAGS="$build_CFLAGS -fno-asynchronous-unwind-tables"
+../configure CC="$GCC" CXX="$GXX" CFLAGS="$configure_CFLAGS" \
 	--prefix=%{_prefix} \
 	--prefix=%{_prefix} \
-	--enable-add-ons=nptl$AddOns --without-cvs $EnableKernel \
+	--enable-add-ons=../%{glibcportsdir},nptl$AddOns $EnableKernel \
 	--with-headers=%{_prefix}/include --enable-bind-now \
 	--with-headers=%{_prefix}/include --enable-bind-now \
-	--with-tls --with-__thread --build %{nptl_target_cpu}-vine-linux \
+	--build %{nptl_target_cpu}-vine-linux \
 	--host %{nptl_target_cpu}-vine-linux \
 	--host %{nptl_target_cpu}-vine-linux \
 %ifarch %{multiarcharches}
 %ifarch %{multiarcharches}
 	--enable-multi-arch \
 	--enable-multi-arch \
 %endif
 %endif
-	--disable-profile --enable-experimental-malloc --enable-nss-crypt
+	--disable-profile --enable-nss-crypt ||
+{ cat config.log; false; }
 
 
 make %{?_smp_mflags} -r CFLAGS="$build_CFLAGS" PARALLELMFLAGS=-s
 make %{?_smp_mflags} -r CFLAGS="$build_CFLAGS" PARALLELMFLAGS=-s
 
 
@@ -549,9 +546,6 @@ build_nptl linuxnptl-power6
 cd build-%{nptl_target_cpu}-linuxnptl
 cd build-%{nptl_target_cpu}-linuxnptl
 $GCC -static -L. -Os -g ../fedora/glibc_post_upgrade.c -o glibc_post_upgrade.%{_target_cpu} \
 $GCC -static -L. -Os -g ../fedora/glibc_post_upgrade.c -o glibc_post_upgrade.%{_target_cpu} \
   -DNO_SIZE_OPTIMIZATION \
   -DNO_SIZE_OPTIMIZATION \
-%ifarch i386 i486 i586
-  -DARCH_386 \
-%endif
   '-DLIBTLS="/%{_lib}/tls/"' \
   '-DLIBTLS="/%{_lib}/tls/"' \
   '-DGCONV_MODULES_DIR="%{_prefix}/%{_lib}/gconv"' \
   '-DGCONV_MODULES_DIR="%{_prefix}/%{_lib}/gconv"' \
   '-DLD_SO_CONF="/etc/ld.so.conf"' \
   '-DLD_SO_CONF="/etc/ld.so.conf"' \
@@ -564,6 +558,7 @@ GCC=`cat Gcc`
 rm -rf $RPM_BUILD_ROOT
 rm -rf $RPM_BUILD_ROOT
 mkdir -p $RPM_BUILD_ROOT
 mkdir -p $RPM_BUILD_ROOT
 make -j1 install_root=$RPM_BUILD_ROOT install -C build-%{nptl_target_cpu}-linuxnptl PARALLELMFLAGS=-s
 make -j1 install_root=$RPM_BUILD_ROOT install -C build-%{nptl_target_cpu}-linuxnptl PARALLELMFLAGS=-s
+chmod +x $RPM_BUILD_ROOT%{_prefix}/libexec/pt_chown
 %ifnarch %{auxarches}
 %ifnarch %{auxarches}
 cd build-%{nptl_target_cpu}-linuxnptl && \
 cd build-%{nptl_target_cpu}-linuxnptl && \
   make %{?_smp_mflags} install_root=$RPM_BUILD_ROOT install-locales -C ../localedata objdir=`pwd` && \
   make %{?_smp_mflags} install_root=$RPM_BUILD_ROOT install-locales -C ../localedata objdir=`pwd` && \
@@ -573,7 +568,7 @@ cd build-%{nptl_target_cpu}-linuxnptl && \
 librtso=`basename $RPM_BUILD_ROOT/%{_lib}/librt.so.*`
 librtso=`basename $RPM_BUILD_ROOT/%{_lib}/librt.so.*`
 
 
 %ifarch %{rtkaioarches}
 %ifarch %{rtkaioarches}
-rm -f $RPM_BUILD_ROOT{,%{_prefix}}/%{_lib}/librtkaio.so*
+rm -f $RPM_BUILD_ROOT{,%{_prefix}}/%{_lib}/librtkaio.*
 rm -f $RPM_BUILD_ROOT%{_prefix}/%{_lib}/librt.so.*
 rm -f $RPM_BUILD_ROOT%{_prefix}/%{_lib}/librt.so.*
 mkdir -p $RPM_BUILD_ROOT/%{_lib}/rtkaio
 mkdir -p $RPM_BUILD_ROOT/%{_lib}/rtkaio
 mv $RPM_BUILD_ROOT/%{_lib}/librtkaio-*.so $RPM_BUILD_ROOT/%{_lib}/rtkaio/
 mv $RPM_BUILD_ROOT/%{_lib}/librtkaio-*.so $RPM_BUILD_ROOT/%{_lib}/rtkaio/
@@ -671,18 +666,11 @@ install -p -m 644 fedora/nsswitch.conf $RPM_BUILD_ROOT/etc/nsswitch.conf
 mkdir -p $RPM_BUILD_ROOT/etc/default
 mkdir -p $RPM_BUILD_ROOT/etc/default
 install -p -m 644 nis/nss $RPM_BUILD_ROOT/etc/default/nss
 install -p -m 644 nis/nss $RPM_BUILD_ROOT/etc/default/nss
 
 
-# Take care of setuids
-# -- new security review sez that this shouldn't be needed anymore
-#chmod 755 $RPM_BUILD_ROOT%{_prefix}/libexec/pt_chown
-
 # This is for ncsd - in glibc 2.2
 # This is for ncsd - in glibc 2.2
 install -m 644 nscd/nscd.conf $RPM_BUILD_ROOT/etc
 install -m 644 nscd/nscd.conf $RPM_BUILD_ROOT/etc
 mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
 mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
 install -m 755 nscd/nscd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd
 install -m 755 nscd/nscd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/nscd
 
 
-# Don't include ld.so.cache
-rm -f $RPM_BUILD_ROOT/etc/ld.so.cache
-
 # Include ld.so.conf
 # Include ld.so.conf
 echo 'include ld.so.conf.d/*.conf' > $RPM_BUILD_ROOT/etc/ld.so.conf
 echo 'include ld.so.conf.d/*.conf' > $RPM_BUILD_ROOT/etc/ld.so.conf
 > $RPM_BUILD_ROOT/etc/ld.so.cache
 > $RPM_BUILD_ROOT/etc/ld.so.cache
@@ -690,6 +678,7 @@ chmod 644 $RPM_BUILD_ROOT/etc/ld.so.conf
 mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d
 mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d
 mkdir -p $RPM_BUILD_ROOT/etc/sysconfig
 mkdir -p $RPM_BUILD_ROOT/etc/sysconfig
 > $RPM_BUILD_ROOT/etc/sysconfig/nscd
 > $RPM_BUILD_ROOT/etc/sysconfig/nscd
+> $RPM_BUILD_ROOT/etc/gai.conf
 
 
 # Include %{_prefix}/%{_lib}/gconv/gconv-modules.cache
 # Include %{_prefix}/%{_lib}/gconv/gconv-modules.cache
 > $RPM_BUILD_ROOT%{_prefix}/%{_lib}/gconv/gconv-modules.cache
 > $RPM_BUILD_ROOT%{_prefix}/%{_lib}/gconv/gconv-modules.cache
@@ -739,8 +728,6 @@ rm -f ${RPM_BUILD_ROOT}/%{_lib}/libnss-*.so.1
 # Ugly hack for buggy rpm
 # Ugly hack for buggy rpm
 ln -f ${RPM_BUILD_ROOT}%{_sbindir}/iconvconfig{,.%{_target_cpu}}
 ln -f ${RPM_BUILD_ROOT}%{_sbindir}/iconvconfig{,.%{_target_cpu}}
 
 
-rm -f $RPM_BUILD_ROOT/etc/gai.conf
-
 # In F7+ this is provided by rpcbind rpm
 # In F7+ this is provided by rpcbind rpm
 rm -f $RPM_BUILD_ROOT%{_sbindir}/rpcinfo
 rm -f $RPM_BUILD_ROOT%{_sbindir}/rpcinfo
 
 
@@ -769,7 +756,7 @@ rm -f $RPM_BUILD_ROOT%{_sbindir}/rpcinfo
   # languages very well, temporarily disable
   # languages very well, temporarily disable
   LIB_LANG=''
   LIB_LANG=''
   sed -e "$LIB_LANG" -e "$SHARE_LANG" \
   sed -e "$LIB_LANG" -e "$SHARE_LANG" \
-      -e '\,/etc/\(localtime\|nsswitch.conf\|ld\.so\.conf\|ld\.so\.cache\|default\),d' \
+      -e '\,/etc/\(localtime\|nsswitch.conf\|ld\.so\.conf\|ld\.so\.cache\|default\|rpc\|gai\.conf\),d' \
       -e '\,/%{_lib}/lib\(pcprofile\|memusage\)\.so,d' \
       -e '\,/%{_lib}/lib\(pcprofile\|memusage\)\.so,d' \
       -e '\,bin/\(memusage\|mtrace\|xtrace\|pcprofiledump\),d'
       -e '\,bin/\(memusage\|mtrace\|xtrace\|pcprofiledump\),d'
 } | sort > rpm.filelist
 } | sort > rpm.filelist
@@ -811,11 +798,10 @@ sed -i -e '\|%{_prefix}/%{_lib}/lib.*\.a|d' \
        -e '\|nscd|d' rpm.filelist
        -e '\|nscd|d' rpm.filelist
 
 
 grep '%{_prefix}/bin' < rpm.filelist >> common.filelist
 grep '%{_prefix}/bin' < rpm.filelist >> common.filelist
-#grep '%{_prefix}/lib/locale' < rpm.filelist | grep -v /locale-archive.tmpl >> common.filelist
-#grep '%{_prefix}/libexec/pt_chown' < rpm.filelist >> common.filelist
 grep '%{_prefix}/sbin/[^gi]' < rpm.filelist >> common.filelist
 grep '%{_prefix}/sbin/[^gi]' < rpm.filelist >> common.filelist
 grep '%{_prefix}/share' < rpm.filelist | \
 grep '%{_prefix}/share' < rpm.filelist | \
-  grep -v '%{_prefix}/share/zoneinfo' >> common.filelist
+  grep -v -e '%{_prefix}/share/zoneinfo' -e '%%dir %{prefix}/share' \
+       >> common.filelist
 
 
 sed -i -e '\|%{_prefix}/bin|d' \
 sed -i -e '\|%{_prefix}/bin|d' \
        -e '\|%{_prefix}/lib/locale|d' \
        -e '\|%{_prefix}/lib/locale|d' \
@@ -830,12 +816,15 @@ sed -i -e '\|/%{_lib}/%{nosegneg_subdir}|d' rpm.filelist
 %endif
 %endif
 
 
 echo '%{_prefix}/sbin/build-locale-archive' >> common.filelist
 echo '%{_prefix}/sbin/build-locale-archive' >> common.filelist
-echo '%{_prefix}/sbin/tzdata-update' >> common.filelist
+# Convert tzdata-update to lua
+# echo '%{_prefix}/sbin/tzdata-update' >> common.filelist
 echo '%{_prefix}/sbin/nscd' > nscd.filelist
 echo '%{_prefix}/sbin/nscd' > nscd.filelist
 
 
-cat > utils.filelist <<EOF
+cat >> rpm.filelist <<EOF
 %{_prefix}/%{_lib}/libmemusage.so
 %{_prefix}/%{_lib}/libmemusage.so
 %{_prefix}/%{_lib}/libpcprofile.so
 %{_prefix}/%{_lib}/libpcprofile.so
+EOF
+cat > utils.filelist <<EOF
 %{_prefix}/bin/memusage
 %{_prefix}/bin/memusage
 %{_prefix}/bin/memusagestat
 %{_prefix}/bin/memusagestat
 %{_prefix}/bin/mtrace
 %{_prefix}/bin/mtrace
@@ -847,8 +836,6 @@ EOF
 rm -f $RPM_BUILD_ROOT/etc/localtime
 rm -f $RPM_BUILD_ROOT/etc/localtime
 ##VINE##cp -f $RPM_BUILD_ROOT%{_prefix}/share/zoneinfo/US/Eastern $RPM_BUILD_ROOT/etc/localtime
 ##VINE##cp -f $RPM_BUILD_ROOT%{_prefix}/share/zoneinfo/US/Eastern $RPM_BUILD_ROOT/etc/localtime
 cp -f $RPM_BUILD_ROOT%{_prefix}/share/zoneinfo/Asia/Tokyo $RPM_BUILD_ROOT/etc/localtime
 cp -f $RPM_BUILD_ROOT%{_prefix}/share/zoneinfo/Asia/Tokyo $RPM_BUILD_ROOT/etc/localtime
-##VINE###ln -sf ..%{_prefix}/share/zoneinfo/US/Eastern $RPM_BUILD_ROOT/etc/localtime
-#ln -sf ..%{_prefix}/share/zoneinfo/Asia/Tokyo $RPM_BUILD_ROOT/etc/localtime
 
 
 rm -rf $RPM_BUILD_ROOT%{_prefix}/share/zoneinfo
 rm -rf $RPM_BUILD_ROOT%{_prefix}/share/zoneinfo
 
 
@@ -858,15 +845,17 @@ touch -r timezone/northamerica $RPM_BUILD_ROOT/etc/localtime
 touch -r sunrpc/etc.rpc $RPM_BUILD_ROOT/etc/rpc
 touch -r sunrpc/etc.rpc $RPM_BUILD_ROOT/etc/rpc
 
 
 cd fedora
 cd fedora
-$GCC -Os -g -static -o build-locale-archive build-locale-archive.c \
+$GCC -Os -g -o build-locale-archive build-locale-archive.c \
   ../build-%{nptl_target_cpu}-linuxnptl/locale/locarchive.o \
   ../build-%{nptl_target_cpu}-linuxnptl/locale/locarchive.o \
   ../build-%{nptl_target_cpu}-linuxnptl/locale/md5.o \
   ../build-%{nptl_target_cpu}-linuxnptl/locale/md5.o \
   -DDATADIR=\"%{_datadir}\" -DPREFIX=\"%{_prefix}\" \
   -DDATADIR=\"%{_datadir}\" -DPREFIX=\"%{_prefix}\" \
-  -L../build-%{nptl_target_cpu}-linuxnptl
+  -L../build-%{nptl_target_cpu}-linuxnptl \
+  -B../build-%{nptl_target_cpu}-linuxnptl/csu/ -lc -lc_nonshared
 install -m 700 build-locale-archive $RPM_BUILD_ROOT/usr/sbin/build-locale-archive
 install -m 700 build-locale-archive $RPM_BUILD_ROOT/usr/sbin/build-locale-archive
-$GCC -Os -g -static -o tzdata-update tzdata-update.c \
-  -L../build-%{nptl_target_cpu}-linuxnptl
-install -m 700 tzdata-update $RPM_BUILD_ROOT/usr/sbin/tzdata-update
+# Convert tzdata-update to lua
+# $GCC -Os -g -static -o tzdata-update tzdata-update.c \
+#   -L../build-%{nptl_target_cpu}-linuxnptl
+# install -m 700 tzdata-update $RPM_BUILD_ROOT/usr/sbin/tzdata-update
 cd ..
 cd ..
 
 
 # the last bit: more documentation
 # the last bit: more documentation
@@ -963,13 +952,15 @@ eu-readelf -hS $RPM_BUILD_ROOT/usr/bin/getconf $RPM_BUILD_ROOT/usr/libexec/getco
 
 
 find_debuginfo_args='--strict-build-id -g'
 find_debuginfo_args='--strict-build-id -g'
 %ifarch %{debuginfocommonarches}
 %ifarch %{debuginfocommonarches}
+echo %{_prefix}/libexec/pt_chown > workaround.filelist
 find_debuginfo_args="$find_debuginfo_args \
 find_debuginfo_args="$find_debuginfo_args \
-  -l common.filelist -l utils.filelist -l nscd.filelist \
+  -l common.filelist -l utils.filelist -l nscd.filelist -l workaround.filelist \
+  -p '.*/(sbin|libexec)/.*' \
   -o debuginfocommon.filelist \
   -o debuginfocommon.filelist \
   -l rpm.filelist -l nosegneg.filelist \
   -l rpm.filelist -l nosegneg.filelist \
 "
 "
 %endif
 %endif
-/usr/lib/rpm/find-debuginfo.sh $find_debuginfo_args -o debuginfo.filelist
+eval /usr/lib/rpm/find-debuginfo.sh "$find_debuginfo_args" -o debuginfo.filelist
 
 
 list_debug_archives()
 list_debug_archives()
 {
 {
@@ -1002,21 +993,11 @@ egrep "$auxarches_debugsources" debuginfocommon.sources >> debuginfo.filelist
 
 
 egrep -v "$auxarches_debugsources" \
 egrep -v "$auxarches_debugsources" \
   debuginfocommon.sources >> debuginfocommon.filelist
   debuginfocommon.sources >> debuginfocommon.filelist
-%ifnarch %{auxarches}
-# non-aux arches when there is a debuginfo-common
-# all the sources go into debuginfo-common
-#cat debuginfocommon.sources >> debuginfocommon.filelist
+
 %endif
 %endif
 
 
 list_debug_archives >> debuginfocommon.filelist
 list_debug_archives >> debuginfocommon.filelist
 
 
-%else
-
-# already found by find-debuginfo
-#list_debug_archives >> debuginfo.filelist
-
-%endif
-
 %endif
 %endif
 
 
 rm -f $RPM_BUILD_ROOT%{_infodir}/dir
 rm -f $RPM_BUILD_ROOT%{_infodir}/dir
@@ -1029,6 +1010,7 @@ sed -e '/%%dir/d;/%%config/d;/%%verify/d;s/%%lang([^)]*) //;s#^/*##' \
     common.filelist devel.filelist static.filelist headers.filelist \
     common.filelist devel.filelist static.filelist headers.filelist \
     utils.filelist nscd.filelist debuginfocommon.filelist |
     utils.filelist nscd.filelist debuginfocommon.filelist |
 (cd $RPM_BUILD_ROOT; xargs --no-run-if-empty rm -f 2> /dev/null || :)
 (cd $RPM_BUILD_ROOT; xargs --no-run-if-empty rm -f 2> /dev/null || :)
+rm -f $RPM_BUILD_ROOT%{_prefix}/libexec/pt_chown
 
 
 %else
 %else
 
 
@@ -1039,12 +1021,19 @@ touch $RPM_BUILD_ROOT/var/run/nscd/{socket,nscd.pid}
 
 
 %ifnarch %{auxarches}
 %ifnarch %{auxarches}
 > $RPM_BUILD_ROOT/%{_prefix}/lib/locale/locale-archive
 > $RPM_BUILD_ROOT/%{_prefix}/lib/locale/locale-archive
-#> $RPM_BUILD_ROOT/%{_prefix}/lib/locale/locale-archive.tmpl
 %endif
 %endif
 
 
 mkdir -p $RPM_BUILD_ROOT/var/cache/ldconfig
 mkdir -p $RPM_BUILD_ROOT/var/cache/ldconfig
 > $RPM_BUILD_ROOT/var/cache/ldconfig/aux-cache
 > $RPM_BUILD_ROOT/var/cache/ldconfig/aux-cache
 
 
+%pre -p <lua>
+-- Check that the running kernel is new enough
+required = '%{enablekernel}'
+rel = posix.uname("%r")
+if rpm.vercmp(rel, required) < 0 then
+  error("FATAL: kernel too old", 0)
+end
+
 %post -p /usr/sbin/glibc_post_upgrade.%{_target_cpu}
 %post -p /usr/sbin/glibc_post_upgrade.%{_target_cpu}
 
 
 %postun -p /sbin/ldconfig
 %postun -p /sbin/ldconfig
@@ -1053,22 +1042,105 @@ mkdir -p $RPM_BUILD_ROOT/var/cache/ldconfig
 
 
 %postun -n compat32-%{name} -p /sbin/ldconfig
 %postun -n compat32-%{name} -p /sbin/ldconfig
 
 
-%post common
-/usr/sbin/build-locale-archive
-
-%triggerin common -p /usr/sbin/tzdata-update -- tzdata
-
-%post common-extra
-cp -f /usr/lib/locale/locale-archive-extra.tmpl /usr/lib/locale/locale-archive.tmpl
-/usr/sbin/build-locale-archive
-
-%postun common-extra
-cp -f /usr/lib/locale/locale-archive-ja.tmpl /usr/lib/locale/locale-archive.tmpl
-/usr/sbin/build-locale-archive
+%triggerin common -p <lua> -- glibc
+if posix.stat("%{_prefix}/lib/locale/locale-archive.tmpl", "size") > 0 then
+  pid = posix.fork()
+  if pid == 0 then
+    posix.exec("%{_prefix}/sbin/build-locale-archive")
+  elseif pid > 0 then
+    posix.wait(pid)
+  end
+end
+
+%post common -p <lua>
+if posix.access("/etc/ld.so.cache") then
+  if posix.stat("%{_prefix}/lib/locale/locale-archive.tmpl", "size") > 0 then
+    pid = posix.fork()
+    if pid == 0 then
+      posix.exec("%{_prefix}/sbin/build-locale-archive")
+    elseif pid > 0 then
+      posix.wait(pid)
+    end
+  end
+end
+
+%triggerin common -p <lua> -- tzdata
+function update (filename, new_data)
+  local fd = io.open(filename)
+  if not fd then return end
+  local data = fd:read("*a")
+  fd:close()
+  if not data then return end
+  -- Don't update the file unnecessarily.
+  if data == new_data then return end
+  local tempfilename = filename .. ".tzupdate"
+  fd = io.open(tempfilename, "w")
+  if not fd then return end
+  fd:write(new_data)
+  fd:close()
+  posix.chmod(tempfilename, 0644)
+  if not os.rename(tempfilename, filename) then
+    os.remove(tempfilename)
+  end
+end
+fd = io.open("/etc/sysconfig/clock")
+if not fd then return end
+zonename = nil
+for l in fd:lines() do
+  zone = string.match(l, "^[ \t]*ZONE[ \t]*=[ \t]*\"?([^ \t\n\"]*)");
+  if zone then
+    zonename = "/usr/share/zoneinfo/" .. zone
+    break
+  end
+end
+fd:close()
+if not zonename then return end
+fd = io.open(zonename)
+if not fd then return end
+data = fd:read("*a")
+fd:close()
+if not data then return end
+update("/etc/localtime", data)
+update("/var/spool/postfix/etc/localtime", data)
+
+%post common-extra -p <lua>
+-- cp -f /usr/lib/locale/locale-archive-extra.tmpl /usr/lib/locale/locale-archive.tmpl
+if posix.access("/etc/ld.so.cache") then
+  if posix.stat("%{_prefix}/lib/locale/locale-archive.tmpl", "size") > 0 then
+    pid = posix.fork()
+    if pid == 0 then
+      posix.exec("%{_prefix}/sbin/build-locale-archive")
+    elseif pid > 0 then
+      posix.wait(pid)
+    end
+  end
+end
+
+%postun common-extra -p <lua>
+posix.exec("cp -f /usr/lib/locale/locale-archive-ja.tmpl /usr/lib/locale/locale-archive.tmpl")
+if posix.access("/etc/ld.so.cache") then
+  if posix.stat("%{_prefix}/lib/locale/locale-archive.tmpl", "size") > 0 then
+    pid = posix.fork()
+    if pid == 0 then
+      posix.exec("%{_prefix}/sbin/build-locale-archive")
+    elseif pid > 0 then
+      posix.wait(pid)
+    end
+  end
+end
 
 
 %triggerun -- common-extra
 %triggerun -- common-extra
-cp -f /usr/lib/locale/locale-archive-ja.tmpl /usr/lib/locale/locale-archive.tmpl
-/usr/sbin/build-locale-archive
+posix.exec("cp -f /usr/lib/locale/locale-archive-ja.tmpl /usr/lib/locale/locale-archive.tmpl")
+if posix.access("/etc/ld.so.cache") then
+  if posix.stat("%{_prefix}/lib/locale/locale-archive.tmpl", "size") > 0 then
+    pid = posix.fork()
+    if pid == 0 then
+      posix.exec("%{_prefix}/sbin/build-locale-archive")
+    elseif pid > 0 then
+      posix.wait(pid)
+    end
+  end
+end
 
 
 %post devel
 %post devel
 /sbin/install-info %{_infodir}/libc.info.gz %{_infodir}/dir > /dev/null 2>&1 || :
 /sbin/install-info %{_infodir}/libc.info.gz %{_infodir}/dir > /dev/null 2>&1 || :
@@ -1089,15 +1161,17 @@ fi
 %postun utils -p /sbin/ldconfig
 %postun utils -p /sbin/ldconfig
 
 
 %pre -n nscd
 %pre -n nscd
-/usr/sbin/useradd -M -o -r -d / -s /sbin/nologin \
-  -c "NSCD Daemon" -u 28 nscd > /dev/null 2>&1 || :
+getent group nscd >/dev/null || /usr/sbin/groupadd -g 28 -r nscd
+getent passwd nscd >/dev/null ||
+  /usr/sbin/useradd -M -o -r -d / -s /sbin/nologin \
+		    -c "NSCD Daemon" -u 28 -g nscd nscd
 
 
 %post -n nscd
 %post -n nscd
 /sbin/chkconfig --add nscd
 /sbin/chkconfig --add nscd
 
 
 %preun -n nscd
 %preun -n nscd
 if [ $1 = 0 ] ; then
 if [ $1 = 0 ] ; then
-  service nscd stop > /dev/null 2>&1
+  /sbin/service nscd stop > /dev/null 2>&1
   /sbin/chkconfig --del nscd
   /sbin/chkconfig --del nscd
 fi
 fi
 
 
@@ -1152,18 +1226,21 @@ rm -f *.filelist*
 %verify(not md5 size mtime) %config(noreplace) /etc/localtime
 %verify(not md5 size mtime) %config(noreplace) /etc/localtime
 %verify(not md5 size mtime) %config(noreplace) /etc/nsswitch.conf
 %verify(not md5 size mtime) %config(noreplace) /etc/nsswitch.conf
 %verify(not md5 size mtime) %config(noreplace) /etc/ld.so.conf
 %verify(not md5 size mtime) %config(noreplace) /etc/ld.so.conf
+%verify(not md5 size mtime) %config(noreplace) /etc/rpc
 %dir /etc/ld.so.conf.d
 %dir /etc/ld.so.conf.d
 %dir %{_prefix}/libexec/getconf
 %dir %{_prefix}/libexec/getconf
 %dir %{_prefix}/%{_lib}/gconv
 %dir %{_prefix}/%{_lib}/gconv
 %dir %attr(0700,root,root) /var/cache/ldconfig
 %dir %attr(0700,root,root) /var/cache/ldconfig
 %attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/cache/ldconfig/aux-cache
 %attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/cache/ldconfig/aux-cache
 %attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /etc/ld.so.cache
 %attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /etc/ld.so.cache
+%attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /etc/gai.conf
 %doc README NEWS INSTALL FAQ BUGS NOTES PROJECTS CONFORMANCE
 %doc README NEWS INSTALL FAQ BUGS NOTES PROJECTS CONFORMANCE
 %doc COPYING COPYING.LIB README.libm LICENSES
 %doc COPYING COPYING.LIB README.libm LICENSES
 %doc hesiod/README.hesiod
 %doc hesiod/README.hesiod
 
 
 %if %{build_compat32}
 %if %{build_compat32}
 %files -f rpm.filelist -n compat32-%{name}
 %files -f rpm.filelist -n compat32-%{name}
+%defattr(-,root,root)
 %ifarch %{rtkaioarches}
 %ifarch %{rtkaioarches}
 %dir /%{_lib}/rtkaio
 %dir /%{_lib}/rtkaio
 %endif
 %endif
@@ -1175,10 +1252,6 @@ rm -f *.filelist*
 %dir /%{_lib}/rtkaio/%{nosegneg_subdir}
 %dir /%{_lib}/rtkaio/%{nosegneg_subdir}
 %endif
 %endif
 %endif
 %endif
-%exclude /etc
-%exclude /sbin
-%exclude %{_prefix}/sbin/iconvconfig
-#%exclude %{_prefix}/share
 %endif
 %endif
 
 
 %if %{xenpackage}
 %if %{xenpackage}
@@ -1256,6 +1329,13 @@ rm -f *.filelist*
 %endif
 %endif
 
 
 %changelog
 %changelog
+* Sat Dec 17 2011 NAKAMURA Kenta <kenta@vinelinux.org> 2.14.1-1
+- updated to 2.14.1
+- converted tzdata-update to lua (Red Hat Bugzilla – Bug 729796)
+- dropped obsolete CVE patches
+- update glibc-fedora.patch (glibc-2.14.90-20.fc17) for reference
+- added patch1, 2 and 3 based on glibc-fedora.patch
+
 * Sun Jul 10 2011 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 2.11.1-9
 * Sun Jul 10 2011 Satoshi IWAMOTO <satoshi.iwamoto@nifty.ne.jp> 2.11.1-9
 - add patch100,101 for fix CVE-2011-0536
 - add patch100,101 for fix CVE-2011-0536
 - add patch102 for fix CVE-2011-1095
 - add patch102 for fix CVE-2011-1095
@@ -1714,7 +1794,7 @@ rm -f *.filelist*
   - concurrent IPv4 and IPv6 DNS lookups by getaddrinfo
   - concurrent IPv4 and IPv6 DNS lookups by getaddrinfo
 
 
 * Mon May  5 2008 Jakub Jelinek <jakub@redhat.com> 2.8-3
 * Mon May  5 2008 Jakub Jelinek <jakub@redhat.com> 2.8-3
-- don't run telinit u in %post if both /dev/initctl and
+- don't run telinit u in %%post if both /dev/initctl and
   /sbin/initctl exist (#444978)
   /sbin/initctl exist (#444978)
 - workaround GCC ppc64 miscompilation of c{log{,10},acosh,atan}l
 - workaround GCC ppc64 miscompilation of c{log{,10},acosh,atan}l
   (#444996)
   (#444996)
@@ -1739,7 +1819,7 @@ rm -f *.filelist*
 - update to trunk
 - update to trunk
   - misc fixes (BZ#4314, BZ#4407, BZ#5209, BZ#5436, BZ#5768, BZ#5998,
   - misc fixes (BZ#4314, BZ#4407, BZ#5209, BZ#5436, BZ#5768, BZ#5998,
 		BZ#6024)
 		BZ#6024)
-- restart sshd in %post when upstart is used - it doesn't have
+- restart sshd in %%post when upstart is used - it doesn't have
   /dev/initctl (#441763)
   /dev/initctl (#441763)
 - disable assert checking again
 - disable assert checking again
 
 
@@ -1869,9 +1949,9 @@ rm -f *.filelist*
 * Tue Sep 18 2007 Jakub Jelinek <jakub@redhat.com> 2.6.90-14
 * Tue Sep 18 2007 Jakub Jelinek <jakub@redhat.com> 2.6.90-14
 - -D_FORTIFY_SOURCE{,=2} support for C++
 - -D_FORTIFY_SOURCE{,=2} support for C++
 - fortification of fread{,_unlocked}
 - fortification of fread{,_unlocked}
-- support *scanf m allocation modifier (%ms, %mls, %mc, ...)
+- support *scanf m allocation modifier (%%ms, %%mls, %%mc, ...)
 - in -std=c99 or -D_XOPEN_SOURCE=600 mode don't recognize
 - in -std=c99 or -D_XOPEN_SOURCE=600 mode don't recognize
-  %as, %aS and %a[ as a GNU extension for *scanf
+  %%as, %%aS and %%a[ as a GNU extension for *scanf
 - fix splice, vmsplice, tee return value, make them cancellation
 - fix splice, vmsplice, tee return value, make them cancellation
   points
   points
 - mq_open checking
 - mq_open checking
@@ -1956,7 +2036,7 @@ rm -f *.filelist*
 - fix LD_AUDIT=a:b program (#180432)
 - fix LD_AUDIT=a:b program (#180432)
 - don't crash on pseudo-zero long double values passed to
 - don't crash on pseudo-zero long double values passed to
   *printf on i?86/x86_64/ia64 (BZ#4586)
   *printf on i?86/x86_64/ia64 (BZ#4586)
-- fix *printf %La and strtold with some hexadecimal floating point
+- fix *printf %%La and strtold with some hexadecimal floating point
   constants on ppc/ppc64
   constants on ppc/ppc64
 - fix nextafterl on ppc/ppc64
 - fix nextafterl on ppc/ppc64
 - fix sem_timedwait on i?86 and x86_64
 - fix sem_timedwait on i?86 and x86_64
@@ -1992,10 +2072,10 @@ rm -f *.filelist*
 
 
 * Fri May  4 2007 Jakub Jelinek <jakub@redhat.com> 2.5.90-22
 * Fri May  4 2007 Jakub Jelinek <jakub@redhat.com> 2.5.90-22
 - add transliteration for <U2044> (BZ#3213)
 - add transliteration for <U2044> (BZ#3213)
-- fix *scanf with %f on hexadecimal floats without exponent (BZ#4342)
-- fix *printf with very large precisions for %s (#238406, BZ#4438)
+- fix *scanf with %%f on hexadecimal floats without exponent (BZ#4342)
+- fix *printf with very large precisions for %%s (#238406, BZ#4438)
 - fix inet_ntop size checking for AF_INET (BZ#4439)
 - fix inet_ntop size checking for AF_INET (BZ#4439)
-- for *printf %e avoid 1.000e-00, for exponent 0 always use + sign (#238431)
+- for *printf %%e avoid 1.000e-00, for exponent 0 always use + sign (#238431)
 - fix a regression introduced in #223467 changes
 - fix a regression introduced in #223467 changes
 - gethostby*_r alignment fixes (BZ#4381)
 - gethostby*_r alignment fixes (BZ#4381)
 - fix ifaddrs error handling
 - fix ifaddrs error handling
@@ -2008,14 +2088,14 @@ rm -f *.filelist*
   then unlink the locale-archive template - this should save
   then unlink the locale-archive template - this should save
   > 80MB of glibc-common occupied disk space
   > 80MB of glibc-common occupied disk space
 - fix _XOPEN_VERSION (BZ#4364)
 - fix _XOPEN_VERSION (BZ#4364)
-- fix printf with %g and values tiny bit smaller than 1.e-4 (#235864,
+- fix printf with %%g and values tiny bit smaller than 1.e-4 (#235864,
   BZ#4362)
   BZ#4362)
 - fix NIS+ __nisfind_server (#235229)
 - fix NIS+ __nisfind_server (#235229)
 
 
 * Sat Mar 31 2007 Jakub Jelinek <jakub@redhat.com> 2.5.90-20
 * Sat Mar 31 2007 Jakub Jelinek <jakub@redhat.com> 2.5.90-20
 - assorted NIS+ speedups (#223467)
 - assorted NIS+ speedups (#223467)
 - fix HAVE_LIBCAP configure detection (#178934)
 - fix HAVE_LIBCAP configure detection (#178934)
-- remove %{_prefix}/sbin/rpcinfo from glibc-common (#228894)
+- remove %%{_prefix}/sbin/rpcinfo from glibc-common (#228894)
 - nexttoward*/nextafter* fixes (BZ#3306)
 - nexttoward*/nextafter* fixes (BZ#3306)
 - feholdexcept/feupdateenv fixes (BZ#3427)
 - feholdexcept/feupdateenv fixes (BZ#3427)
 - speed up fnmatch with two or more * in the pattern
 - speed up fnmatch with two or more * in the pattern
@@ -2050,7 +2130,7 @@ rm -f *.filelist*
 - fix application crashes when doing NSS lookups through nscd
 - fix application crashes when doing NSS lookups through nscd
   mmapped databases and nscd decides to start garbage collection
   mmapped databases and nscd decides to start garbage collection
   during the lookups (#219145, #225315)
   during the lookups (#219145, #225315)
-- fix %0lld printing of 0LL on 32-bit architectures (BZ#3902)
+- fix %%0lld printing of 0LL on 32-bit architectures (BZ#3902)
 - ignore errors from install-info in glibc-devel scriptlets
 - ignore errors from install-info in glibc-devel scriptlets
   (#223691)
   (#223691)
 
 
@@ -2103,7 +2183,7 @@ rm -f *.filelist*
   in __libc_start_main instead)
   in __libc_start_main instead)
 - add unwind info for x86-64 restore_rt signal return landing pad
 - add unwind info for x86-64 restore_rt signal return landing pad
   (#217087)
   (#217087)
-- add power6x subdir to /%{_lib}/ and /%{_lib}/rtkaio/,
+- add power6x subdir to /%%{_lib}/ and /%%{_lib}/rtkaio/,
   link all libs from ../power6/* into them
   link all libs from ../power6/* into them
 
 
 * Tue Nov 28 2006 Jakub Jelinek <jakub@redhat.com> 2.5.90-8
 * Tue Nov 28 2006 Jakub Jelinek <jakub@redhat.com> 2.5.90-8
@@ -2136,7 +2216,7 @@ rm -f *.filelist*
 * Fri Nov  3 2006 Jakub Jelinek <jakub@redhat.com> 2.5.90-4
 * Fri Nov  3 2006 Jakub Jelinek <jakub@redhat.com> 2.5.90-4
 - fix atexit backwards compatibility (#213388)
 - fix atexit backwards compatibility (#213388)
 - add mai_IN locale (#213415)
 - add mai_IN locale (#213415)
-- remove bogus %{_libdir}/librt.so.1 symlink (#213555)
+- remove bogus %%{_libdir}/librt.so.1 symlink (#213555)
 - fix memusage (#213656)
 - fix memusage (#213656)
 - change libc.info category (#209493)
 - change libc.info category (#209493)
 
 
@@ -2186,7 +2266,7 @@ rm -f *.filelist*
   AT_PLATFORM
   AT_PLATFORM
 - fix ppc{32,64} libSegFault.so
 - fix ppc{32,64} libSegFault.so
 - use -mtune=generic even for glibc-devel.i386 (#206437)
 - use -mtune=generic even for glibc-devel.i386 (#206437)
-- fix /%{_lib}/librt.so.1 symlink
+- fix /%%{_lib}/librt.so.1 symlink
 
 
 * Fri Sep 15 2006 Jakub Jelinek <jakub@redhat.com> 2.4.90-32
 * Fri Sep 15 2006 Jakub Jelinek <jakub@redhat.com> 2.4.90-32
 - on ppc* use just AT_PLATFORM and altivec AT_HWCAP bit for library selection
 - on ppc* use just AT_PLATFORM and altivec AT_HWCAP bit for library selection
@@ -2200,7 +2280,7 @@ rm -f *.filelist*
 - fix mktime on 32-bit arches a few years after 2038 (BZ#2821)
 - fix mktime on 32-bit arches a few years after 2038 (BZ#2821)
 
 
 * Thu Sep  7 2006 Jakub Jelinek <jakub@redhat.com> 2.4.90-30
 * Thu Sep  7 2006 Jakub Jelinek <jakub@redhat.com> 2.4.90-30
-- add librtkaio, to use it add /%{lib}/rtkaio to your
+- add librtkaio, to use it add /%%{lib}/rtkaio to your
   LD_LIBRARY_PATH or /etc/ld.so.conf
   LD_LIBRARY_PATH or /etc/ld.so.conf
 - fix or_IN February name (#204730)
 - fix or_IN February name (#204730)
 - fix pthread_create called from cancellation handlers (BZ#3124)
 - fix pthread_create called from cancellation handlers (BZ#3124)
@@ -2531,7 +2611,7 @@ rm -f *.filelist*
 
 
 * Thu Oct 20 2005 Jakub Jelinek <jakub@redhat.com> 2.3.90-15
 * Thu Oct 20 2005 Jakub Jelinek <jakub@redhat.com> 2.3.90-15
 - update from CVS
 - update from CVS
-  - be permissive in %n check because of kernel bug #165351 (#171240)
+  - be permissive in %%n check because of kernel bug #165351 (#171240)
   - don't misalign stack in pthread_once on x86_64 (#170786, IT#81521)
   - don't misalign stack in pthread_once on x86_64 (#170786, IT#81521)
   - many locale fixes
   - many locale fixes
 
 
@@ -2703,15 +2783,15 @@ rm -f *.filelist*
   - fix linuxthreads clocks
   - fix linuxthreads clocks
 - put xen libs into the glibc-2*.i686 package instead of a separate one
 - put xen libs into the glibc-2*.i686 package instead of a separate one
 - fix librt.so symlink in linuxthreads-devel
 - fix librt.so symlink in linuxthreads-devel
-- do not include linuxthreads-devel on %{auxarches},
+- do not include linuxthreads-devel on %%{auxarches},
   just on the base architectures
   just on the base architectures
 
 
 * Wed Apr 27 2005 Jakub Jelinek <jakub@redhat.com> 2.3.5-2
 * Wed Apr 27 2005 Jakub Jelinek <jakub@redhat.com> 2.3.5-2
 - update from CVS
 - update from CVS
   - with MALLOC_CHECK_=N N>0 (#153003)
   - with MALLOC_CHECK_=N N>0 (#153003)
   - fix recursive dlclose (#154641)
   - fix recursive dlclose (#154641)
-  - handle %z in strptime (#154804)
-  - automatically append /%{_lib}/obsolete/linuxthreads/
+  - handle %%z in strptime (#154804)
+  - automatically append /%%{_lib}/obsolete/linuxthreads/
     to standard library search path if LD_ASSUME_KERNEL=N N <= 2.4.19
     to standard library search path if LD_ASSUME_KERNEL=N N <= 2.4.19
     or for glibc 2.0 binaries (or broken ones that don't use errno/h_errno
     or for glibc 2.0 binaries (or broken ones that don't use errno/h_errno
     properly).  Warning: all those will stop working when LinuxThreads
     properly).  Warning: all those will stop working when LinuxThreads
@@ -2738,9 +2818,9 @@ rm -f *.filelist*
 - fix <pthread.h> and <bits/libc-lock.h> with -std=c89 -fexceptions (#153774)
 - fix <pthread.h> and <bits/libc-lock.h> with -std=c89 -fexceptions (#153774)
 
 
 * Mon Apr  4 2005 Jakub Jelinek <jakub@redhat.com> 2.3.4-20
 * Mon Apr  4 2005 Jakub Jelinek <jakub@redhat.com> 2.3.4-20
-- move LinuxThreads libraries to /%{_lib}/obsolete/linuxthreads/
-  and NPTL libraries to /%{_lib}.  To run a program against LinuxThreads,
-  LD_ASSUME_KERNEL=2.4.xx LD_LIBRARY_PATH=/%{_lib}/obsolete/linuxthreads/
+- move LinuxThreads libraries to /%%{_lib}/obsolete/linuxthreads/
+  and NPTL libraries to /%%{_lib}.  To run a program against LinuxThreads,
+  LD_ASSUME_KERNEL=2.4.xx LD_LIBRARY_PATH=/%%{_lib}/obsolete/linuxthreads/
   is now needed
   is now needed
 - bzip2 ChangeLog* files instead of gzipping them
 - bzip2 ChangeLog* files instead of gzipping them
 
 
@@ -2750,9 +2830,9 @@ rm -f *.filelist*
   - fix initgroups (BZ#661)
   - fix initgroups (BZ#661)
 - kill nptl-devel subpackage, add linuxthreads-devel,
 - kill nptl-devel subpackage, add linuxthreads-devel,
   compile and link by default against NPTL and only with
   compile and link by default against NPTL and only with
-  -I/usr/include/linuxthreads -L/usr/%{_lib}/linuxthreads
+  -I/usr/include/linuxthreads -L/usr/%%{_lib}/linuxthreads
   against LinuxThreads
   against LinuxThreads
-- package /usr/lib/debug/%{_lib}/tls/i{5,6}86 symlinks in
+- package /usr/lib/debug/%%{_lib}/tls/i{5,6}86 symlinks in
   i386 glibc-debuginfo
   i386 glibc-debuginfo
 - limit number of ChangeLog* files in glibc-common %%doc
 - limit number of ChangeLog* files in glibc-common %%doc
   to last 2.5 years of changes only to save space
   to last 2.5 years of changes only to save space
@@ -2781,14 +2861,14 @@ rm -f *.filelist*
   - with -D_FORTIFY_SOURCE=*, avoid defining read and a bunch of others
   - with -D_FORTIFY_SOURCE=*, avoid defining read and a bunch of others
     as function-like macros, there are too many broken programs
     as function-like macros, there are too many broken programs
     out there
     out there
-- add %%dir %{_prefix}/%{_lib}/gconv to glibc's file list (#151372)
+- add %%dir %%{_prefix}/%%{_lib}/gconv to glibc's file list (#151372)
 
 
 * Sun Mar  6 2005 Roland McGrath <roland@redhat.com> 2.3.4-14
 * Sun Mar  6 2005 Roland McGrath <roland@redhat.com> 2.3.4-14
 - fix bits/socket2.h macro typos
 - fix bits/socket2.h macro typos
 
 
 * Sat Mar  5 2005 Jakub Jelinek <jakub@redhat.com> 2.3.4-12
 * Sat Mar  5 2005 Jakub Jelinek <jakub@redhat.com> 2.3.4-12
 - fix tst-chk{2,3}
 - fix tst-chk{2,3}
-- fix up AS_NEEDED directive in /usr/%{_lib}/libc.so
+- fix up AS_NEEDED directive in /usr/%%{_lib}/libc.so
 - BuildReq binutils >= 2.15.94.0.2-1 for AS_NEEDED, in
 - BuildReq binutils >= 2.15.94.0.2-1 for AS_NEEDED, in
   glibc-devel Conflict with binutils < 2.15.94.0.2-1
   glibc-devel Conflict with binutils < 2.15.94.0.2-1
 
 
@@ -2840,9 +2920,9 @@ rm -f *.filelist*
   - change regex \B handling to match old GNU regex as well as perl/grep's dfa
   - change regex \B handling to match old GNU regex as well as perl/grep's dfa
     (from empty string inside of word to empty string not at a word boundary,
     (from empty string inside of word to empty string not at a word boundary,
      BZ#693)
      BZ#693)
-  - slightly optimize i686 TLS accesses, use direct TLS %gs access in sem_*
+  - slightly optimize i686 TLS accesses, use direct TLS %%gs access in sem_*
     and allow building -mno-tls-direct-seg-refs glibc that is free of direct TLS
     and allow building -mno-tls-direct-seg-refs glibc that is free of direct TLS
-    %gs access with negative offsets
+    %%gs access with negative offsets
   - fix addseverity
   - fix addseverity
   - fix fmemopen
   - fix fmemopen
   - fix rewinddir
   - fix rewinddir
@@ -2883,7 +2963,7 @@ rm -f *.filelist*
 - if /sbin/ldconfig doesn't exist when running
 - if /sbin/ldconfig doesn't exist when running
   glibc_post_upgrade.%%{_target_cpu}, just don't attempt to run it.
   glibc_post_upgrade.%%{_target_cpu}, just don't attempt to run it.
   This can happen during first install of bi-arch glibc and the
   This can happen during first install of bi-arch glibc and the
-  other arch glibc's %post wil run /sbin/ldconfig (#143326)
+  other arch glibc's %%post wil run /sbin/ldconfig (#143326)
 - use -o and --nostdlib options to create all needed
 - use -o and --nostdlib options to create all needed
   gconv-modules.cache files on bi-arch setups
   gconv-modules.cache files on bi-arch setups
 
 
@@ -2922,7 +3002,7 @@ rm -f *.filelist*
 
 
 * Tue Dec 14 2004 Jakub Jelinek <jakub@redhat.com> 2.3.3-92
 * Tue Dec 14 2004 Jakub Jelinek <jakub@redhat.com> 2.3.3-92
 - update from CVS
 - update from CVS
-- fix %{_prefix}/libexec/getconf filenames generation
+- fix %%{_prefix}/libexec/getconf filenames generation
 
 
 * Tue Dec 14 2004 Jakub Jelinek <jakub@redhat.com> 2.3.3-91
 * Tue Dec 14 2004 Jakub Jelinek <jakub@redhat.com> 2.3.3-91
 - update from CVS
 - update from CVS
@@ -2932,7 +3012,7 @@ rm -f *.filelist*
     (#142214)
     (#142214)
   - some more realloc corruption checks
   - some more realloc corruption checks
   - fix getconf _POSIX_V6_WIDTH_RESTRICTED_ENVS output,
   - fix getconf _POSIX_V6_WIDTH_RESTRICTED_ENVS output,
-    tweak %{_prefix}/libexec/getconf/ filenames
+    tweak %%{_prefix}/libexec/getconf/ filenames
 
 
 * Fri Dec 10 2004 Jakub Jelinek <jakub@redhat.com> 2.3.3-90
 * Fri Dec 10 2004 Jakub Jelinek <jakub@redhat.com> 2.3.3-90
 - update from CVS
 - update from CVS
@@ -2960,8 +3040,8 @@ rm -f *.filelist*
     check_dst_limits_calc_pos_1 (#142060)
     check_dst_limits_calc_pos_1 (#142060)
   - make getpid () working with clone/clone2 without CLONE_THREAD
   - make getpid () working with clone/clone2 without CLONE_THREAD
     (so far on i386/x86_64/ia64 only)
     (so far on i386/x86_64/ia64 only)
-- move %{_prefix}/libexec/getconf/* to glibc from glibc-common
-- make %{_prefix}/libexec/getconf directory owned by glibc package
+- move %%{_prefix}/libexec/getconf/* to glibc from glibc-common
+- make %%{_prefix}/libexec/getconf directory owned by glibc package
 
 
 * Fri Dec  3 2004 Jakub Jelinek <jakub@redhat.com> 2.3.3-87
 * Fri Dec  3 2004 Jakub Jelinek <jakub@redhat.com> 2.3.3-87
 - update from CVS
 - update from CVS
@@ -2986,7 +3066,7 @@ rm -f *.filelist*
   - support -v specification in getconf
   - support -v specification in getconf
   - fix sysconf (_SC_LFS64_CFLAGS) etc.
   - fix sysconf (_SC_LFS64_CFLAGS) etc.
   - avoid thread stack aliasing issues on EM64T (#140803)
   - avoid thread stack aliasing issues on EM64T (#140803)
-- move %{_prefix}/include/nptl headers from nptl-devel
+- move %%{_prefix}/include/nptl headers from nptl-devel
   to glibc-headers, so that even NPTL specific programs
   to glibc-headers, so that even NPTL specific programs
   can be built bi-arch without problems
   can be built bi-arch without problems
 
 
@@ -3018,8 +3098,8 @@ rm -f *.filelist*
 
 
 * Fri Nov 19 2004 Jakub Jelinek <jakub@redhat.com> 2.3.3-80
 * Fri Nov 19 2004 Jakub Jelinek <jakub@redhat.com> 2.3.3-80
 - update from CVS
 - update from CVS
-  - with -D_FORTIFY_SOURCE=2, prevent missing %N$ formats
-  - for -D_FORTIFY_SOURCE=2 and %n in writable format string,
+  - with -D_FORTIFY_SOURCE=2, prevent missing %%N$ formats
+  - for -D_FORTIFY_SOURCE=2 and %%n in writable format string,
     issue special error message instead of using the buffer overflow
     issue special error message instead of using the buffer overflow
     detected one
     detected one
   - speedup regex searching with REG_NOSUB, add RE_NO_SUB,
   - speedup regex searching with REG_NOSUB, add RE_NO_SUB,
@@ -3447,7 +3527,7 @@ rm -f *.filelist*
   - strtol speed optimization
   - strtol speed optimization
   - don't try to use certainly unimplemented syscalls on ppc64
   - don't try to use certainly unimplemented syscalls on ppc64
 - kill -debug subpackage, move the libs to glibc-debuginfo{,-common}
 - kill -debug subpackage, move the libs to glibc-debuginfo{,-common}
-  into /usr/lib/debug/usr/%{_lib}/ directory
+  into /usr/lib/debug/usr/%%{_lib}/ directory
 - fix c_stubs with gcc 3.4
 - fix c_stubs with gcc 3.4
 - move all the up to 3 builds into %%build scriptlet and
 - move all the up to 3 builds into %%build scriptlet and
   leave only installation in the %%install scriptlet
   leave only installation in the %%install scriptlet
@@ -3796,7 +3876,7 @@ rm -f *.filelist*
   - fix zic bug on 64-bit platforms
   - fix zic bug on 64-bit platforms
   - some TLS handling fixes
   - some TLS handling fixes
   - make ldconfig look into alternate ABI dirs by default (#99402)
   - make ldconfig look into alternate ABI dirs by default (#99402)
-- move %{_datadir}/zoneinfo to tzdata package, so that it can be
+- move %%{_datadir}/zoneinfo to tzdata package, so that it can be
   errataed separately from glibc
   errataed separately from glibc
 - new add-on - rtkaio
 - new add-on - rtkaio
 - prereq libgcc, as glibc now relies on libgcc_s.so.1 for pthread_cancel
 - prereq libgcc, as glibc now relies on libgcc_s.so.1 for pthread_cancel
@@ -4006,7 +4086,7 @@ rm -f *.filelist*
 - fix NPTL pthread_cond_timedwait
 - fix NPTL pthread_cond_timedwait
 - fix sysconf (_SC_MONOTONIC_CLOCK)
 - fix sysconf (_SC_MONOTONIC_CLOCK)
 - use /%%{_lib}/tls instead of /lib/tls on x86-64
 - use /%%{_lib}/tls instead of /lib/tls on x86-64
-- add /%{_lib}/tls/librt*so* and /%{_lib}/i686/librt*so*
+- add /%%{_lib}/tls/librt*so* and /%%{_lib}/i686/librt*so*
 - display content of .out files for all make check failures
 - display content of .out files for all make check failures
 
 
 * Wed Mar 26 2003 Jakub Jelinek <jakub@redhat.com> 2.3.2-17
 * Wed Mar 26 2003 Jakub Jelinek <jakub@redhat.com> 2.3.2-17
@@ -4072,7 +4152,7 @@ rm -f *.filelist*
 - update from CVS
 - update from CVS
 - only warn about errno, h_errno or _res for binaries, never
 - only warn about errno, h_errno or _res for binaries, never
   libraries
   libraries
-- rebuilt with gcc-3.2.2-4 to use direct %gs TLS access insn sequences
+- rebuilt with gcc-3.2.2-4 to use direct %%gs TLS access insn sequences
 
 
 * Sun Feb 23 2003 Jakub Jelinek <jakub@redhat.com> 2.3.2-2
 * Sun Feb 23 2003 Jakub Jelinek <jakub@redhat.com> 2.3.2-2
 - update from CVS
 - update from CVS
@@ -4255,8 +4335,8 @@ rm -f *.filelist*
 
 
 * Fri Dec 13 2002 Jakub Jelinek <jakub@redhat.com> 2.3.1-14
 * Fri Dec 13 2002 Jakub Jelinek <jakub@redhat.com> 2.3.1-14
 - update from CVS
 - update from CVS
-  - replace __libc_lock_needed@GOTOFF(%ebx) with
-    %gs:offsetof(tcbhead_t, multiple_threads)
+  - replace __libc_lock_needed@GOTOFF(%%ebx) with
+    %%gs:offsetof(tcbhead_t, multiple_threads)
   - start of new NPTL cancellation wrappers
   - start of new NPTL cancellation wrappers
 
 
 * Thu Dec 12 2002 Jakub Jelinek <jakub@redhat.com> 2.3.1-13
 * Thu Dec 12 2002 Jakub Jelinek <jakub@redhat.com> 2.3.1-13
@@ -4309,7 +4389,7 @@ rm -f *.filelist*
 
 
 * Thu Oct 24 2002 Jakub Jelinek <jakub@redhat.com> 2.3.1-4
 * Thu Oct 24 2002 Jakub Jelinek <jakub@redhat.com> 2.3.1-4
 - update from CVS
 - update from CVS
-  - fixed %a and %A in *printf (#75821)
+  - fixed %%a and %%A in *printf (#75821)
   - fix re_comp memory leaking (#76594)
   - fix re_comp memory leaking (#76594)
 
 
 * Tue Oct 22 2002 Jakub Jelinek <jakub@redhat.com> 2.3.1-3
 * Tue Oct 22 2002 Jakub Jelinek <jakub@redhat.com> 2.3.1-3
@@ -4437,7 +4517,7 @@ rm -f *.filelist*
 
 
 * Wed Aug 14 2002 Jakub Jelinek <jakub@redhat.com> 2.2.90-21
 * Wed Aug 14 2002 Jakub Jelinek <jakub@redhat.com> 2.2.90-21
 - fix path to locale-archive in libc reader
 - fix path to locale-archive in libc reader
-- build locale archive at glibc-common %post time
+- build locale archive at glibc-common %%post time
 - export __strtold_internal and __wcstold_internal on Alpha again
 - export __strtold_internal and __wcstold_internal on Alpha again
 - workaround some localedata problems
 - workaround some localedata problems
 
 
@@ -4553,7 +4633,7 @@ rm -f *.filelist*
 - rebuilt against newer glibc-kernheaders to use the correct
 - rebuilt against newer glibc-kernheaders to use the correct
   PATH_MAX
   PATH_MAX
 - handle .athlon.rpm glibc the same way as .i686.rpm
 - handle .athlon.rpm glibc the same way as .i686.rpm
-- add a couple of .ISO-8859-15 locales (#61922)
+- add a couple of .ISO-8859-15 locales (#61908)
 - readd temporarily currencies which were superceeded by Euro
 - readd temporarily currencies which were superceeded by Euro
   into the list of accepted currencies by localedef to make
   into the list of accepted currencies by localedef to make
   standard conformance testsuites happy
   standard conformance testsuites happy
@@ -4682,9 +4762,9 @@ rm -f *.filelist*
 
 
 * Fri Aug 10 2001 Jakub Jelinek <jakub@redhat.com> 2.2.4-4
 * Fri Aug 10 2001 Jakub Jelinek <jakub@redhat.com> 2.2.4-4
 - don't crash on catclose(-1)
 - don't crash on catclose(-1)
-- fix wscanf %[] handling
+- fix wscanf %%[] handling
 - fix return value from swprintf
 - fix return value from swprintf
-- handle year + %U/%W week + week day in strptime
+- handle year + %%U/%%W week + week day in strptime
 
 
 * Thu Aug  9 2001 Jakub Jelinek <jakub@redhat.com> 2.2.4-3
 * Thu Aug  9 2001 Jakub Jelinek <jakub@redhat.com> 2.2.4-3
 - update from CVS to
 - update from CVS to
@@ -4700,7 +4780,7 @@ rm -f *.filelist*
 * Sat Aug  4 2001 Jakub Jelinek <jakub@redhat.com>
 * Sat Aug  4 2001 Jakub Jelinek <jakub@redhat.com>
 - update from CVS
 - update from CVS
   - fix iconv cache handling
   - fix iconv cache handling
-- glibc should not own %{_infodir}, %{_mandir} nor %{_mandir}/man3 (#50673)
+- glibc should not own %%{_infodir}, %%{_mandir} nor %%{_mandir}/man3 (#50673)
 - add gconv-modules.cache as emtpy config file (#50699)
 - add gconv-modules.cache as emtpy config file (#50699)
 - only run iconvconfig if /usr is mounted read-write (#50667)
 - only run iconvconfig if /usr is mounted read-write (#50667)