Browse Source

updated 3 packages

binutils-2.37-2

gcc-11.2.1-2

glibc-2.34-3
Tomohiro "Tomo-p" KATO 2 years ago
parent
commit
18103aba8d
3 changed files with 374 additions and 339 deletions
  1. 40 38
      b/binutils/binutils-vl.spec
  2. 222 170
      g/gcc/gcc-vl.spec
  3. 112 131
      g/glibc/glibc-vl.spec

+ 40 - 38
b/binutils/binutils-vl.spec

@@ -40,7 +40,7 @@ Summary:        A GNU collection of binary utilities.
 Summary(ja):    GNU 版バイナリユーティリティ集
 Name:           binutils
 Version:        2.37
-Release:        1%{?_dist_release}
+Release:        2%{?_dist_release}
 Group:          programming
 Vendor:         Project Vine
 Distribution:   Vine Linux
@@ -57,7 +57,7 @@ Source2:        binutils-2.19.50.0.1-output-format.sed
 
 #----------------------------------------------------------------------------
 
-Patch00: binutils-2.37-20210802.patch
+Patch00: binutils-2.37-20211031.patch
 
 # Purpose:  Use /lib64 and /usr/lib64 instead of /lib and /usr/lib in the
 #           default library search path of 64-bit targets.
@@ -165,6 +165,39 @@ Patch16: binutils-testsuite-fixes.patch
 # Lifetime: Fixed in 2.38 maybe
 Patch17: binutils-gold-i386-gnu-property-notes.patch
 
+# Purpose:  Ensure that the 0'th entry in DWARF-5 directory tables generated
+#            by gas contains the current working directory.
+# Lifetime: Fixed in 2.38
+Patch18: binutils-dwarf-5-dir0.patch
+
+# Purpose:  Ensure that the manual pages are generated.
+# Lifetime: Fixed in 2.38
+#Patch19: binutils-missing-man-pages.patch
+
+# Purpose: Close the file descriptor if there is no archive plugin file
+#          descriptor to avoid running out of file descriptors on thin archives
+#          with many archive members.
+# Lifetime: Fixed in 2.38
+#Patch20: binutils-bfd-close-fds.patch
+
+# Purpose: Allow the binutils to be configured with any (recent) version of
+#          autoconf.
+# Lifetime: Fixed in 2.38 (maybe ?)
+Patch21: binutils-autoconf-version.patch
+
+# Purpose:  Set the entry address of shared libraries to 0, so that they can
+#           be detected by the loader and not run as an executable.
+# Lifetime: Permanent.
+Patch22: binutils-ld-default-entry-of-0-for-shared.patch
+
+# Purpose:  Fix a seg-fault compiling the efivar libraries.
+# Lifetime: Fixed in 2.38.
+Patch23: binutils-empty-MIND-string.patch
+
+# Purpose:  Fix ccache test failure introduced with 2.37
+# Lifetime: Fixed in 2.38.
+Patch24: binutils-gas-Use-the-directory-name-in-.file-0.patch
+
 #----------------------------------------------------------------------------
 
 Patch1001: binutils-2.26-uio-vine.patch
@@ -190,8 +223,6 @@ BuildRequires: dejagnu, zlib-static, glibc-devel, sharutils
 #BuildRequires: dejagnu, zlib-static, glibc-static, sharutils
 %endif
 Conflicts: gcc-c++ < 4.0.0
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 %ifarch ia64
 Obsoletes: gnupro
 %endif
