-# NOTE: despite lower soname, libffi is newer than standalone 3.0.10
+# TODO: finish D (needs bootstrap from non-PLD gdc binaries)
#
# NOTE
# - when adding new subpackages with external libraries (like libffi)
# or having own Version, do not use epoch 6 there, reset them to 0!
#
-#
# Conditional build:
# - languages:
-%bcond_without ada # build without ADA support
-%bcond_without cxx # build without C++ support
-%bcond_without fortran # build without Fortran support
-%bcond_without go # build without Go support
-%bcond_without objc # build without Objective-C support
-%bcond_without objcxx # build without Objective-C++ support
+%bcond_without ada # ADA language support
+%bcond_without cxx # C++ language support
+%bcond_with d # D language support [NFY, buildrequires gdc]
+%bcond_without fortran # Fortran language support
+%bcond_without go # Go language support
+%bcond_without modula2 # Modula2 language support
+%bcond_without objc # Objective-C language support
+%bcond_without objcxx # Objective-C++ language support
# - features:
-%bcond_without gomp # build without OpenMP support
-%bcond_without multilib # build without multilib support (which needs glibc[32&64]-devel)
-%bcond_with multilibx32 # build with x32 multilib support on x86_64 (needs x32 glibc-devel)
-%bcond_without profiling # build without profiling
-%bcond_without python # build without libstdc++ printers for gdb
+%bcond_without gomp # OpenMP support
+%bcond_without multilib # 32-bit/64-bit multilib support (which needs glibc[32&64]-devel)
+%bcond_with multilibx32 # x32 multilib support on x86_64 (needs x32 glibc-devel)
+%bcond_without profiling # profiling support
+%bcond_without python # libstdc++ printers for gdb
%bcond_with gcc_libffi # packaging gcc libffi for system usage
# - other:
-%bcond_without apidocs # do not package API docs
+%bcond_without apidocs # API documentation
%bcond_without bootstrap # omit 3-stage bootstrap
%bcond_with tests # torture gcc
-%bcond_with symvers # enable versioned symbols in libstdc++ (WARNING: changes soname from .so.6 to so.7)
+%bcond_with symvers # versioned symbols in libstdc++ (WARNING: changes soname from .so.6 to so.7)
%if %{with symvers}
%define cxx_sover 7
%define with_tsan_m0 1
%endif
%ifarch x32
-# lsan and tsan exist only for x86_64 ABI (i.e. our multilib2)
+# hwasan, lsan and tsan exist only for x86_64 ABI (i.e. our multilib2)
+%define with_hwasan_m2 1
%define with_lsan_m2 1
%define with_tsan_m2 1
%endif
-%ifarch aarch64
+%ifarch %{x8664} aarch64
%define with_hwasan 1
%endif
%ifarch %{ix86} %{x8664} x32
# Stable is: any major_ver and minor_ver >= 1.0
# For TLD we usually use gcc when minor_ver >= 2.0 (first bugfix release or later)
-%define major_ver 11
-%define minor_ver 2.0
+%define major_ver 13
+%define minor_ver 1.0
Summary: GNU Compiler Collection: the C compiler and shared files
Summary(es.UTF-8): Colección de compiladores GNU: el compilador C y ficheros compartidos
Summary(pt_BR.UTF-8): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
Name: gcc
Version: %{major_ver}.%{minor_ver}
-Release: 5
+Release: 3
Epoch: 6
License: GPL v3+
Group: Development/Languages
Source0: https://gcc.gnu.org/pub/gcc/releases/%{name}-%{version}/%{name}-%{version}.tar.xz
-# Source0-md5: 31c86f2ced76acac66992eeedce2fce2
+# Source0-md5: 43e4de77f2218c83ca675257ea1af9ef
Source1: %{name}-optimize-la.pl
# check libffi version with libffi/configure.ac
Source3: libffi.pc.in
Source4: branch.sh
# use branch.sh to update gcc-branch.diff
Patch100: %{name}-branch.diff
-# Patch100-md5: b87420dd46c41e2398444f2c06e29276
+# Patch100-md5: b3f29f19ec6ac2e71d7e209ce49e8621
Patch0: %{name}-info.patch
+Patch1: all-library-paths.patch
Patch2: %{name}-nodebug.patch
Patch3: %{name}-ada-link.patch
Patch4: %{name}-ada-x32.patch
BuildRequires: autoconf >= 2.64
%{?with_tests:BuildRequires: autogen >= 5.5.4}
BuildRequires: automake >= 1:1.11.1
-BuildRequires: binutils >= 3:2.30
+BuildRequires: binutils >= 4:2.30
BuildRequires: bison
BuildRequires: chrpath >= 0.13-2
%{?with_tests:BuildRequires: dejagnu >= 1.4.4}
%if %{with ada}
BuildRequires: gcc(ada)
BuildRequires: gcc-ada
+BuildRequires: libgnat-static
+%endif
+%if %{with d}
+BuildRequires: gcc-d
%endif
BuildRequires: gdb
BuildRequires: gettext-tools >= 0.14.5
BuildRequires: isl-devel >= 0.15
BuildRequires: libmpc-devel >= 0.8.1
BuildRequires: mpfr-devel >= 3.1.0
-%if %{with python}
-BuildRequires: python3-devel
-BuildRequires: rpm-pythonprov
-%endif
+BuildRequires: rpm-build >= 4.6
BuildRequires: rpmbuild(macros) >= 1.211
BuildRequires: tar >= 1:1.22
BuildRequires: texinfo >= 4.7
BuildRequires: xz
BuildRequires: zlib-devel
BuildRequires: zstd-devel
+%if %{with python}
+BuildRequires: python3-devel
+BuildRequires: python3-modules
+BuildRequires: rpm-pythonprov
+%endif
BuildConflicts: pdksh < 5.2.14-50
-Requires: binutils >= 3:2.30
+Requires: binutils >= 4:2.30
Requires: gmp >= 4.3.2
Requires: isl >= 0.15
Requires: libgcc = %{epoch}:%{version}-%{release}
Requires: mpfr >= 3.1.0
Provides: cpp = %{epoch}:%{version}-%{release}
%{?with_ada:Provides: gcc(ada)}
-Obsoletes: cpp
-Obsoletes: egcs-cpp
-Obsoletes: gcc-chill
-Obsoletes: gcc-cpp
-Obsoletes: gcc-ksi
-Obsoletes: gcc4
-Obsoletes: gont
+Obsoletes: cpp < 5:3.4
+Obsoletes: egcs-cpp < 1.2
+Obsoletes: gcc-chill < 3.2
+Obsoletes: gcc-cpp < 3
+Obsoletes: gcc-ksi < 5:3.4
+Obsoletes: gcc4 < 5:4.2
+Obsoletes: gont < 0.1
Conflicts: glibc-devel < 2.2.5-20
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%endif
%endif
%endif
+%if %{without multilib} || %{without multilib2}
+# avoid "Possible unexpanded macro" warning
+%define multilib2 none
+%endif
%define gcclibdir %{_libdir}/gcc/%{_target_platform}/%{version}
%define filterout -fwrapv -fno-strict-aliasing -fsigned-char
# receiving non constant format strings
%define Werror_cflags %{nil}
-%define skip_post_check_so '.*(libasan|libcc1plugin|libcp1plugin|libgnat-%{major_ver}|libgo|libitm|libxmlj|libubsan|lib-gnu-awt-xlib)\.so.*'
+%define skip_post_check_so '.*(libasan|libcc1plugin|libcp1plugin|libgnat-%{major_ver}|libgo|libitm|libxmlj|libubsan|lib-gnu-awt-xlib|libm2cor|libm2iso|libm2log|libm2pim)\.so.*'
# private symbols
%define _noautoreq .*\(GLIBC_PRIVATE\)
Group: Development/Languages
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: libgcc-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libgcc32
+Obsoletes: libgcc32 < 6:4.4
%ifarch %{x8664}
Requires: glibc-devel(ix86)
%endif
Requires: glibc-devel(sparcv9)
%endif
Provides: gcc(multilib-32)
-Obsoletes: gcc-multilib
+Obsoletes: gcc-multilib < 6:4.9.2-4
%description multilib-32
A compiler aimed at integrating all the optimizations and features
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Libraries
Obsoletes: libgcc1
-Obsoletes: libgcc4
+Obsoletes: libgcc4 < 5:4.2
%description -n libgcc
Shared gcc library.
Summary(pl.UTF-8): Biblioteka gcc - wersja 32-bitowa
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Libraries
-Obsoletes: libgcc-multilib
+Obsoletes: libgcc-multilib < 6:4.9.2-4
%description -n libgcc-multilib-32
Shared gcc library - 32-bit version.
Summary(pl.UTF-8): Biblioteka GNU OpenMP - wersja 32-bitowa
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Libraries
-Obsoletes: libgomp-multilib
+Obsoletes: libgomp-multilib < 6:4.9.2-4
%description -n libgomp-multilib-32
GNU OpenMP library - 32-bit version.
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Development/Libraries
Requires: libgomp-devel = %{epoch}:%{version}-%{release}
-Obsoletes: libgomp-multilib-devel
+Obsoletes: libgomp-multilib-devel < 6:4.9.2-4
%description -n libgomp-multilib-32-devel
Development files for 32-bit version of GNU OpenMP library.
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Development/Libraries
Requires: libgomp-multilib-32-devel = %{epoch}:%{version}-%{release}
-Obsoletes: libgomp-multilib-static
+Obsoletes: libgomp-multilib-static < 6:4.9.2-4
%description -n libgomp-multilib-32-static
Static GNU OpenMP library - 32-bit version.
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: libgnat = %{epoch}:%{version}-%{release}
Obsoletes: gcc-gnat
-Obsoletes: gnat-devel
+Obsoletes: gnat-devel < 4
%description ada
This package adds experimental support for compiling Ada programs.
Group: Development/Languages
Requires: %{name}-ada = %{epoch}:%{version}-%{release}
Requires: libgnat-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: gcc-ada-multilib
+Obsoletes: gcc-ada-multilib < 6:4.9.2-4
%description ada-multilib-32
This package adds experimental support for compiling 32-bit Ada
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Libraries
Requires: libgcc = %{epoch}:%{version}-%{release}
-Obsoletes: gnat
+Obsoletes: gnat < 4
Obsoletes: libgnat1
%description -n libgnat
Summary(pl.UTF-8): Statyczne biblioteki standardowe dla Ady
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Development/Libraries
-Obsoletes: gnat-static
+Obsoletes: gnat-static < 4
%description -n libgnat-static
This package contains static libraries for programs written in Ada.
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Libraries
Requires: libgcc-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libgnat-multilib
+Obsoletes: libgnat-multilib < 6:4.9.2-4
%description -n libgnat-multilib-32
This package contains 32-bit version of shared libraries needed to run
Summary(pl.UTF-8): Statyczne biblioteki standardowe dla Ady - wersje 32-bitowe
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Development/Libraries
-Obsoletes: libgnat-multilib-static
+Obsoletes: libgnat-multilib-static < 6:4.9.2-4
%description -n libgnat-multilib-32-static
This package contains 32-bit version of static libraries for programs
Summary(pt_BR.UTF-8): Suporte C++ para o GCC
Group: Development/Languages
Requires: %{name} = %{epoch}:%{version}-%{release}
-Obsoletes: egcc-c++
-Obsoletes: egcs-c++
-Obsoletes: gcc4-c++
+Obsoletes: egcc-c++ < 1.2
+Obsoletes: egcs-c++ < 1.2
+Obsoletes: gcc4-c++ < 5:4.2
%description c++
This package adds C++ support to the GNU Compiler Collection. It
Group: Development/Languages
Requires: %{name}-c++ = %{epoch}:%{version}-%{release}
Requires: %{name}-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: gcc-c++-multilib
+Obsoletes: gcc-c++-multilib < 6:4.9.2-4
%description c++-multilib-32
This package adds 32-bit binaries in C++ language support to the GNU
# >= instead of = to allow keeping older libstdc++ (with different soname)
Requires: libgcc >= %{epoch}:%{version}-%{release}
Obsoletes: libg++
-Obsoletes: libstdc++3
-Obsoletes: libstdc++4
+Obsoletes: libstdc++3 < 5:3.1
+Obsoletes: libstdc++4 < 5:3.2
%description -n libstdc++
This is the GNU implementation of the standard C++ library, along with
Requires: glibc-devel
Requires: libstdc++ = %{epoch}:%{version}-%{release}
Obsoletes: libg++-devel
-Obsoletes: libstdc++3-devel
-Obsoletes: libstdc++4-devel
+Obsoletes: libstdc++3-devel < 5:3.1
+Obsoletes: libstdc++4-devel < 5:3.2
%description -n libstdc++-devel
This is the GNU implementation of the standard C++ libraries. This
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Development/Libraries
Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
-Obsoletes: libstdc++4-static
+Obsoletes: libstdc++4-static < 5:3.2
%description -n libstdc++-static
Static C++ standard library.
Group: Libraries
# >= instead of = to allow keeping older libstdc++ (with different soname)
Requires: libgcc-multilib-32 >= %{epoch}:%{version}-%{release}
-Obsoletes: libstdc++-multilib
+Obsoletes: libstdc++-multilib < 6:4.9.2-4
%description -n libstdc++-multilib-32
This is 32-bit version of the GNU implementation of the standard C++
Requires: %{name}-c++-multilib-32 = %{epoch}:%{version}-%{release}
Requires: libstdc++-devel = %{epoch}:%{version}-%{release}
Requires: libstdc++-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libstdc++-multilib-devel
+Obsoletes: libstdc++-multilib-devel < 6:4.9.2-4
%description -n libstdc++-multilib-32-devel
This package contains the development files for 32-bit version of the
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Development/Libraries
Requires: libstdc++-multilib-32-devel = %{epoch}:%{version}-%{release}
-Obsoletes: libstdc++-multilib-static
+Obsoletes: libstdc++-multilib-static < 6:4.9.2-4
%description -n libstdc++-multilib-32-static
Static C++ standard library - 32-bit version.
Requires: libgfortran = %{epoch}:%{version}-%{release}
%{?with_quadmath:Requires: libquadmath-devel = %{epoch}:%{version}-%{release}}
Provides: gcc-g77 = %{epoch}:%{version}-%{release}
-Obsoletes: egcs-g77
-Obsoletes: gcc-g77
+Obsoletes: egcs-g77 < 1.2
+Obsoletes: gcc-g77 < 5:4
%description fortran
This package adds support for compiling Fortran 95 programs with the
Requires: %{name}-fortran = %{epoch}:%{version}-%{release}
Requires: libgfortran-multilib-32 = %{epoch}:%{version}-%{release}
%{?with_quadmath:Requires: libquadmath-multilib-32-devel = %{epoch}:%{version}-%{release}}
-Obsoletes: gcc-fortran-multilib
+Obsoletes: gcc-fortran-multilib < 6:4.9.2-4
%description fortran-multilib-32
This package adds support for compiling 32-bit Fortran 95 programs
Group: Libraries
Requires: libgcc = %{epoch}:%{version}-%{release}
%{?with_quadmath:Requires: libquadmath = %{epoch}:%{version}-%{release}}
-Obsoletes: libg2c
+Obsoletes: libg2c < 5:4
%description -n libgfortran
Fortran 95 Library.
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Development/Libraries
Requires: libgfortran = %{epoch}:%{version}-%{release}
-Obsoletes: libg2c-static
+Obsoletes: libg2c-static < 5:4
%description -n libgfortran-static
Static Fortran 95 Library.
Group: Libraries
Requires: libgcc-multilib-32 = %{epoch}:%{version}-%{release}
%{?with_quadmath:Requires: libquadmath-multilib-32 = %{epoch}:%{version}-%{release}}
-Obsoletes: libgfortran-multilib
+Obsoletes: libgfortran-multilib < 6:4.9.2-4
%description -n libgfortran-multilib-32
Fortran 95 Library - 32-bit version.
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Development/Libraries
Requires: libgfortran-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libgfortran-multilib-static
+Obsoletes: libgfortran-multilib-static < 6:4.9.2-4
%description -n libgfortran-multilib-32-static
Static Fortran 95 Library - 32-bit version.
Summary(pl.UTF-8): Biblioteka współdzielona GCC do obsługi typu __float128 - wersja 32-bitowa
License: LGPL v2.1+
Group: Libraries
-Obsoletes: libquadmath-multilib
+Obsoletes: libquadmath-multilib < 6:4.9.2-4
%description -n libquadmath-multilib-32
This package contains 32-bit version of GCC shared support library
Group: Development/Libraries
Requires: libquadmath-devel = %{epoch}:%{version}-%{release}
Requires: libquadmath-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libquadmath-multilib-devel
+Obsoletes: libquadmath-multilib-devel < 6:4.9.2-4
%description -n libquadmath-multilib-32-devel
This package contains development files for 32-bit GCC support library
License: LGPL v2.1+
Group: Development/Libraries
Requires: libquadmath-multilib-32-devel = %{epoch}:%{version}-%{release}
-Obsoletes: libquadmath-multilib-static
+Obsoletes: libquadmath-multilib-static < 6:4.9.2-4
%description -n libquadmath-multilib-32-static
Static GCC __float128 support library - 32-bit version.
Summary(pl.UTF-8): Biblioteka wywołań funkcji obcych - wersja 32-bitowa
License: BSD-like
Group: Libraries
-Obsoletes: libffi-multilib
+Obsoletes: libffi-multilib < 6:4.9.2-4
%description -n libffi-multilib-32
The libffi library provides a portable, high level programming
Group: Development/Libraries
Requires: libffi-devel = %{epoch}:%{version}-%{release}
Requires: libffi-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libffi-multilib-devel
+Obsoletes: libffi-multilib-devel < 6:4.9.2-4
%description -n libffi-multilib-32-devel
Development files for 32-bit version of Foreign Function Interface
License: BSD-like
Group: Development/Libraries
Requires: libffi-multilib-32-devel = %{epoch}:%{version}-%{release}
-Obsoletes: libffi-multilib-static
+Obsoletes: libffi-multilib-static < 6:4.9.2-4
%description -n libffi-multilib-32-static
Static Foreign Function Interface library - 32-bit version.
%description -n libffi-multilib-%{multilib2}-static -l pl.UTF-8
Statyczna biblioteka libffi - wersja %{m2_desc}.
+%package m2
+Summary: Modula-2 language support for GCC
+Summary(pl.UTF-8): Obsługa języka Modula-2 dla kompilatora GCC
+License: GPL v3+
+Group: Development/Languages
+Requires: %{name} = %{epoch}:%{version}-%{release}
+Requires: libgm2 = %{epoch}:%{version}-%{release}
+
+%description m2
+Modula-2 language support for GCC.
+
+%description m2 -l pl.UTF-8
+Obsługa języka Modula-2 dla kompilatora GCC.
+
+%package m2-multilib-32
+Summary: Modula-2 language 32-bit binaries support for GCC
+Summary(pl.UTF-8): Obsługa 32-bitowych binariów w języku Modula-2 dla kompilatora GCC
+License: GPL v3+
+Group: Development/Languages
+Requires: %{name}-multilib-32 = %{epoch}:%{version}-%{release}
+Requires: libgm2-multilib-32 = %{epoch}:%{version}-%{release}
+
+%description m2-multilib-32
+This package adds support for compiling Modula-2 language to 32-bit
+binaries.
+
+%description m2-multilib-32 -l pl.UTF-8
+Ten pakiet dodaje obsługę kompilacji programów w języku Modula-2 do
+binarów 32-bitowych.
+
+%package m2-multilib-%{multilib2}
+Summary: Modula-2 language %{m2_desc} binaries support for GCC
+Summary(pl.UTF-8): Obsługa binariów %{m2_desc} w języku Modula-2 dla kompilatora GCC
+License: GPL v3+
+Group: Development/Languages
+Requires: %{name}-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
+Requires: libgm2-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
+
+%description m2-multilib-%{multilib2}
+This package adds support for compiling Modula-2 language to
+%{m2_desc} binaries.
+
+%description m2-multilib-%{multilib2} -l pl.UTF-8
+Ten pakiet dodaje obsługę kompilacji programów w języku Modula-2 do
+binarów %{m2_desc}.
+
+%package -n libgm2
+Summary: GNU Modula-2 shared libraries
+Summary(pl.UTF-8): Biblioteki współdzielone GNU Modula-2
+License: GPL v3+ with GCC Runtime Library Exception v3.1
+Group: Libraries
+
+%description -n libgm2
+GNU Modula-2 shared libraries.
+
+%description -n libgm2 -l pl.UTF-8
+Biblioteki współdzielone GNU Modula-2.
+
+%package -n libgm2-static
+Summary: GNU Modula-2 static libraries
+Summary(pl.UTF-8): Biblioteki statyczne GNU Modula-2
+License: GPL v3+ with GCC Runtime Library Exception v3.1
+Group: Development/Libraries
+Requires: %{name}-m2 = %{epoch}:%{version}-%{release}
+
+%description -n libgm2-static
+GNU Modula-2 static libraries.
+
+%description -n libgm2-static -l pl.UTF-8
+Biblioteki statyczne GNU Modula-2.
+
+%package -n libgm2-multilib-32
+Summary: GNU Modula-2 shared libraries - 32-bit version
+Summary(pl.UTF-8): Biblioteki współdzielone GNU Modula-2 - wersja 32-bitowa
+License: GPL v3+ with GCC Runtime Library Exception v3.1
+Group: Libraries
+
+%description -n libgm2-multilib-32
+This package contains 32-bit version of shared libraries needed to run
+programs written in Modula-2.
+
+%description -n libgm2-multilib-32 -l pl.UTF-8
+Ten pakiet zawiera wersje 32-bitowe bibliotek potrzebnych do
+uruchamiania programów napisanych w języku Modula-2.
+
+%package -n libgm2-multilib-32-static
+Summary: GNU Modula-2 static libraries - 32-bit version
+Summary(pl.UTF-8): Biblioteki statyczne GNU Modula-2 - wersja 32-bitowa
+License: GPL v3+ with GCC Runtime Library Exception v3.1
+Group: Development/Libraries
+Requires: %{name}-m2-multilib-32 = %{epoch}:%{version}-%{release}
+
+%description -n libgm2-multilib-32-static
+This package contains 32-bit version of static libraries for programs
+written in Modula-2.
+
+%description -n libgm2-multilib-32-static -l pl.UTF-8
+Ten pakiet zawiera 32-bitowe wersje bibliotek statycznych dla
+programów napisanych w języku Modula-2.
+
+%package -n libgm2-multilib-%{multilib2}
+Summary: GNU Modula-2 shared libraries - 32-bit version
+Summary(pl.UTF-8): Biblioteki współdzielone GNU Modula-2 - wersja 32-bitowa
+License: GPL v3+ with GCC Runtime Library Exception v3.1
+Group: Libraries
+
+%description -n libgm2-multilib-%{multilib2}
+This package contains 32-bit version of shared libraries needed to run
+programs written in Modula-2.
+
+%description -n libgm2-multilib-%{multilib2} -l pl.UTF-8
+Ten pakiet zawiera wersje 32-bitowe bibliotek potrzebnych do
+uruchamiania programów napisanych w języku Modula-2.
+
+%package -n libgm2-multilib-%{multilib2}-static
+Summary: GNU Modula-2 static libraries - %{m2_desc} version
+Summary(pl.UTF-8): Biblioteki statyczne GNU Modula-2 - wersja %{m2_desc}
+License: GPL v3+ with GCC Runtime Library Exception v3.1
+Group: Development/Libraries
+Requires: %{name}-m2-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
+
+%description -n libgm2-multilib-%{multilib2}-static
+This package contains %{m2_desc} version of static libraries for
+programs written in Modula-2.
+
+%description -n libgm2-multilib-%{multilib2}-static -l pl.UTF-8
+Ten pakiet zawiera wersje %{m2_desc} bibliotek statycznych dla
+programów napisanych w języku Modula-2.
+
%package objc
Summary: Objective C language support for GCC
Summary(de.UTF-8): Objektive C-Unterstützung für GCC
Group: Development/Languages
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: libobjc = %{epoch}:%{version}-%{release}
-Obsoletes: egcc-objc
-Obsoletes: egcs-objc
+Obsoletes: egcc-objc < 1.2
+Obsoletes: egcs-objc < 1.2
%description objc
This package adds Objective C support to the GNU Compiler Collection.
Group: Development/Languages
Requires: %{name}-multilib-32 = %{epoch}:%{version}-%{release}
Requires: libobjc-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: gcc-objc-multilib
+Obsoletes: gcc-objc-multilib < 6:4.9.2-4
%description objc-multilib-32
This package adds 32-bit Objective C support to the GNU Compiler
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Libraries
Requires: libgcc = %{epoch}:%{version}-%{release}
-Obsoletes: libobjc1
+Obsoletes: libobjc1 < 5:4
%description -n libobjc
Objective C Library.
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Libraries
Requires: libgcc-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libobjc-multilib
+Obsoletes: libobjc-multilib < 6:4.9.2-4
%description -n libobjc-multilib-32
Objective C Library - 32-bit version.
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Development/Libraries
Requires: libobjc-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libobjc-multilib-static
+Obsoletes: libobjc-multilib-static < 6:4.9.2-4
%description -n libobjc-multilib-32-static
Static Objective C Library - 32-bit version.
Group: Development/Languages
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: libgo-multilib-32-devel = %{epoch}:%{version}-%{release}
-Obsoletes: gcc-go-multilib
+Obsoletes: gcc-go-multilib < 6:4.9.2-4
%description go-multilib-32
This package adds 32-bit Go language support to the GNU Compiler
License: BSD
Group: Libraries
Requires: libgcc-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libgo-multilib
+Obsoletes: libgo-multilib < 6:4.9.2-4
%description -n libgo-multilib-32
Go language library - 32-bit version.
Group: Development/Libraries
Requires: glibc-devel
Requires: libgo-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libgo-multilib-devel
+Obsoletes: libgo-multilib-devel < 6:4.9.2-4
%description -n libgo-multilib-32-devel
Development files for Go language library - 32-bit version.
License: BSD
Group: Development/Libraries
Requires: libgo-multilib-32-devel = %{epoch}:%{version}-%{release}
-Obsoletes: libgo-multilib-static
+Obsoletes: libgo-multilib-static < 6:4.9.2-4
%description -n libgo-multilib-32-static
Static Go language library - 32-bit version.
License: BSD-like or MIT
Group: Libraries
Requires: libstdc++-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libasan-multilib
+Obsoletes: libasan-multilib < 6:4.9.2-4
%description -n libasan-multilib-32
This package contains 32-bit version of the Address Sanitizer library
Group: Development/Libraries
Requires: libasan-devel = %{epoch}:%{version}-%{release}
Requires: libasan-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libasan-multilib-devel
+Obsoletes: libasan-multilib-devel < 6:4.9.2-4
%description -n libasan-multilib-32-devel
This package contains the development files for 32-bit version of the
License: BSD-like or MIT
Group: Development/Libraries
Requires: libasan-multilib-32-devel = %{epoch}:%{version}-%{release}
-Obsoletes: libasan-multilib-static
+Obsoletes: libasan-multilib-static < 6:4.9.2-4
%description -n libasan-multilib-32-static
This package contains 32-bit version of the Address Sanitizer static
Ten pakiet zawiera statyczną bibliotekę Hardware-Assisted Address
Sanitizer.
+%package -n libhwasan-multilib-%{multilib2}
+Summary: The Hardware-Assisted Address Sanitizer library - %{m2_desc} version
+Summary(pl.UTF-8): Biblioteka Hardware-Assisted Address Sanitizer do kontroli adresów - wersja %{m2_desc}
+License: BSD-like or MIT
+Group: Libraries
+Requires: libstdc++-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
+
+%description -n libhwasan-multilib-%{multilib2}
+This package contains %{m2_desc} version of the Hardware-Assisted
+Address Sanitizer library which is used for -fsanitize=hwaddress
+instrumented programs.
+
+%description -n libhwasan-multilib-%{multilib2} -l pl.UTF-8
+Ten pakiet zawiera wersję %{m2_desc} biblioteki Hardware-Assisted
+Address Sanitizer, służącej do kontroli adresów w programach
+kompilowanych z opcją -fsanitize=hwaddress.
+
+%package -n libhwasan-multilib-%{multilib2}-devel
+Summary: Development files for the Hardware-Assisted Address Sanitizer library - %{m2_desc} version
+Summary(pl.UTF-8): Pliki programistyczne biblioteki Hardware-Assisted Address Sanitizer - wersja %{m2_desc}
+License: BSD-like or MIT
+Group: Development/Libraries
+Requires: libhwasan-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
+
+%description -n libhwasan-multilib-%{multilib2}-devel
+This package contains development files for %{m2_desc} version of the
+Hardware-Assisted Address Sanitizer library.
+
+%description -n libhwasan-multilib-%{multilib2}-devel -l pl.UTF-8
+Ten pakiet zawiera pliki programistyczne wersji %{m2_desc} biblioteki
+Hardware-Assisted Address Sanitizer.
+
+%package -n libhwasan-multilib-%{multilib2}-static
+Summary: The Hardware-Assisted Address Sanitizer static library - %{m2_desc} version
+Summary(pl.UTF-8): Statyczna biblioteka Hardware-Assisted Address Sanitizer - wersja %{m2_desc}
+License: BSD-like or MIT
+Group: Development/Libraries
+Requires: libhwasan-multilib-%{multilib2}-devel = %{epoch}:%{version}-%{release}
+
+%description -n libhwasan-multilib-%{multilib2}-static
+This package contains %{m2_desc} version of Hardware-Assisted Address
+Sanitizer static library.
+
+%description -n libhwasan-multilib-%{multilib2}-static -l pl.UTF-8
+Ten pakiet zawiera wersję %{m2_desc} biblioteki statycznej
+Hardware-Assisted Address Sanitizer.
+
%package -n liblsan
Summary: The Leak Sanitizer library
Summary(pl.UTF-8): Biblioteka Leak Sanitizer do kontroli wycieków
License: BSD-like or MIT
Group: Libraries
Requires: libstdc++-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libubsan-multilib
+Obsoletes: libubsan-multilib < 6:4.9.2-4
%description -n libubsan-multilib-32
This package contains 32-bit version of the Undefined Behavior
License: BSD-like or MIT
Group: Development/Libraries
Requires: libubsan-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libubsan-multilib-devel
+Obsoletes: libubsan-multilib-devel < 6:4.9.2-4
%description -n libubsan-multilib-32-devel
This package contains the development files for 32-bit version of the
License: BSD-like or MIT
Group: Development/Libraries
Requires: libubsan-multilib-32-devel = %{epoch}:%{version}-%{release}
-Obsoletes: libubsan-multilib-static
+Obsoletes: libubsan-multilib-static < 6:4.9.2-4
%description -n libubsan-multilib-32-static
This package contains 32-bit version of the Undefined Behavior
%description -n libatomic-static
This package contains GNU Atomic static library.
-%description -n libatomic-static
+%description -n libatomic-static -l pl.UTF-8
Ten pakiet zawiera statyczną bibliotekę GNU Atomic.
%package -n libatomic-multilib-32
Summary(pl.UTF-8): Biblioteka GNU Atomic - wersja 32-bitowa
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Libraries
-Obsoletes: libatomic-multilib
+Obsoletes: libatomic-multilib < 6:4.9.2-4
%description -n libatomic-multilib-32
This package contains 32-bit version of the GNU Atomic library which
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Development/Libraries
Requires: libatomic-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes: libatomic-multilib-devel
+Obsoletes: libatomic-multilib-devel < 6:4.9.2-4
%description -n libatomic-multilib-32-devel
This package contains the development files for 32-bit version of the
License: GPL v3+ with GCC Runtime Library Exception v3.1
Group: Development/Libraries
Requires: libatomic-multilib-32-devel = %{epoch}:%{version}-%{release}
-Obsoletes: libatomic-multilib-static
+Obsoletes: libatomic-multilib-static < 6:4.9.2-4
%description -n libatomic-multilib-32-static
This package contains 32-bit version of the GNU Atomic static library.
%setup -q
%patch100 -p1
%patch0 -p1
+%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
--infodir=%{_infodir} \
--mandir=%{_mandir} \
--x-libraries=%{_libdir} \
- --%{?with_bootstrap:en}%{!?with_bootstrap:dis}able-bootstrap \
+ --enable-bootstrap%{!?with_bootstrap:=no} \
--disable-build-with-cxx \
--disable-build-poststage1-with-cxx \
--enable-c99 \
--enable-gnu-unique-object \
--enable-initfini-array \
--disable-isl-version-check \
- --enable-languages="c%{?with_cxx:,c++}%{?with_fortran:,fortran}%{?with_objc:,objc}%{?with_objcxx:,obj-c++}%{?with_ada:,ada}%{?with_go:,go}" \
- --%{?with_gomp:en}%{!?with_gomp:dis}able-libgomp \
+ --enable-languages="c%{?with_cxx:,c++}%{?with_d:,d}%{?with_fortran:,fortran}%{?with_modula2:,m2}%{?with_objc:,objc}%{?with_objcxx:,obj-c++}%{?with_ada:,ada}%{?with_go:,go}" \
+ --enable-libgomp%{!?with_gomp:=no} \
--enable-libitm \
--enable-linker-build-id \
--enable-linux-futex \
# avoid -L poisoning in *.la - there should be only -L%{_libdir}/gcc/%{_target_platform}/%{version}
# normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
for f in libitm.la libssp.la libssp_nonshared.la \
- %{?with_cxx:libstdc++.la libstdc++fs.la libsupc++.la} \
+ %{?with_cxx:libstdc++.la libstdc++exp.la libstdc++fs.la libsupc++.la} \
%{?with_fortran:libgfortran.la %{?with_quadmath:libquadmath.la}} \
%{?with_gomp:libgomp.la} \
%{?with_Xsan:libasan.la libubsan.la} \
%{?with_lsan_m0:liblsan.la} \
%{?with_tsan_m0:libtsan.la} \
%{?with_atomic:libatomic.la} \
+ %{?with_modula2:libm2cor.la libm2iso.la libm2log.la libm2min.la libm2pim.la} \
%{?with_objc:libobjc.la};
do
file="$RPM_BUILD_ROOT%{_libdir}/$f"
done
%if %{with multilib}
for f in libitm.la libssp.la libssp_nonshared.la \
- %{?with_cxx:libstdc++.la libstdc++fs.la libsupc++.la} \
+ %{?with_cxx:libstdc++.la libstdc++exp.la libstdc++fs.la libsupc++.la} \
%{?with_fortran:libgfortran.la %{?with_quadmath:libquadmath.la}} \
%{?with_gomp:libgomp.la} \
%{?with_Xsan:libasan.la libubsan.la} \
%{?with_lsan_m1:liblsan.la} \
%{?with_tsan_m1:libtsan.la} \
%{?with_atomic:libatomic.la} \
+ %{?with_modula2:libm2cor.la libm2iso.la libm2log.la libm2min.la libm2pim.la} \
%{?with_objc:libobjc.la};
do
%{__perl} %{SOURCE1} $RPM_BUILD_ROOT%{_libdir32}/$f %{_libdir32} > $RPM_BUILD_ROOT%{_libdir32}/$f.fixed
done
%if %{with multilib2}
for f in libitm.la libssp.la libssp_nonshared.la \
- %{?with_cxx:libstdc++.la libstdc++fs.la libsupc++.la} \
+ %{?with_cxx:libstdc++.la libstdc++exp.la libstdc++fs.la libsupc++.la} \
%{?with_fortran:libgfortran.la %{?with_quadmath:libquadmath.la}} \
%{?with_gomp:libgomp.la} \
%{?with_Xsan:libasan.la libubsan.la} \
+ %{?with_hwasan_m2:libhwasan.la} \
%{?with_lsan_m2:liblsan.la} \
%{?with_tsan_m2:libtsan.la} \
%{?with_atomic:libatomic.la} \
+ %{?with_modula2:libm2cor.la libm2iso.la libm2log.la libm2min.la libm2pim.la} \
%{?with_objc:libobjc.la};
do
%{__perl} %{SOURCE1} $RPM_BUILD_ROOT%{_libdirm2}/$f %{_libdirm2} > $RPM_BUILD_ROOT%{_libdirm2}/$f.fixed
%endif
cp -p $RPM_BUILD_ROOT%{gcclibdir}/install-tools/include/*.h $RPM_BUILD_ROOT%{gcclibdir}/include
-cp -p $RPM_BUILD_ROOT%{gcclibdir}/include-fixed/syslimits.h $RPM_BUILD_ROOT%{gcclibdir}/include
%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/install-tools
%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/include-fixed
%postun -p /sbin/ldconfig -n libffi-multilib-32
%post -p /sbin/ldconfig -n libffi-multilib-%{multilib2}
%postun -p /sbin/ldconfig -n libffi-multilib-%{multilib2}
+%post -p /sbin/ldconfig -n libgm2
+%postun -p /sbin/ldconfig -n libgm2
+%post -p /sbin/ldconfig -n libgm2-multilib-32
+%postun -p /sbin/ldconfig -n libgm2-multilib-32
+%post -p /sbin/ldconfig -n libgm2-multilib-%{multilib2}
+%postun -p /sbin/ldconfig -n libgm2-multilib-%{multilib2}
%post -p /sbin/ldconfig -n libobjc
%postun -p /sbin/ldconfig -n libobjc
%post -p /sbin/ldconfig -n libobjc-multilib-32
%{gcclibdir}/include/adxintrin.h
%{gcclibdir}/include/ammintrin.h
%{gcclibdir}/include/amxbf16intrin.h
+%{gcclibdir}/include/amxcomplexintrin.h
+%{gcclibdir}/include/amxfp16intrin.h
%{gcclibdir}/include/amxint8intrin.h
%{gcclibdir}/include/amxtileintrin.h
%{gcclibdir}/include/avx2intrin.h
%{gcclibdir}/include/avx512dqintrin.h
%{gcclibdir}/include/avx512erintrin.h
%{gcclibdir}/include/avx512fintrin.h
+%{gcclibdir}/include/avx512fp16intrin.h
+%{gcclibdir}/include/avx512fp16vlintrin.h
%{gcclibdir}/include/avx512ifmaintrin.h
%{gcclibdir}/include/avx512ifmavlintrin.h
%{gcclibdir}/include/avx512pfintrin.h
%{gcclibdir}/include/avx512vp2intersectvlintrin.h
%{gcclibdir}/include/avx512vpopcntdqintrin.h
%{gcclibdir}/include/avx512vpopcntdqvlintrin.h
+%{gcclibdir}/include/avxifmaintrin.h
%{gcclibdir}/include/avxintrin.h
+%{gcclibdir}/include/avxneconvertintrin.h
+%{gcclibdir}/include/avxvnniint8intrin.h
%{gcclibdir}/include/avxvnniintrin.h
%{gcclibdir}/include/bmi2intrin.h
%{gcclibdir}/include/bmiintrin.h
%{gcclibdir}/include/clflushoptintrin.h
%{gcclibdir}/include/clwbintrin.h
%{gcclibdir}/include/clzerointrin.h
+%{gcclibdir}/include/cmpccxaddintrin.h
%{gcclibdir}/include/cpuid.h
%{gcclibdir}/include/cross-stdarg.h
%{gcclibdir}/include/emmintrin.h
%{gcclibdir}/include/pkuintrin.h
%{gcclibdir}/include/pmmintrin.h
%{gcclibdir}/include/popcntintrin.h
+%{gcclibdir}/include/prfchiintrin.h
%{gcclibdir}/include/prfchwintrin.h
+%{gcclibdir}/include/raointintrin.h
%{gcclibdir}/include/rdseedintrin.h
%{gcclibdir}/include/rtmintrin.h
%{gcclibdir}/include/serializeintrin.h
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libstdc++.so
%{_libdir}/libstdc++.la
+%{_libdir}/libstdc++exp.a
+%{_libdir}/libstdc++exp.la
%{_libdir}/libstdc++fs.a
%{_libdir}/libstdc++fs.la
%dir %{_includedir}/c++
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir32}/libstdc++.so
%{_libdir32}/libstdc++.la
+%{_libdir32}/libstdc++exp.a
+%{_libdir32}/libstdc++exp.la
%{_libdir32}/libstdc++fs.a
%{_libdir32}/libstdc++fs.la
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdirm2}/libstdc++.so
%{_libdirm2}/libstdc++.la
+%{_libdirm2}/libstdc++exp.a
+%{_libdirm2}/libstdc++exp.la
%{_libdirm2}/libstdc++fs.a
%{_libdirm2}/libstdc++fs.la
%{gcclibdir}/include/ISO_Fortran_binding.h
%{gcclibdir}/libcaf_single.a
%{gcclibdir}/libcaf_single.la
-#%{gcclibdir}/libgfortranbegin.la
-#%{gcclibdir}/libgfortranbegin.a
%{_infodir}/gfortran.info*
%{_mandir}/man1/g95.1*
%{_mandir}/man1/gfortran.1*
%{_libdir32}/libgfortran.la
%{gcclibdir}/32/libcaf_single.a
%{gcclibdir}/32/libcaf_single.la
-#%{gcclibdir}/32/libgfortranbegin.la
-#%{gcclibdir}/32/libgfortranbegin.a
%endif
%if %{with multilib2}
%{_libdirm2}/libgfortran.la
%{gcclibdir}/%{multilib2}/libcaf_single.a
%{gcclibdir}/%{multilib2}/libcaf_single.la
-#%{gcclibdir}/%{multilib2}/libgfortranbegin.la
-#%{gcclibdir}/%{multilib2}/libgfortranbegin.a
%endif
%files -n libgfortran
%endif
%endif
+%if %{with modula2}
+%files m2
+%defattr(644,root,root,755)
+%doc gcc/m2/{COPYING.RUNTIME,ChangeLog,NEWS,README}
+%attr(755,root,root) %{_bindir}/gm2
+%attr(755,root,root) %{_bindir}/*-gm2
+%attr(755,root,root) %{gcclibdir}/cc1gm2
+%attr(755,root,root) %{gcclibdir}/plugin/m2rte.so
+%attr(755,root,root) %{_libdir}/libm2cor.so
+%attr(755,root,root) %{_libdir}/libm2iso.so
+%attr(755,root,root) %{_libdir}/libm2log.so
+%attr(755,root,root) %{_libdir}/libm2min.so
+%attr(755,root,root) %{_libdir}/libm2pim.so
+%{_libdir}/libm2cor.la
+%{_libdir}/libm2iso.la
+%{_libdir}/libm2log.la
+%{_libdir}/libm2min.la
+%{_libdir}/libm2pim.la
+%{gcclibdir}/m2
+%{_mandir}/man1/gm2.1*
+
+%if %{with multilib}
+%files m2-multilib-32
+%defattr(644,root,root,755)
+%{gcclibdir}/32/m2
+%attr(755,root,root) %{_libdir32}/libm2cor.so
+%attr(755,root,root) %{_libdir32}/libm2iso.so
+%attr(755,root,root) %{_libdir32}/libm2log.so
+%attr(755,root,root) %{_libdir32}/libm2min.so
+%attr(755,root,root) %{_libdir32}/libm2pim.so
+%{_libdir32}/libm2cor.la
+%{_libdir32}/libm2iso.la
+%{_libdir32}/libm2log.la
+%{_libdir32}/libm2min.la
+%{_libdir32}/libm2pim.la
+%endif
+
+%if %{with multilib2}
+%files m2-multilib-%{multilib2}
+%defattr(644,root,root,755)
+%{gcclibdir}/%{multilib2}/m2
+%attr(755,root,root) %{_libdirm2}/libm2cor.so
+%attr(755,root,root) %{_libdirm2}/libm2iso.so
+%attr(755,root,root) %{_libdirm2}/libm2log.so
+%attr(755,root,root) %{_libdirm2}/libm2min.so
+%attr(755,root,root) %{_libdirm2}/libm2pim.so
+%{_libdirm2}/libm2cor.la
+%{_libdirm2}/libm2iso.la
+%{_libdirm2}/libm2log.la
+%{_libdirm2}/libm2min.la
+%{_libdirm2}/libm2pim.la
+%endif
+
+%files -n libgm2
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libm2cor.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libm2cor.so.18
+%attr(755,root,root) %{_libdir}/libm2iso.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libm2iso.so.18
+%attr(755,root,root) %{_libdir}/libm2log.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libm2log.so.18
+%attr(755,root,root) %{_libdir}/libm2min.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libm2min.so.18
+%attr(755,root,root) %{_libdir}/libm2pim.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libm2pim.so.18
+
+%files -n libgm2-static
+%defattr(644,root,root,755)
+%{_libdir}/libm2cor.a
+%{_libdir}/libm2iso.a
+%{_libdir}/libm2log.a
+%{_libdir}/libm2min.a
+%{_libdir}/libm2pim.a
+
+%if %{with multilib}
+%files -n libgm2-multilib-32
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir32}/libm2cor.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir32}/libm2cor.so.18
+%attr(755,root,root) %{_libdir32}/libm2iso.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir32}/libm2iso.so.18
+%attr(755,root,root) %{_libdir32}/libm2log.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir32}/libm2log.so.18
+%attr(755,root,root) %{_libdir32}/libm2min.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir32}/libm2min.so.18
+%attr(755,root,root) %{_libdir32}/libm2pim.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir32}/libm2pim.so.18
+
+%files -n libgm2-multilib-32-static
+%defattr(644,root,root,755)
+%{_libdir32}/libm2cor.a
+%{_libdir32}/libm2iso.a
+%{_libdir32}/libm2log.a
+%{_libdir32}/libm2min.a
+%{_libdir32}/libm2pim.a
+%endif
+
+%if %{with multilib2}
+%files -n libgm2-multilib-%{multilib2}
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdirm2}/libm2cor.so.*.*.*
+%attr(755,root,root) %ghost %{_libdirm2}/libm2cor.so.18
+%attr(755,root,root) %{_libdirm2}/libm2iso.so.*.*.*
+%attr(755,root,root) %ghost %{_libdirm2}/libm2iso.so.18
+%attr(755,root,root) %{_libdirm2}/libm2log.so.*.*.*
+%attr(755,root,root) %ghost %{_libdirm2}/libm2log.so.18
+%attr(755,root,root) %{_libdirm2}/libm2min.so.*.*.*
+%attr(755,root,root) %ghost %{_libdirm2}/libm2min.so.18
+%attr(755,root,root) %{_libdirm2}/libm2pim.so.*.*.*
+%attr(755,root,root) %ghost %{_libdirm2}/libm2pim.so.18
+
+%files -n libgm2-multilib-%{multilib2}-static
+%defattr(644,root,root,755)
+%{_libdirm2}/libm2cor.a
+%{_libdirm2}/libm2iso.a
+%{_libdirm2}/libm2log.a
+%{_libdirm2}/libm2min.a
+%{_libdirm2}/libm2pim.a
+%endif
+%endif
+
%if %{with objc}
%files objc
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%doc libgo/{LICENSE,PATENTS,README}
%attr(755,root,root) %{_libdir}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgo.so.19
+%attr(755,root,root) %ghost %{_libdir}/libgo.so.22
%files -n libgo-devel
%defattr(644,root,root,755)
%files -n libgo-multilib-32
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir32}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libgo.so.19
+%attr(755,root,root) %ghost %{_libdir32}/libgo.so.22
%files -n libgo-multilib-32-devel
%defattr(644,root,root,755)
%files -n libgo-multilib-%{multilib2}
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdirm2}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libgo.so.19
+%attr(755,root,root) %ghost %{_libdirm2}/libgo.so.22
%files -n libgo-multilib-%{multilib2}-devel
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%doc libsanitizer/ChangeLog* libsanitizer/LICENSE.TXT
%attr(755,root,root) %{_libdir}/libasan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libasan.so.6
+%attr(755,root,root) %ghost %{_libdir}/libasan.so.8
%files -n libasan-devel
%defattr(644,root,root,755)
%files -n libasan-multilib-32
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir32}/libasan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libasan.so.6
+%attr(755,root,root) %ghost %{_libdir32}/libasan.so.8
%files -n libasan-multilib-32-devel
%defattr(644,root,root,755)
%files -n libasan-multilib-%{multilib2}
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdirm2}/libasan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libasan.so.6
+%attr(755,root,root) %ghost %{_libdirm2}/libasan.so.8
%files -n libasan-multilib-%{multilib2}-devel
%defattr(644,root,root,755)
%files -n libhwasan-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libhwasan.so
+%{_libdir}/libhwasan_preinit.o
%{_libdir}/libhwasan.la
%{gcclibdir}/include/sanitizer/hwasan_interface.h
%{_libdir}/libhwasan.a
%endif
+%if %{with multilib2} && %{with hwasan_m2}
+%files -n libhwasan-multilib-%{multilib2}
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdirm2}/libhwasan.so.*.*.*
+%attr(755,root,root) %ghost %{_libdirm2}/libhwasan.so.0
+
+%files -n libhwasan-multilib-%{multilib2}-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdirm2}/libhwasan.so
+%{_libdirm2}/libhwasan_preinit.o
+%{_libdirm2}/libhwasan.la
+%{gcclibdir}/include/sanitizer/hwasan_interface.h
+
+%files -n libhwasan-multilib-%{multilib2}-static
+%defattr(644,root,root,755)
+%{_libdirm2}/libhwasan.a
+%endif
+
%if %{with lsan_m0}
%files -n liblsan
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%doc libsanitizer/ChangeLog* libsanitizer/LICENSE.TXT
%attr(755,root,root) %{_libdir}/libtsan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libtsan.so.0
+%attr(755,root,root) %ghost %{_libdir}/libtsan.so.2
%files -n libtsan-devel
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%doc libsanitizer/ChangeLog* libsanitizer/LICENSE.TXT
%attr(755,root,root) %{_libdirm2}/libtsan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libtsan.so.0
+%attr(755,root,root) %ghost %{_libdirm2}/libtsan.so.2
%files -n libtsan-multilib-%{multilib2}-devel
%defattr(644,root,root,755)