@@ -239,8 +270,6 @@ strings (ファイルから表示可能な文字列を表示する)、strip (シ
 Summary: BFD and opcodes static libraries and header files
 Group: programming
 Conflicts: binutils < 2.17.50.0.3-4
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 Requires: zlib-devel
 
 %description devel
@@ -566,14 +595,6 @@ rm -rf $RPM_BUILD_ROOT
   /sbin/alternatives --auto ld 
 %endif
 
-if [ -e %{_infodir}/binutils.info.gz ]
-then
-  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/as.info.gz
-  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/binutils.info.gz
-  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/gprof.info.gz
-  /sbin/install-info --info-dir=%{_infodir} %{_infodir}/ld.info.gz
-fi
-
 %preun
 %ifarch %gold_arches
 if [ $1 = 0 ]; then
@@ -582,30 +603,6 @@ if [ $1 = 0 ]; then
 fi
 %endif
 
-if [ $1 = 0 ] ;then
-  if [ -e %{_infodir}/binutils.info.gz ]
-  then
-      /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/as.info.gz
-      /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/binutils.info.gz
-      /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/gprof.info.gz
-      /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/ld.info.gz
-  fi
-fi
-
-%post devel
-if [ -e %{_infodir}/bfd.info.gz ] 
-then
-    /sbin/install-info --info-dir=%{_infodir} %{_infodir}/bfd.info.gz
-fi
-
-%preun devel
-if [ $1 = 0 ] ;then
-  if [ -e %{_infodir}/bfd.info.gz ]
-  then
-      /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/bfd.info.gz
-  fi
-fi
-
 
 %files -f binutils.lang -f binutils.list
 %license COPYING COPYING3 COPYING3.LIB COPYING.LIB
@@ -638,6 +635,11 @@ fi
 
 
 %changelog
+* Mon Nov 01 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 2.37-2
+- updated Patch00.
+- imported Patch18-24 from rawhide.
+- dropped install-info scriptlets.
+
 * Wed Aug 04 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> - 2.37-1
 - updated to 2.37.
 - imported Patch00 from upstream.

+ 222 - 170
g/gcc/gcc-vl.spec

@@ -5,7 +5,7 @@
 %global gcc_major 11
 # Note, gcc_release must be integer, if you want to add suffixes to
 # %{release}, append them after %{gcc_release} on Release: line.
-%global gcc_release 1
+%global gcc_release 2
 
 Summary:        GNU Compiler Collection (C, C++, Objective-C, ...)
 Summary(ja):    GNU コンパイラコレクション (C, C++, Objective-C, ...)
@@ -203,8 +203,6 @@ Obsoletes: libmpx < %{version}
 Obsoletes: libmpx-static < %{version}
 %endif
 Provides: gcc4 = %{version}-%{release}
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 AutoReq: true
 
 Patch0: gcc11-hack.patch
@@ -221,7 +219,7 @@ Patch11: gcc11-rh1574936.patch
 Patch12: gcc11-d-shared-libphobos.patch
 Patch13: gcc11-pr99341-revert.patch
 
-Patch10000: gcc-11.2-20210803.patch
+Patch10000: gcc-11.2-20211031.patch
 
 # On ARM EABI systems, we do want -gnueabi to be part of the
 # target triple.
@@ -421,8 +419,6 @@ BuildRequires: gmp-devel >= 4.2.2-3vl2
 BuildRequires: mpfr-devel >= 2.2.1
 BuildRequires: libmpc-devel >= 0.8.1
 Obsoletes: gcc4-gfortran
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 Autoreq: true
 
 %description gfortran
@@ -474,8 +470,6 @@ This package contains static Fortran libraries.
 Summary: GCC OpenMP v3.0 shared support library
 Summary(ja): GCC OpenMP v3.0 共有ライブラリ
 Group: system
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 
 %description -n libgomp
 This package contains GCC shared support library which is needed
@@ -509,8 +503,6 @@ Summary: Support for embedding GCC inside programs and libraries
 Group: programming
 BuildRequires: python3-sphinx
 Requires: libgccjit = %{version}-%{release}
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 
 %description -n libgccjit-devel
 This package contains header files and documentation for GCC JIT front-end.
@@ -520,8 +512,6 @@ This package contains header files and documentation for GCC JIT front-end.
 Summary: GCC __float128 shared support library
 Summary(ja): GCC __float128 サポートのための共有ライブラリ
 Group: system
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 
 %description -n libquadmath
 This package contains GCC shared support library which is needed
@@ -567,8 +557,6 @@ using REAL*16 and programs using __float128 math.
 %package -n libitm
 Summary: The GNU Transactional Memory library
 Group: system
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 
 %description -n libitm
 This package contains the GNU Transactional Memory library
@@ -598,8 +586,6 @@ This package contains GNU Transactional Memory static libraries.
 %package -n libatomic
 Summary: The GNU Atomic library
 Group: system
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 
 %description -n libatomic
 This package contains the GNU Atomic library
@@ -619,8 +605,6 @@ This package contains GNU Atomic static libraries.
 %package -n libasan
 Summary: The Address Sanitizer runtime library
 Group: system
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 
 %description -n libasan
 This package contains the Address Sanitizer library
@@ -639,8 +623,6 @@ This package contains Address Sanitizer static runtime library.
 %package -n libtsan
 Summary: The Thread Sanitizer runtime library
 Group: system
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 
 %description -n libtsan
 This package contains the Thread Sanitizer library
@@ -659,8 +641,6 @@ This package contains Thread Sanitizer static runtime library.
 %package -n libubsan
 Summary: The Undefined Behavior Sanitizer runtime library
 Group: system
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 
 %description -n libubsan
 This package contains the Undefined Behavior Sanitizer library
@@ -679,8 +659,6 @@ This package contains Undefined Behavior Sanitizer static runtime library.
 %package -n liblsan
 Summary: The Leak Sanitizer runtime library
 Group: system
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 
 %description -n liblsan
 This package contains the Leak Sanitizer library
@@ -702,8 +680,6 @@ Summary(ja): C プリプロセッサ
 Group: programming
 Provides: cpp = %{version}-%{release}
 Autoreq: true
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 
 %description cpp
 Cpp is the GNU C-Compatible Compiler Preprocessor.
@@ -737,8 +713,6 @@ Requires: libgnat = %{version}-%{release}
 Requires: libgnat-devel = %{version}-%{release}
 Obsoletes: gnat-devel, gcc3-gnat
 Autoreq: true
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 
 %description gnat
 GNAT is a GNU Ada 95 front-end to GCC. This package includes development tools,
@@ -793,8 +767,6 @@ Group: programming
 Requires: gcc = %{version}-%{release}
 Requires: libgo = %{version}-%{release}
 Requires: libgo-devel = %{version}-%{release}
-Requires(post): /sbin/install-info
-Requires(preun): /sbin/install-info
 Autoreq: true
 
 %description go
@@ -844,9 +816,149 @@ This package contains header files and other support files
 for compiling GCC plugins.  The GCC plugin ABI is currently
 not stable, so plugins must be rebuilt any time GCC is updated.
 
+################################################# libgcc-32bit
+%package -n libgcc-32bit
+Summary: GCC version %{version} shared support library
+Summary(ja): GCC バージョン %{version} 共有サポートライブラリ
+Group: system,legacy
+Autoreq: false
+
+%description -n libgcc-32bit
+This package contains GCC shared support library which is needed
+e.g. for exception handling support.
+
+%description -n libgcc-32bit -l ja
+このパッケージには GCC 共有サポートライブラリが含まれます。
+これは例えば例外ハンドリングサポートに必要です。
+
+################################################# libstdc++-32bit
+%package -n libstdc++-32bit
+Summary: GNU Standard C++ Library
+Summary(ja): GNU 標準 C++ ライブラリ
+Group: system,legacy
+Autoreq: true
+Requires: compat32-glibc >= 2.10.90
+
+%description -n libstdc++-32bit
+The libstdc++ package contains a rewritten standard compliant GCC Standard
+C++ Library.
+
+%description -n libstdc++-32bit -l ja
+libstdc++ パッケージには、標準準拠に書き直された
+GCC 標準 C++ ライブラリが収録されています。
+
+################################################# libobjc-32bit
+%package -n libobjc-32bit
+Summary: Objective-C runtime
+Summary(ja): Objective C ランタイムライブラリ
+Group: system,legacy
+Autoreq: true
+
+%description -n libobjc-32bit
+This package contains Objective-C shared library which is needed to run
+Objective-C dynamically linked programs.
+
+%description -n libobjc-32bit -l ja
+このパッケージには Objective-C 共有ライブラリが収められています。
+これは Objective-C にダイナミックリンクされたプログラムの実行に必要と
+なります。
+
+################################################# libgfortran-32bit
+%package -n libgfortran-32bit
+Summary: Fortran runtime
+Summary(ja): Fortran ランタイム
+Group: system,legacy
+Autoreq: true
+%if %{build_libquadmath}
+Requires: libquadmath-32bit = %{version}-%{release}
+%endif
+
+%description -n libgfortran-32bit
+This package contains Fortran shared library which is needed to run
+Fortran dynamically linked programs.
+
+%description -n libgfortran-32bit -l ja
+このパッケージには Fortran 共有ライブラリが収められています。
+これは Fortran にダイナミックリンクされたプログラムの実行に
+必要となります。
+
+################################################# libgomp-32bit
+%package -n libgomp-32bit
+Summary: GCC OpenMP v3.0 shared support library
+Summary(ja): GCC OpenMP v3.0 共有ライブラリ
+Group: system,legacy
+
+%description -n libgomp-32bit
+This package contains GCC shared support library which is needed
+for OpenMP v3.0 support.
+
+%description -n libgomp-32bit -l ja
+このパッケージには OpenMP v3.0 をサポートする GCC 共有ライブラリが
+収められています。
+
+################################################# libquadmath-32bit
+%package -n libquadmath-32bit
+Summary: GCC __float128 shared support library
+Summary(ja): GCC __float128 サポートのための共有ライブラリ
+Group: system,legacy
+
+%description -n libquadmath-32bit
+This package contains GCC shared support library which is needed
+for __float128 math support and for Fortran REAL*16 support.
+
+%description -n libquadmath-32bit -l ja
+このパッケージには __float128 データ型と Fortran REAL*16 をサポートする
+ために必要な GCC 共有ライブラリが収められています。
+
+################################################# libitm-32bit
+%package -n libitm-32bit
+Summary: The GNU Transactional Memory library
+Group: system,legacy
+
+%description -n libitm-32bit
+This package contains the GNU Transactional Memory library
+which is a GCC transactional memory support runtime library.
+
+################################################# libatomic-32bit
+%package -n libatomic-32bit
+Summary: The GNU Atomic library
+Group: system,legacy
+
+%description -n libatomic-32bit
+This package contains the GNU Atomic library
+which is a GCC support runtime library for atomic operations not supported
+by hardware.
+
+################################################# libasan-32bit
+%package -n libasan-32bit
+Summary: The Address Sanitizer runtime library
+Group: system,legacy
+
+%description -n libasan-32bit
+This package contains the Address Sanitizer library
+which is used for -fsanitize=address instrumented programs.
+
+################################################# libubsan-32bit
+%package -n libubsan-32bit
+Summary: The Undefined Behavior Sanitizer runtime library
+Group: system,legacy
+
+%description -n libubsan-32bit
+This package contains the Undefined Behavior Sanitizer library
+which is used for -fsanitize=undefined instrumented programs.
+
+################################################# libgo-32bit
+%package -n libgo-32bit
+Summary: Go runtime
+Group: system,legacy
+Autoreq: true
+
+%description -n libgo-32bit
+This package contains Go shared library which is needed to run
+Go dynamically linked programs.
+
 #####################################################################
 %debug_package
-
 #####################################################################
 
 
@@ -1744,18 +1856,6 @@ rm -rf testlogs-%{_target_platform}-%{version}-%{release}
 rm -rf $RPM_BUILD_ROOT
 
 
-%post
-if [ -f %{_infodir}/gcc.info.gz ]; then
-  /sbin/install-info \
-    --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || :
-fi
-
-%preun
-if [ $1 = 0 -a -f %{_infodir}/gcc.info.gz ]; then
-  /sbin/install-info --delete \
-    --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || :
-fi
-
 %posttrans
 if [ ! -x %{_bindir}/cc ]; then
   ln -sf gcc %{_bindir}/cc
@@ -1766,55 +1866,11 @@ if [ ! -x %{_bindir}/c++ ]; then
   ln -sf g++ %{_bindir}/c++
 fi
 
-%post cpp
-if [ -f %{_infodir}/cpp.info.gz ]; then
-  /sbin/install-info \
-    --info-dir=%{_infodir} %{_infodir}/cpp.info.gz || :
-fi
-
-%preun cpp
-if [ $1 = 0 -a -f %{_infodir}/cpp.info.gz ]; then
-  /sbin/install-info --delete \
-    --info-dir=%{_infodir} %{_infodir}/cpp.info.gz || :
-fi
-
-%post gfortran
-if [ -f %{_infodir}/gfortran.info.gz ]; then
-  /sbin/install-info \
-    --info-dir=%{_infodir} %{_infodir}/gfortran.info.gz || :
-fi
-
-%preun gfortran
-if [ $1 = 0 -a -f %{_infodir}/gfortran.info.gz ]; then
-  /sbin/install-info --delete \
-    --info-dir=%{_infodir} %{_infodir}/gfortran.info.gz || :
-fi
-
 %posttrans gfortran
 if [ ! -x %{_bindir}/f95 ]; then
   ln -sf gfortran %{_bindir}/f95
 fi
 
-%post gnat
-if [ -f %{_infodir}/gnat_rm.info.gz ]; then
-  /sbin/install-info \
-    --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz || :
-  /sbin/install-info \
-    --info-dir=%{_infodir} %{_infodir}/gnat_ugn.info.gz || :
-  /sbin/install-info \
-    --info-dir=%{_infodir} %{_infodir}/gnat-style.info.gz || :
-fi
-
-%preun gnat
-if [ $1 = 0 -a -f %{_infodir}/gnat_rm.info.gz ]; then
-  /sbin/install-info --delete \
-    --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz || :
-  /sbin/install-info --delete \
-    --info-dir=%{_infodir} %{_infodir}/gnat_ugn.info.gz || :
-  /sbin/install-info --delete \
-    --info-dir=%{_infodir} %{_infodir}/gnat-style.info.gz || :
-fi
-
 # Because glibc Prereq's libgcc and /sbin/ldconfig
 # comes from glibc, it might not exist yet when
 # libgcc is installed
@@ -1838,40 +1894,14 @@ if posix.access ("/sbin/ldconfig", "x") then
   end
 end
 
-%post -n libgomp
-if [ -f %{_infodir}/libgomp.info.gz ]; then
-  /sbin/install-info \
-    --info-dir=%{_infodir} %{_infodir}/libgomp.info.gz || :
-fi
-
-%preun -n libgomp
-if [ $1 = 0 -a -f %{_infodir}/libgomp.info.gz ]; then
-  /sbin/install-info --delete \
-    --info-dir=%{_infodir} %{_infodir}/libgomp.info.gz || :
-fi
+%post go
+%{_sbindir}/update-alternatives --install \
+  %{_prefix}/bin/go go %{_prefix}/bin/go.gcc 92 \
+  --slave %{_prefix}/bin/gofmt gofmt %{_prefix}/bin/gofmt.gcc
 
-%post -n libgccjit-devel
-if [ -f %{_infodir}/libgccjit.info.gz ]; then
-  /sbin/install-info \
-    --info-dir=%{_infodir} %{_infodir}/libgccjit.info.gz || :
-fi
-
-%preun -n libgccjit-devel
-if [ $1 = 0 -a -f %{_infodir}/libgccjit.info.gz ]; then
-  /sbin/install-info --delete \
-    --info-dir=%{_infodir} %{_infodir}/libgccjit.info.gz || :
-fi
-
-%post -n libquadmath
-if [ -f %{_infodir}/libquadmath.info.gz ]; then
-  /sbin/install-info \
-    --info-dir=%{_infodir} %{_infodir}/libquadmath.info.gz || :
-fi
-
-%preun -n libquadmath
-if [ $1 = 0 -a -f %{_infodir}/libquadmath.info.gz ]; then
-  /sbin/install-info --delete \
-    --info-dir=%{_infodir} %{_infodir}/libquadmath.info.gz || :
+%preun go
+if [ $1 = 0 ]; then
+  %{_sbindir}/update-alternatives --remove go %{_prefix}/bin/go.gcc
 fi
 
 
@@ -1928,28 +1958,13 @@ fi
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/unwind.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/omp.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/openacc.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/acc_prof.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdint.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdint-gcc.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdalign.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdnoreturn.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdatomic.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/gcov.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/acc_prof.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512bf16intrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512bf16vlintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/enqcmdintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vp2intersectintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vp2intersectvlintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/serializeintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/tsxldtrkintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxtileintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxint8intrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxbf16intrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/x86gprintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/uintrintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/hresetintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/keylockerintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avxvnniintrin.h
 %ifarch %{ix86} x86_64
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mmintrin.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xmmintrin.h
@@ -2029,6 +2044,22 @@ fi
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/movdirintrin.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/waitpkgintrin.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cldemoteintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512bf16vlintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512bf16intrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/enqcmdintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vp2intersectintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vp2intersectvlintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/serializeintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/tsxldtrkintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxtileintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxint8intrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxbf16intrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/x86gprintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/uintrintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/hresetintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/keylockerintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avxvnniintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mwaitintrin.h
 %endif
 %ifarch ia64
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ia64intrin.h
@@ -2221,10 +2252,6 @@ fi
 %defattr(-,root,root,-)
 /%{_lib}/libgcc_s-%{gcc_major}.so.1
 /%{_lib}/libgcc_s.so.1
-%ifarch %{multilib_64_archs}
-/lib/libgcc_s-%{gcc_major}.so.1
-/lib/libgcc_s.so.1
-%endif
 %{!?_licensedir:%global license %%doc}
 %license gcc/COPYING* COPYING.RUNTIME
 
@@ -2270,9 +2297,6 @@ fi
 %files -n libstdc++ -f libstdc++.lang
 %defattr(-,root,root,-)
 %{_prefix}/%{_lib}/libstdc++.so.6*
-%ifarch %{multilib_64_archs}
-%{_prefix}/lib/libstdc++.so.6*
-%endif
 %dir %{_datadir}/gdb
 %dir %{_datadir}/gdb/auto-load
 %dir %{_datadir}/gdb/auto-load/%{_prefix}
@@ -2369,9 +2393,6 @@ fi
 %files -n libobjc
 %defattr(-,root,root,-)
 %{_prefix}/%{_lib}/libobjc.so.4*
-%ifarch %{multilib_64_archs}
-%{_prefix}/lib/libobjc.so.4*
-%endif
 
 %files gfortran
 %defattr(-,root,root,-)
@@ -2426,9 +2447,6 @@ fi
 %files -n libgfortran
 %defattr(-,root,root,-)
 %{_prefix}/%{_lib}/libgfortran.so.5*
-%ifarch %{multilib_64_archs}
-%{_prefix}/lib/libgfortran.so.5*
-%endif
 
 %files -n libgfortran-static
 %defattr(-,root,root,-)
@@ -2534,9 +2552,6 @@ fi
 %files -n libgomp
 %defattr(-,root,root,-)
 %{_prefix}/%{_lib}/libgomp.so.1*
-%ifarch %{multilib_64_archs}
-%{_prefix}/lib/libgomp.so.1*
-%endif
 %{_infodir}/libgomp.info*
 %doc rpm.doc/changelogs/libgomp/ChangeLog*
 
@@ -2544,9 +2559,6 @@ fi
 %files -n libquadmath
 %defattr(-,root,root,-)
 %{_prefix}/%{_lib}/libquadmath.so.0*
-%ifarch %{multilib_64_archs}
-%{_prefix}/lib/libquadmath.so.0*
-%endif
 %{_infodir}/libquadmath.info*
 %{!?_licensedir:%global license %%doc}
 %license rpm.doc/libquadmath/COPYING*
@@ -2586,9 +2598,6 @@ fi
 %files -n libitm
 %defattr(-,root,root,-)
 %{_prefix}/%{_lib}/libitm.so.1*
-%ifarch %{multilib_64_archs}
-%{_prefix}/lib/libitm.so.1*
-%endif
 %{_infodir}/libitm.info*
 
 %files -n libitm-devel
@@ -2626,9 +2635,6 @@ fi
 %files -n libatomic
 %defattr(-,root,root,-)
 %{_prefix}/%{_lib}/libatomic.so.1*
-%ifarch %{multilib_64_archs}
-%{_prefix}/lib/libatomic.so.1*
-%endif
 
 %files -n libatomic-static
 %defattr(-,root,root,-)
@@ -2653,9 +2659,6 @@ fi
 %files -n libasan
 %defattr(-,root,root,-)
 %{_prefix}/%{_lib}/libasan.so.6*
-%ifarch %{multilib_64_archs}
-%{_prefix}/lib/libasan.so.6*
-%endif
 
 %files -n libasan-static
 %defattr(-,root,root,-)
@@ -2698,9 +2701,6 @@ fi
 %files -n libubsan
 %defattr(-,root,root,-)
 %{_prefix}/%{_lib}/libubsan.so.1*
-%ifarch %{multilib_64_archs}
-%{_prefix}/lib/libubsan.so.1*
-%endif
 
 %files -n libubsan-static
 %defattr(-,root,root,-)
@@ -2789,9 +2789,6 @@ fi
 %defattr(-,root,root,-)
 %attr(755,root,root) %{_prefix}/%{_lib}/libgo.so.%{go_soversion}.*.*
 %{_prefix}/%{_lib}/libgo.so.%{go_soversion}
-%ifarch %{multilib_64_archs}
-%{_prefix}/lib/libgo.so.%{go_soversion}*
-%endif
 
 %files -n libgo-devel
 %defattr(-,root,root,-)
@@ -2877,8 +2874,63 @@ fi
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/libcp1plugin.so*
 %doc rpm.doc/changelogs/libcc1/ChangeLog*
 
+%ifarch %{multilib_64_archs}
+
+%files -n libgcc-32bit
+/lib/libgcc_s-%{gcc_major}.so.1
+/lib/libgcc_s.so.1
+
+%files -n libstdc++-32bit
+%{_prefix}/lib/libstdc++.so.6*
+
+%files -n libobjc-32bit
+%{_prefix}/lib/libobjc.so.4*
+
+%files -n libgfortran-32bit
+%{_prefix}/lib/libgfortran.so.5*
+
+%files -n libgomp-32bit
+%{_prefix}/lib/libgomp.so.1*
+
+%if %{build_libquadmath}
+%files -n libquadmath-32bit
+%{_prefix}/lib/libquadmath.so.0*
+%endif
+
+%if %{build_libitm}
+%files -n libitm-32bit
+%{_prefix}/lib/libitm.so.1*
+%endif
+
+%if %{build_libatomic}
+%files -n libatomic-32bit
+%{_prefix}/lib/libatomic.so.1*
+%endif
+
+%if %{build_libasan}
+%files -n libasan-32bit
+%{_prefix}/lib/libasan.so.6*
+%endif
+
+%if %{build_libubsan}
+%files -n libubsan-32bit
+%{_prefix}/lib/libubsan.so.1*
+%endif
+
+%if %{build_go}
+%files -n libgo-32bit
+%{_prefix}/lib/libgo.so.%{go_soversion}*
+%endif
+
+%endif
+
 
 %changelog
+* Mon Nov 01 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 11.2.1-2
+- updated Patch10000.
+- separated 32bit shared libraries on x86_64.
+- dropped install-info scriptlets.
+
 * Wed Aug 04 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 11.2.1-1
 - updated tarball to 11.2.0.
 - re-imported patches from rawhide.

+ 112 - 131
g/glibc/glibc-vl.spec

@@ -1,15 +1,25 @@
 %bcond_with gcc5
 %bcond_with systemd
 
+# To build compat32-glibc, pass "--target i686" to rpmbuild on x86_64.
+%if "%{_target_cpu}" != "%(uname -p)"
+%global _sourcedir %{_topdir}/SOURCES/glibc
+%define build_compat32 1
+%define compat32_prefix compat32-
+%define compat32_group ,legacy
+%else
+%define build_compat32 0
+%endif
+
 %define glibcversion 2.34
 %define glibcsrcdir glibc-%{glibcversion}
 
 Summary: The GNU libc libraries
 Summary(ja): GNU libc ライブラリ
-Name: glibc
+Name: %{?compat32_prefix}glibc
 Version: %{glibcversion}
-Release: 2%{?_dist_release}%{?with_systemd:.systemd}
-Group: system
+Release: 3%{?_dist_release}%{?with_systemd:.systemd}
+Group: system%{?compat32_group}
 Vendor: Project Vine
 Distribution: Vine Linux
 
@@ -54,8 +64,8 @@ rpm.define("__debug_install_post bash " .. wrapper
 %define _no_recompute_build_ids 1
 %undefine _unique_build_ids
 
-# patch form upstream
-Patch0: glibc-2.34-20210824.patch
+# patch from upstream
+Patch0: glibc-2.34-20211029.patch
 
 # patches from Fedora
 #Patch1: glibc-post_upgrade.patch
@@ -79,13 +89,11 @@ Patch29: glibc-fedora-nsswitch.patch
 
 # security
 
-%define build_compat32 %{?_with_compat32:1}%{!?_with_compat32:0}
-
 ### glibc.spec.in follows:
 %define run_glibc_tests 1
 %define auxarches athlon sparcv9v sparc64v alphaev6
 %if %{build_compat32}
-%define auxarches i586 athlon sparcv9 alphaev6
+%define auxarches i686 i586 athlon sparcv9 alphaev6
 %endif
 %define xenarches i686 athlon
 %ifarch %{xenarches}
@@ -118,11 +126,15 @@ Patch29: glibc-fedora-nsswitch.patch
 %undefine __brp_ldconfig
 
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-Obsoletes: glibc-profile < 2.4
+%if %{build_compat32}
+Requires: glibc >= %{version}-%{release}
+%else
+Requires: glibc-common = %{version}-%{release}
 Provides: ldconfig
-# The dynamic linker supports DT_GNU_HASH
+%endif
 Provides: rtld(GNU_HASH)
-Requires: glibc-common = %{version}-%{release}
+Obsoletes: glibc-profile < 2.4
+# The dynamic linker supports DT_GNU_HASH
 # Require libgcc in case some program calls pthread_cancel in its %%post
 Requires(pre): basesystem, libgcc
 # This is for building auxiliary programs like memusage, nscd
@@ -201,30 +213,6 @@ glibc パッケージはシステム上の複数のプログラムで使われ
 この二つのライブラリ抜きでは、Linux システムは機能しません。
 
 
-%package -n compat32-%{name}
-Summary: The GNU libc libraries.
-Summary(ja): GNU libc ライブラリ
-Group: system
-Requires: %{name} >= %{version}-%{release}
-
-%description -n compat32-%{name}
-The glibc package contains standard libraries which are used by
-multiple programs on the system. In order to save disk space and
-memory, as well as to make upgrading easier, common system code is
-kept in one place and shared between programs. This particular package
-contains the most important sets of shared libraries: the standard C
-library and the standard math library. Without these two libraries, a
-Linux system will not function.
-
-%description -n compat32-%{name} -l ja
-glibc パッケージはシステム上の複数のプログラムで使われる標準ライブラリを
-ふくみます。ディスクスペースとメモリを節約したり、アップグレードを
-用意にするために、共通のシステムコードは一つの場所におかれ、プログラム
-間で共有されます。この部分的なパッケージはシェアドライブラリのかなり
-重要なセットをふくみます: 標準 C ライブラリと標準数値ライブラリです。
-この二つのライブラリ抜きでは、Linux システムは機能しません。
-
-
 %if %{xenpackage}
 %package xen
 Summary: The GNU libc libraries (optimized for running under Xen)
@@ -243,11 +231,14 @@ Install glibc-xen if you might run your system under the Xen hypervisor.
 %package devel
 Summary: Object files for development using standard C libraries.
 Summary(ja): 標準 C ライブラリで使われるオブジェクトファイル
-Group: programming
-Requires(pre): /sbin/install-info
-Requires(pre): %{name}-headers
-Requires: %{name}-headers = %{version}-%{release}
+Group: programming{?compat32_group}
 Requires: %{name} = %{version}-%{release}
+%if %{build_compat32}
+Requires: glibc-devel >= %{version}-%{release}
+%else
+Requires(pre): glibc-headers
+Requires: glibc-headers = %{version}-%{release}
+%endif
 
 %description devel
 The glibc-devel package contains the object files necessary
@@ -270,38 +261,10 @@ glibc-devel パッケージには (ほとんどすべてのプログラムで使
 をインストールしてください。
 
 
-%package -n compat32-%{name}-devel
-Summary: Object files for development using standard C libraries.
-Summary(ja): 標準 C ライブラリで使われるオブジェクトファイル
-Group: programming
-Requires: %{name}-devel = %{version}-%{release}
-Requires: compat32-%{name} = %{version}-%{release}
-
-%description -n compat32-%{name}-devel
-The glibc-devel package contains the object files necessary
-for developing programs which use the standard C libraries (which are
-used by nearly all programs).  If you are developing programs which
-will use the standard C libraries, your system needs to have these
-standard object files available in order to create the
-executables.
-
-Install glibc-devel if you are going to develop programs which will
-use the standard C libraries.
-
-%description -n compat32-%{name}-devel -l ja
-glibc-devel パッケージには (ほとんどすべてのプログラムで使われる)
-標準 C ライブラリを使用したプログラムを開発するためのオブジェクトファイルが
-含まれます。標準 C ライブラリを使用するプログラムを開発する場合には、
-これらオブジェクトファイルを使用して実行ファイルを作成できます。
-
-標準 C ライブラリを使用するプログラムを開発するなら glibc-devel
-をインストールしてください。
-
-
 %package static
 Summary: C library static libraries for -static linking.
 Summary(ja): -static リンクのための静的 C ライブラリ
-Group: programming
+Group: programming{?compat32_group}
 Requires: %{name}-devel = %{version}-%{release}
 
 %description static
@@ -316,26 +279,6 @@ glibc-static パッケージには -static リンクで使用する静的 C ラ
 ことは避けて下さい。
 
 
-%package -n compat32-%{name}-static
-Summary: C library static libraries for -static linking.
-Summary(ja): -static リンクのための静的 C ライブラリ
-Group: programming
-Requires: %{name}-devel = %{version}-%{release}
-Requires: %{name}-static = %{version}-%{release}
-Requires: compat32-%{name}-devel = %{version}-%{release}
-
-%description -n compat32-%{name}-static
-The glibc-static package contains the C library static libraries
-for -static linking.  You don't need these, unless you link statically,
-which is highly discouraged.
-
-%description -n compat32-%{name}-static -l ja
-glibc-static パッケージには -static リンクで使用する静的 C ライブラリが
-入っています。
-静的ライブラリが必要な場合でなければ、このパッケージをインストールする
-ことは避けて下さい。
-
-
 %package headers
 Summary: Header files for development using standard C libraries.
 Summary(ja): 標準 C ライブラリで使われるヘッダーファイル
@@ -588,9 +531,6 @@ BuildFlagsNonshared="-Wa,--generate-missing-build-notes=yes"
 # %%build - Generic options.
 ##############################################################################
 EnableKernel="--enable-kernel=%{enablekernel}"
-# Save the used compiler and options into the file "Gcc" for use later
-# by %%install.
-echo "$GCC" > Gcc
 
 ##############################################################################
 # build()
@@ -603,15 +543,22 @@ build()
 {
 	local builddir=build-%{target}${1:+-$1}
 	${1+shift}
+	local build_triplet=$(LANG=C gcc -v 2>&1 | grep "Target: " | cut -d " " -f 2)
 	rm -rf $builddir
 	mkdir $builddir
 	pushd $builddir
-	../configure CC="$GCC" CXX="$GXX" CFLAGS="$BuildFlags $*" \
+	../configure \
+		CC="$GCC" CFLAGS="$BuildFlags $*" \
+		CXX="$GXX" CXXFLAGS="$BuildFlags $*" \
 		--prefix=%{_prefix} \
 		--with-headers=%{_prefix}/include $EnableKernel \
 		--with-nonshared-cflags="$BuildFlagsNonshared" \
 		--enable-bind-now \
-		--build=%{target} \
+		--build=${build_triplet} \
+%if %{build_compat32}
+		--host=%{target} \
+		--target=%{target} \
+%endif
 		--enable-stack-protector=strong \
 %ifarch %{pie_arches}
 		--enable-static-pie \
@@ -635,10 +582,21 @@ build()
 		--disable-crypt ||
 		{ cat config.log; false; }
 
-	make %{?_smp_mflags} -O -r %{glibc_make_flags}
+	%make_build -O -r %{glibc_make_flags}
 	popd
 }
 
+%if %{build_compat32}
+GCC="gcc -m32"
+GXX="g++ -m32"
+%endif
+
+# Save the used compiler and options into the file "Gcc" for use later
+# by %%install.
+
+echo "$GCC" > Gcc
+echo "$GXX" > Gxx
+
 # Default set of compiler options.
 build
 
@@ -656,9 +614,10 @@ find . -type f -name '*.filelist' -exec rm -rf {} \;
 
 # Reload compiler and build options that were used during %%build.
 GCC=`cat Gcc`
+GXX=`cat Gxx`
 
 # Build and install:
-make -j1 install_root=%{glibc_sysroot} install -C build-%{target}
+%make_build install_root=%{glibc_sysroot} install -C build-%{target}
 
 # If we are not building an auxiliary arch then install all of the supported
 # locales.
@@ -666,7 +625,7 @@ make -j1 install_root=%{glibc_sysroot} install -C build-%{target}
 pushd build-%{target}
 # Do not use a parallel make here because the hardlink optimization in
 # localedef is not fully reproducible when running concurrently.
-make install_root=%{glibc_sysroot} \
+%make_build install_root=%{glibc_sysroot} \
 	install-locales -C ../localedata objdir=`pwd`
 popd
 %endif
@@ -754,6 +713,7 @@ truncate -s 0 %{glibc_sysroot}/var/cache/ldconfig/aux-cache
 # Install info files
 ##############################################################################
 
+%ifnarch %{auxarches}
 %if %{with docs}
 # Move the info files if glibc installed them into the wrong location.
 if [ -d %{glibc_sysroot}%{_prefix}/info -a "%{_infodir}" != "%{_prefix}/info" ]; then
@@ -765,6 +725,10 @@ fi
 # Compress all of the info files.
 gzip -9nvf %{glibc_sysroot}%{_infodir}/libc*
 
+%else
+rm -f %{glibc_sysroot}%{_infodir}/dir
+rm -f %{glibc_sysroot}%{_infodir}/libc.info*
+%endif
 %else
 rm -f %{glibc_sysroot}%{_infodir}/dir
 rm -f %{glibc_sysroot}%{_infodir}/libc.info*
@@ -867,6 +831,7 @@ rm -rf %{glibc_sysroot}%{_prefix}/share/zoneinfo
 touch -r %{SOURCE0} %{glibc_sysroot}/etc/ld.so.conf
 touch -r inet/etc.rpc %{glibc_sysroot}/etc/rpc
 
+%ifnarch %{auxarches}
 pushd build-%{target}
 $GCC -Os -g -static -o build-locale-archive %{SOURCE1} \
 	../build-%{target}/locale/locarchive.o \
@@ -877,6 +842,7 @@ $GCC -Os -g -static -o build-locale-archive %{SOURCE1} \
 	-B../build-%{target}/csu/ -lc -lc_nonshared
 install -m 700 build-locale-archive %{glibc_sysroot}%{_prefix}/sbin/build-locale-archive
 popd
+%endif
 
 # Lastly copy some additional documentation for the packages.
 rm -rf documentation
@@ -884,12 +850,6 @@ mkdir documentation
 cp timezone/README documentation/README.timezone
 cp posix/gai.conf documentation/
 
-%ifarch s390x
-# Compatibility symlink
-mkdir -p %{glibc_sysroot}/lib
-ln -sf /%{_lib}/ld64.so.1 %{glibc_sysroot}/lib/ld64.so.1
-%endif
-
 %if %{with benchtests}
 # Build benchmark binaries.  Ignore the output of the benchmark runs.
 pushd build-%{target}
@@ -942,6 +902,7 @@ mv -f %{glibc_sysroot}/%{_lib}/lib{pcprofile,memusage}.so \
 # Strip all of the installed object files.
 strip -g %{glibc_sysroot}%{_libdir}/*.o
 
+%ifnarch %{auxarches}
 # The xtrace and memusage scripts have hard-coded paths that need to be
 # translated to a correct set of paths using the $LIB token which is
 # dynamically translated by ld.so as the default lib directory.
@@ -955,6 +916,7 @@ for i in %{glibc_sysroot}%{_prefix}/bin/{xtrace,memusage}; do
       -e 's~='\''/\\\$LIB/libmemusage.so~='\''%{_prefix}/\\$LIB/libmemusage.so~' \
       -i $i
 done
+%endif
 
 ##############################################################################
 # Build an empty libpthread_nonshared.a for compatiliby with applications
@@ -1115,11 +1077,6 @@ for module in compat files db dns hesiod; do
 done
 grep -e "libmemusage.so" -e "libpcprofile.so" master.filelist >> glibc.filelist
 
-cat glibc.filelist \
-	| grep -v \
-	-e '/sbin/ldconfig' \
-	> compat32-glibc.filelist
-
 ###############################################################################
 # glibc-devel
 ###############################################################################
@@ -1193,10 +1150,12 @@ grep '%{_prefix}/share' master.filelist \
 	-e '%%dir %{_prefix}/share' \
 	>> common.filelist
 
+%ifnarch %{auxarches}
 # Add the binary to build locales to the common subpackage.
 #echo '%{_prefix}/sbin/build-locale-archive' >> common.filelist
 grep -e "/en_US/" -e "/ja_JP" -e "/ja/" locales.filelist >> common.filelist
 grep -v -e "/en_US/" -e "/ja_JP" -e "/ja/" locales.filelist >> common-extra.filelist
+%endif
 
 ###############################################################################
 # nscd
@@ -1273,6 +1232,34 @@ echo "%{_prefix}/libexec/glibc-benchtests/validate_benchout.py*" >> benchtests.f
 ###############################################################################
 echo "%{_libdir}/libpthread_nonshared.a" >> compat-libpthread-nonshared.filelist
 
+%if %{build_compat32}
+###############################################################################
+# compat32-glibc
+###############################################################################
+
+cat glibc.filelist \
+	| grep \
+	-e '/lib/' \
+	-e '/libexec/' \
+	> compat32-glibc.filelist
+
+cat devel.filelist \
+	| grep \
+	-e '/lib/' \
+	-e '/include/' \
+	> compat32-devel.filelist
+
+cat static.filelist \
+	| grep \
+	-e '/lib/' \
+	> compat32-static.filelist
+
+rm -rf %{glibc_sysroot}/{etc,lib64,sbin,var}
+rm -rf %{glibc_sysroot}/usr/{bin,lib64,sbin,share}
+rm -f %{glibc_sysroot}/usr/include/gnu/{lib-names,libc-version,stubs}.h
+find %{glibc_sysroot}/usr/include -type f | grep -v /gnu/ | xargs rm -f
+%endif
+
 
 %check
 %if %{with testsuite}
@@ -1635,21 +1622,12 @@ if posix.access("/etc/ld.so.cache") then
   end
 end
 
-
-%post devel
-/sbin/install-info %{_infodir}/libc.info.gz %{_infodir}/dir > /dev/null 2>&1 || :
-
 %pre headers
 # this used to be a link and it is causing nightmares now
 if [ -L %{_prefix}/include/scsi ] ; then
   rm -f %{_prefix}/include/scsi
 fi
 
-%preun devel
-if [ "$1" = 0 ]; then
-  /sbin/install-info --delete %{_infodir}/libc.info.gz %{_infodir}/dir > /dev/null 2>&1 || :
-fi
-
 %pre -n nscd
 getent group nscd >/dev/null || /usr/sbin/groupadd -g 28 -r nscd
 getent passwd nscd >/dev/null ||
@@ -1691,6 +1669,7 @@ rm -rf "$RPM_BUILD_ROOT"
 rm -f *.filelist*
 
 
+%ifnarch %{auxarches}
 %files -f glibc.filelist
 %defattr(-,root,root)
 /sbin/ldconfig
@@ -1717,12 +1696,6 @@ rm -f *.filelist*
 %doc README NEWS INSTALL elf/rtld-debugger-interface.txt
 %license COPYING COPYING.LIB LICENSES
 
-%if %{build_compat32}
-%files -f compat32-glibc.filelist -n compat32-%{name}
-/%{_lib}/libnsl.so.*
-%endif
-
-%ifnarch %{auxarches}
 %files -f common.filelist common
 %defattr(-,root,root)
 %dir %{_datadir}/locale
@@ -1754,15 +1727,6 @@ rm -f *.filelist*
 %files -f static.filelist static
 %defattr(-,root,root)
 
-%if %{build_compat32}
-%files -f devel.filelist -n compat32-%{name}-devel
-%defattr(-,root,root)
-%exclude %{_prefix}/share
-
-%files -f static.filelist -n compat32-%{name}-static
-%defattr(-,root,root)
-%endif
-
 %files -f headers.filelist headers
 %defattr(-,root,root)
 
@@ -1793,8 +1757,25 @@ rm -f *.filelist*
 %ghost %config(missingok,noreplace) /etc/sysconfig/nscd
 %endif
 
+%if %{build_compat32}
+%files -f compat32-glibc.filelist
+/%{_lib}/libnsl.so.*
+
+%files devel -f compat32-devel.filelist
+%defattr(-,root,root)
+%exclude %{_prefix}/share
+
+%files static -f compat32-static.filelist
+%defattr(-,root,root)
+%endif
+
 
 %changelog
+* Tue Nov 02 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.34-3
+- updated Patch0.
+- dropped install-info scriptlets.
+- built compat32-* on x86_64.
+
 * Tue Aug 24 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.34-2
 - imported Patch0 from upstream.