]> TLD Linux GIT Repositories - packages/gcc.git/blobdiff - gcc.spec
- release 5
[packages/gcc.git] / gcc.spec
index fd2803079e4af78d0ce77333b9144380021db5b5..392be42c8a7528b3d727711c972d3a7a1e86ee11 100644 (file)
--- a/gcc.spec
+++ b/gcc.spec
@@ -4,8 +4,6 @@
 # - when adding new subpackages with external libraries (like libffi)
 #   or having own Version, do not use epoch 6 there, reset them to 0!
 #
-# TODO:
-# - revise obsoletes for new libmpx packages!
 #
 # Conditional build:
 # - languages:
 # - features:
 %bcond_without gomp            # build without OpenMP support
 %bcond_without multilib        # build without multilib support (which needs glibc[32&64]-devel)
-%bcond_without multilibx32     # build with x32 multilib support on x86_64 (needs x32 glibc-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_with    gcc_libffi      # packaging gcc libffi for system usage
 # - other:
+%bcond_without apidocs         # do not package API docs
 %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)
 %define                with_multilib2  1
 %endif
 %endif
-%ifarch %{ix86} %{x8664} x32 alpha arm ppc ppc64 sh sparc sparcv9 sparc64
+%ifarch %{ix86} %{x8664} x32 alpha %{arm} ppc ppc64 sh sparc sparcv9 sparc64 aarch64
 # library for atomic operations not supported by hardware
 %define                with_atomic     1
 %endif
-%ifarch %{ix86} %{x8664} x32
-%define                with_cilkrts    1
-%endif
-%ifarch %{ix86} %{x8664} x32 arm ppc ppc64 sparc sparcv9 sparc64
+%ifarch %{ix86} %{x8664} x32 %{arm} ppc ppc64 sparc sparcv9 sparc64 aarch64
 # sanitizer feature (asan and ubsan are common for all supported archs)
 %define                with_Xsan       1
 %endif
-%ifarch %{x8664}
+%ifarch %{x8664} aarch64
 # lsan and tsan exist only for primary x86_64 ABI
 %define                with_lsan_m0    1
 %define                with_tsan_m0    1
 %define                with_lsan_m2    1
 %define                with_tsan_m2    1
 %endif
+%ifarch aarch64
+%define                with_hwasan     1
+%endif
 %ifarch %{ix86} %{x8664} x32
 %define                with_vtv        1
 %endif
+%ifarch %{ix86} %{x8664} x32 ia64
+%define                with_quadmath   1
+%endif
 
 # Stable is: any major_ver and minor_ver >= 1.0
-# For PLD we usually use gcc when minor_ver >= 2.0 (first bugfix release or later)
-%define                major_ver       7
+# 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
 
 Summary:       GNU Compiler Collection: the C compiler and shared files
@@ -105,24 +107,23 @@ Summary(pl.UTF-8):        Kolekcja kompilatorów GNU: kompilator C i pliki współdziel
 Summary(pt_BR.UTF-8):  Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
 Name:          gcc
 Version:       %{major_ver}.%{minor_ver}
-Release:       3
+Release:       5
 Epoch:         6
 License:       GPL v3+
 Group:         Development/Languages
-Source0:       https://ftp.gnu.org/pub/gnu/gcc/gcc-%{version}/%{name}-%{version}.tar.xz
-# Source0-md5: ff370482573133a7fcdd96cd2f552292
+Source0:       https://gcc.gnu.org/pub/gcc/releases/%{name}-%{version}/%{name}-%{version}.tar.xz
+# Source0-md5: 31c86f2ced76acac66992eeedce2fce2
 Source1:       %{name}-optimize-la.pl
 # check libffi version with libffi/configure.ac
 Source3:       libffi.pc.in
 Source4:       branch.sh
-# use branch.sh to update glibc-branch.diff
+# use branch.sh to update gcc-branch.diff
 Patch100:      %{name}-branch.diff
-# Patch100-md5:        3410627f44b63a23f63e0cc7247db55a
+# Patch100-md5:        b87420dd46c41e2398444f2c06e29276
 Patch0:                %{name}-info.patch
 Patch2:                %{name}-nodebug.patch
 Patch3:                %{name}-ada-link.patch
 Patch4:                %{name}-ada-x32.patch
-Patch5:                Revert-eeb6872bf.patch
 
 Patch10:       %{name}-moresparcs.patch
 Patch11:       %{name}-install-libffi.patch
@@ -130,7 +131,7 @@ URL:                http://gcc.gnu.org/
 BuildRequires: autoconf >= 2.64
 %{?with_tests:BuildRequires:   autogen >= 5.5.4}
 BuildRequires: automake >= 1:1.11.1
-BuildRequires: binutils >= 3:2.23
+BuildRequires: binutils >= 3:2.30
 BuildRequires: bison
 BuildRequires: chrpath >= 0.13-2
 %{?with_tests:BuildRequires:   dejagnu >= 1.4.4}
@@ -176,21 +177,24 @@ BuildRequires:    gmp-c++-devel >= 4.3.2
 BuildRequires: gmp-devel >= 4.3.2
 BuildRequires: isl-devel >= 0.15
 BuildRequires: libmpc-devel >= 0.8.1
-BuildRequires: mpfr-devel >= 2.4.2
+BuildRequires: mpfr-devel >= 3.1.0
 %if %{with python}
-BuildRequires: python-devel
+BuildRequires: python3-devel
 BuildRequires: rpm-pythonprov
 %endif
 BuildRequires: rpmbuild(macros) >= 1.211
+BuildRequires: tar >= 1:1.22
 BuildRequires: texinfo >= 4.7
+BuildRequires: xz
 BuildRequires: zlib-devel
+BuildRequires: zstd-devel
 BuildConflicts:        pdksh < 5.2.14-50
-Requires:      binutils >= 3:2.23
+Requires:      binutils >= 3:2.30
 Requires:      gmp >= 4.3.2
 Requires:      isl >= 0.15
 Requires:      libgcc = %{epoch}:%{version}-%{release}
 Requires:      libmpc >= 0.8.1
-Requires:      mpfr >= 2.4.2
+Requires:      mpfr >= 3.1.0
 Provides:      cpp = %{epoch}:%{version}-%{release}
 %{?with_ada:Provides:  gcc(ada)}
 Obsoletes:     cpp
@@ -237,7 +241,7 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 # receiving non constant format strings
 %define                Werror_cflags   %{nil}
 
-%define                skip_post_check_so      '.*(libasan|libcc1plugin|libcp1plugin|libgo|libxmlj|libubsan|lib-gnu-awt-xlib|libmpxwrappers)\.so.*'
+%define                skip_post_check_so      '.*(libasan|libcc1plugin|libcp1plugin|libgnat-%{major_ver}|libgo|libitm|libxmlj|libubsan|lib-gnu-awt-xlib)\.so.*'
 # private symbols
 %define                _noautoreq              .*\(GLIBC_PRIVATE\)
 
@@ -502,146 +506,6 @@ Static GNU OpenMP library - %{m2_desc} version.
 %description -n libgomp-multilib-%{multilib2}-static -l pl.UTF-8
 Statyczna biblioteka GNU OpenMP - wersja %{m2_desc}.
 
-%package -n libcilkrts
-Summary:       GCC Cilk Plus language extensions runtime library
-Summary(pl.UTF-8):     Biblioteka uruchomieniowa rozszerzeń Cilk Plus dla GCC
-License:       BSD
-Group:         Libraries
-Requires:      libstdc++ = %{epoch}:%{version}-%{release}
-
-%description -n libcilkrts
-This package contains the Cilk Plus C/C++ language extensions runtime
-library.
-
-%description -n libcilkrts -l pl.UTF-8
-Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Cilk Plus dla
-języków C/C++.
-
-%package -n libcilkrts-devel
-Summary:       GCC development files for Cilk Plus language extensions
-Summary(pl.UTF-8):     Pliki programistyczne GCC dla rozszerzeń Cilk Plus
-License:       BSD
-Group:         Development/Libraries
-Requires:      libcilkrts = %{epoch}:%{version}-%{release}
-
-%description -n libcilkrts-devel
-This package contains development files for Cilk Plus C/C++ language
-extensions.
-
-%description -n libcilkrts-devel -l pl.UTF-8
-Ten pakiet zawiera pliki programistyczne rozszerzeń Cilk Plus dla
-języków C/C++.
-
-%package -n libcilkrts-static
-Summary:       GCC Cilk Plus language extensions static library
-Summary(pl.UTF-8):     Biblioteka statyczna rozszerzeń Cilk Plus dla GCC
-License:       BSD
-Group:         Development/Libraries
-Requires:      libcilkrts-devel = %{epoch}:%{version}-%{release}
-
-%description -n libcilkrts-static
-This package contains Cilk Plus C/C++ language extensions static
-library.
-
-%description -n libcilkrts-static -l pl.UTF-8
-Ten pakiet zawiera bibliotekę statyczną rozszerzeń Cilk Plus dla
-języków C/C++.
-
-%package -n libcilkrts-multilib-32
-Summary:       GCC Cilk Plus language extensions runtime library - 32-bit version
-Summary(pl.UTF-8):     Biblioteka uruchomieniowa rozszerzeń Cilk Plus dla GCC - wersja 32-bitowa
-License:       BSD
-Group:         Libraries
-Requires:      libstdc++-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes:     libcilkrts-multilib
-
-%description -n libcilkrts-multilib-32
-This package contains the Cilk Plus C/C++ language extensions runtime
-library in 32-bit version.
-
-%description -n libcilkrts-multilib-32 -l pl.UTF-8
-Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Cilk Plus dla
-języków C/C++. W tym pakiecie znajduje się wersja 32-bitowa.
-
-%package -n libcilkrts-multilib-32-devel
-Summary:       GCC development files for Cilk Plus language extensions - 32-bit version
-Summary(pl.UTF-8):     Pliki programistyczne GCC dla rozszerzeń Cilk Plus - wersja 32-bitowa
-License:       BSD
-Group:         Development/Libraries
-Requires:      libcilkrts-devel = %{epoch}:%{version}-%{release}
-Requires:      libcilkrts-multilib-32 = %{epoch}:%{version}-%{release}
-Obsoletes:     libcilkrts-multilib-devel
-
-%description -n libcilkrts-multilib-32-devel
-This package contains development files for Cilk Plus C/C++ language
-extensions in 32-bit version.
-
-%description -n libcilkrts-multilib-32-devel -l pl.UTF-8
-Ten pakiet zawiera pliki programistyczne rozszerzeń Cilk Plus dla
-języków C/C++. W tym pakiecie znajduje się wersja 32-bitowa.
-
-%package -n libcilkrts-multilib-32-static
-Summary:       GCC Cilk Plus language extensions static library - 32-bit version
-Summary(pl.UTF-8):     Biblioteka statyczna rozszerzeń Cilk Plus dla GCC - wersja 32-bitowa
-License:       BSD
-Group:         Development/Libraries
-Requires:      libcilkrts-multilib-32-devel = %{epoch}:%{version}-%{release}
-Obsoletes:     libcilkrts-multilib-static
-
-%description -n libcilkrts-multilib-32-static
-This package contains the Cilk Plus C/C++ language extensions static
-library in 32-bit version.
-
-%description -n libcilkrts-multilib-32-static -l pl.UTF-8
-Ten pakiet zawiera bibliotekę statyczną rozszerzeń Cilk Plus dla
-języków C/C++. W tym pakiecie znajduje się wersja 32-bitowa.
-
-%package -n libcilkrts-multilib-%{multilib2}
-Summary:       GCC Cilk Plus language extensions runtime library - %{m2_desc} version
-Summary(pl.UTF-8):     Biblioteka uruchomieniowa rozszerzeń Cilk Plus dla GCC - wersja %{m2_desc}
-License:       BSD
-Group:         Libraries
-Requires:      libstdc++-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
-
-%description -n libcilkrts-multilib-%{multilib2}
-This package contains the Cilk Plus C/C++ language extensions runtime
-library in %{m2_desc} version.
-
-%description -n libcilkrts-multilib-%{multilib2} -l pl.UTF-8
-Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Cilk Plus dla
-języków C/C++. W tym pakiecie znajduje się wersja %{m2_desc}.
-
-%package -n libcilkrts-multilib-%{multilib2}-devel
-Summary:       GCC development files for Cilk Plus language extensions - %{m2_desc} version
-Summary(pl.UTF-8):     Pliki programistyczne GCC dla rozszerzeń Cilk Plus - wersja %{m2_desc}
-License:       BSD
-Group:         Development/Libraries
-Requires:      libcilkrts-devel = %{epoch}:%{version}-%{release}
-Requires:      libcilkrts-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
-
-%description -n libcilkrts-multilib-%{multilib2}-devel
-This package contains development files for Cilk Plus C/C++ language
-extensions in %{m2_desc} version.
-
-%description -n libcilkrts-multilib-%{multilib2}-devel -l pl.UTF-8
-Ten pakiet zawiera pliki programistyczne rozszerzeń Cilk Plus dla
-języków C/C++. W tym pakiecie znajduje się wersja %{m2_desc}.
-
-%package -n libcilkrts-multilib-%{multilib2}-static
-Summary:       GCC Cilk Plus language extensions static library - %{m2_desc} version
-Summary(pl.UTF-8):     Biblioteka statyczna rozszerzeń Cilk Plus dla GCC - wersja %{m2_desc}
-License:       BSD
-Group:         Development/Libraries
-Requires:      libcilkrts-multilib-%{multilib2}-devel = %{epoch}:%{version}-%{release}
-
-%description -n libcilkrts-multilib-%{multilib2}-static
-This package contains the Cilk Plus C/C++ language extensions static
-library in %{m2_desc} version.
-
-%description -n libcilkrts-multilib-%{multilib2}-static -l pl.UTF-8
-Ten pakiet zawiera bibliotekę statyczną rozszerzeń Cilk Plus dla
-języków C/C++. W tym pakiecie znajduje się wersja %{m2_desc}.
-
 %package ada
 Summary:       Ada language support for GCC
 Summary(es.UTF-8):     Soporte de Ada para GCC
@@ -1078,6 +942,19 @@ libstdc++ types/containers.
 Ten pakiet zawiera skrypty Pythona dla GDB służące do ładnego
 wypisywania typów i kontenerów libstdc++.
 
+%package -n libstdc++-apidocs
+Summary:       C++ standard library API documentation
+Summary(pl.UTF-8):     Dokumentacja API biblioteki standardowej C++
+License:       FDL v1.3 (mainly), GPL v3+ (doxygen generated parts)
+Group:         Documentation
+BuildArch:     noarch
+
+%description -n libstdc++-apidocs
+API and internal documentation for C++ standard library.
+
+%description -n libstdc++-apidocs -l pl.UTF-8
+Dokumentacja API i wewnętrzna biblioteki standardowej C++.
+
 %package fortran
 Summary:       Fortran 95 language support for GCC
 Summary(es.UTF-8):     Soporte de Fortran 95 para GCC
@@ -1086,7 +963,7 @@ Summary(pt_BR.UTF-8):      Suporte Fortran 95 para o GCC
 Group:         Development/Languages/Fortran
 Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      libgfortran = %{epoch}:%{version}-%{release}
-Requires:      libquadmath-devel = %{epoch}:%{version}-%{release}
+%{?with_quadmath:Requires:     libquadmath-devel = %{epoch}:%{version}-%{release}}
 Provides:      gcc-g77 = %{epoch}:%{version}-%{release}
 Obsoletes:     egcs-g77
 Obsoletes:     gcc-g77
@@ -1111,7 +988,7 @@ Summary(pl.UTF-8): Obsługa binariów 32-bitowych w języku Fortran 95 dla GCC
 Group:         Development/Languages/Fortran
 Requires:      %{name}-fortran = %{epoch}:%{version}-%{release}
 Requires:      libgfortran-multilib-32 = %{epoch}:%{version}-%{release}
-Requires:      libquadmath-multilib-32-devel = %{epoch}:%{version}-%{release}
+%{?with_quadmath:Requires:     libquadmath-multilib-32-devel = %{epoch}:%{version}-%{release}}
 Obsoletes:     gcc-fortran-multilib
 
 %description fortran-multilib-32
@@ -1128,7 +1005,7 @@ Summary(pl.UTF-8):        Obsługa binariów %{m2_desc} w języku Fortran 95 dla GCC
 Group:         Development/Languages/Fortran
 Requires:      %{name}-fortran = %{epoch}:%{version}-%{release}
 Requires:      libgfortran-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
-Requires:      libquadmath-multilib-%{multilib2}-devel = %{epoch}:%{version}-%{release}
+%{?with_quadmath:Requires:     libquadmath-multilib-%{multilib2}-devel = %{epoch}:%{version}-%{release}}
 
 %description fortran-multilib-%{multilib2}
 This package adds support for compiling Fortran 95 programs to %{m2_desc}
@@ -1145,7 +1022,7 @@ Summary(pl.UTF-8):        Biblioteka Fortranu 95
 License:       GPL v3+ with GCC Runtime Library Exception v3.1
 Group:         Libraries
 Requires:      libgcc = %{epoch}:%{version}-%{release}
-Requires:      libquadmath = %{epoch}:%{version}-%{release}
+%{?with_quadmath:Requires:     libquadmath = %{epoch}:%{version}-%{release}}
 Obsoletes:     libg2c
 
 %description -n libgfortran
@@ -1181,7 +1058,7 @@ Summary(pl.UTF-8):        Biblioteka Fortranu 95 - wersja 32-bitowa
 License:       GPL v3+ with GCC Runtime Library Exception v3.1
 Group:         Libraries
 Requires:      libgcc-multilib-32 = %{epoch}:%{version}-%{release}
-Requires:      libquadmath-multilib-32 = %{epoch}:%{version}-%{release}
+%{?with_quadmath:Requires:     libquadmath-multilib-32 = %{epoch}:%{version}-%{release}}
 Obsoletes:     libgfortran-multilib
 
 %description -n libgfortran-multilib-32
@@ -1209,7 +1086,7 @@ Summary:  Fortran 95 Library - %{m2_desc} version
 Summary(pl.UTF-8):     Biblioteka Fortranu 95 - wersja %{m2_desc}
 License:       GPL v3+ with GCC Runtime Library Exception v3.1
 Group:         Libraries
-Requires:      libquadmath-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
+%{?with_quadmath:Requires:     libquadmath-multilib-%{multilib2} = %{epoch}:%{version}-%{release}}
 
 %description -n libgfortran-multilib-%{multilib2}
 Fortran 95 Library - %{m2_desc} version.
@@ -2021,6 +1898,52 @@ library.
 Ten pakiet zawiera wersję %{m2_desc} statycznej biblioteki Address
 Sanitizer.
 
+%package -n libhwasan
+Summary:       The Hardware-Assisted Address Sanitizer library
+Summary(pl.UTF-8):     Biblioteka Hardware-Assisted Address Sanitizer do kontroli adresów
+License:       BSD-like or MIT
+Group:         Libraries
+Requires:      libstdc++ = %{epoch}:%{version}-%{release}
+
+%description -n libhwasan
+This package contains the Hardware-Assisted Address Sanitizer library
+which is used for -fsanitize=hwaddress instrumented programs.
+
+%description -n libhwasan -l pl.UTF-8
+Ten pakiet zawiera bibliotekę Hardware-Assisted Address Sanitizer,
+służącą do kontroli adresów w programach kompilowanych z opcją
+-fsanitize=hwaddress.
+
+%package -n libhwasan-devel
+Summary:       Development files for the Hardware-Assisted Address Sanitizer library
+Summary(pl.UTF-8):     Pliki programistyczne biblioteki Hardware-Assisted Address Sanitizer
+License:       BSD-like or MIT
+Group:         Development/Libraries
+Requires:      libhwasan = %{epoch}:%{version}-%{release}
+
+%description -n libhwasan-devel
+This package contains development files for the Hardware-Assisted
+Address Sanitizer library.
+
+%description -n libhwasan-devel -l pl.UTF-8
+Ten pakiet zawiera pliki programistyczne biblioteki Hardware-Assisted
+Address Sanitizer.
+
+%package -n libhwasan-static
+Summary:       The Hardware-Assisted Address Sanitizer static library
+Summary(pl.UTF-8):     Statyczna biblioteka Hardware-Assisted Address Sanitizer
+License:       BSD-like or MIT
+Group:         Development/Libraries
+Requires:      libhwasan-devel = %{epoch}:%{version}-%{release}
+
+%description -n libhwasan-static
+This package contains Hardware-Assisted Address Sanitizer static
+library.
+
+%description -n libhwasan-static -l pl.UTF-8
+Ten pakiet zawiera statyczną bibliotekę Hardware-Assisted Address
+Sanitizer.
+
 %package -n liblsan
 Summary:       The Leak Sanitizer library
 Summary(pl.UTF-8):     Biblioteka Leak Sanitizer do kontroli wycieków
@@ -2630,7 +2553,7 @@ Group:            Development/Languages
 Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      gmp-devel >= 4.3.2
 Requires:      libmpc-devel >= 0.8.1
-Requires:      mpfr-devel >= 2.4.2
+Requires:      mpfr-devel >= 3.1.0
 
 %description plugin-devel
 This package contains header files and other support files for
@@ -2645,164 +2568,15 @@ więc wtyczki muszą być przebudowywane przy każdej aktualizacji GCC.
 # Packages with epoch 0
 # DO NOT MOVE THESE PACKAGES AROUND
 
-%package -n libmpx
-Summary:       GCC Memory Protection Extensions language extensions runtime library
-Summary(pl.UTF-8):     Biblioteka uruchomieniowa rozszerzeń Memory Protection Extensions dla GCC
-Epoch:         0
-License:       BSD
-Group:         Libraries
-Requires:      libstdc++ = 6:%{version}-%{release}
-
-%description -n libmpx
-This package contains the Memory Protection Extensions C language
-extensions runtime library.
-
-%description -n libmpx -l pl.UTF-8
-Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Memory
-Protection Extensions dla języka C.
-
-%package -n libmpx-devel
-Summary:       GCC development files for Memory Protection Extensions language extensions
-Summary(pl.UTF-8):     Pliki programistyczne GCC dla rozszerzeń Memory Protection Extensions
-Epoch:         0
-License:       BSD
-Group:         Development/Libraries
-Requires:      libmpx = %{version}-%{release}
-
-%description -n libmpx-devel
-This package contains development files for Memory Protection
-Extensions C language extensions.
-
-%description -n libmpx-devel -l pl.UTF-8
-Ten pakiet zawiera pliki programistyczne rozszerzeń Memory Protection
-Extensions dla języka C.
-
-%package -n libmpx-static
-Summary:       GCC Memory Protection Extensions language extensions static library
-Summary(pl.UTF-8):     Biblioteka statyczna rozszerzeń Memory Protection Extensions dla GCC
-Epoch:         0
-License:       BSD
-Group:         Development/Libraries
-Requires:      libmpx-devel = %{version}-%{release}
-
-%description -n libmpx-static
-This package contains Memory Protection Extensions C language
-extensions static library.
-
-%description -n libmpx-static -l pl.UTF-8
-Ten pakiet zawiera bibliotekę statyczną rozszerzeń Memory Protection
-Extensions dla języka C.
-
-%package -n libmpx-multilib-32
-Summary:       GCC Memory Protection Extensions language extensions runtime library - 32-bit version
-Summary(pl.UTF-8):     Biblioteka uruchomieniowa rozszerzeń Memory Protection Extensions dla GCC - wersja 32-bitowa
-Epoch:         0
-License:       BSD
-Group:         Libraries
-Requires:      libstdc++-multilib-32 = %{version}-%{release}
-Obsoletes:     libmpx-multilib
-
-%description -n libmpx-multilib-32
-This package contains the Memory Protection Extensions C language
-extensions runtime library in 32-bit version.
-
-%description -n libmpx-multilib-32 -l pl.UTF-8
-Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Memory
-Protection Extensions dla języka C. W tym pakiecie znajduje się wersja
-32-bitowa.
-
-%package -n libmpx-multilib-32-devel
-Summary:       GCC development files for Memory Protection Extensions language extensions - 32-bit version
-Summary(pl.UTF-8):     Pliki programistyczne GCC dla rozszerzeń Memory Protection Extensions - wersja 32-bitowa
-Epoch:         0
-License:       BSD
-Group:         Development/Libraries
-Requires:      libmpx-devel = %{version}-%{release}
-Requires:      libmpx-multilib-32 = %{version}-%{release}
-Obsoletes:     libmpx-multilib-devel
-
-%description -n libmpx-multilib-32-devel
-This package contains development files for Memory Protection
-Extensions C language extensions in 32-bit version.
-
-%description -n libmpx-multilib-32-devel -l pl.UTF-8
-Ten pakiet zawiera pliki programistyczne rozszerzeń Memory Protection
-Extensions dla języka C. W tym pakiecie znajduje się wersja 32-bitowa.
-
-%package -n libmpx-multilib-32-static
-Summary:       GCC Memory Protection Extensions language extensions static library - 32-bit version
-Summary(pl.UTF-8):     Biblioteka statyczna rozszerzeń Memory Protection Extensions dla GCC - wersja 32-bitowa
-Epoch:         0
-License:       BSD
-Group:         Development/Libraries
-Requires:      libmpx-multilib-32-devel = %{version}-%{release}
-Obsoletes:     libmpx-multilib-static
-
-%description -n libmpx-multilib-32-static
-This package contains the Memory Protection Extensions C language
-extensions static library in 32-bit version.
-
-%description -n libmpx-multilib-32-static -l pl.UTF-8
-Ten pakiet zawiera bibliotekę statyczną rozszerzeń Memory Protection
-Extensions dla języka C. W tym pakiecie znajduje się wersja 32-bitowa.
-
-%package -n libmpx-multilib-%{multilib2}
-Summary:       GCC Memory Protection Extensions language extensions runtime library
-Summary(pl.UTF-8):     Biblioteka uruchomieniowa rozszerzeń Memory Protection Extensions dla GCC
-Epoch:         0
-License:       BSD
-Group:         Libraries
-Requires:      libstdc++-multilib-%{multilib2} = 6:%{version}-%{release}
-
-%description -n libmpx-multilib-%{multilib2}
-This package contains the Memory Protection Extensions C language
-extensions runtime library.
-
-%description -n libmpx-multilib-%{multilib2} -l pl.UTF-8
-Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Memory
-Protection Extensions dla języka C.
-
-%package -n libmpx-multilib-%{multilib2}-devel
-Summary:       GCC development files for Memory Protection Extensions language extensions
-Summary(pl.UTF-8):     Pliki programistyczne GCC dla rozszerzeń Memory Protection Extensions
-Epoch:         0
-License:       BSD
-Group:         Development/Libraries
-Requires:      libmpx-devel = %{version}-%{release}
-Requires:      libmpx-multilib-%{multilib2} = %{version}-%{release}
-
-%description -n libmpx-multilib-%{multilib2}-devel
-This package contains development files for Memory Protection
-Extensions C language extensions.
-
-%description -n libmpx-multilib-%{multilib2}-devel -l pl.UTF-8
-Ten pakiet zawiera pliki programistyczne rozszerzeń Memory Protection
-Extensions dla języka C.
-
-%package -n libmpx-multilib-%{multilib2}-static
-Summary:       GCC Memory Protection Extensions language extensions static library
-Summary(pl.UTF-8):     Biblioteka statyczna rozszerzeń Memory Protection Extensions dla GCC
-Epoch:         0
-License:       BSD
-Group:         Development/Libraries
-Requires:      libmpx-multilib-%{multilib2}-devel = %{version}-%{release}
-
-%description -n libmpx-multilib-%{multilib2}-static
-This package contains the Memory Protection Extensions C language
-extensions static library.
-
-%description -n libmpx-multilib-%{multilib2}-static -l pl.UTF-8
-Ten pakiet zawiera bibliotekę statyczną rozszerzeń Memory Protection
-Extensions dla języka C.
+# PUT SUCH PACKAGES HERE
 
 %prep
 %setup -q
-#%patch100 -p0
+%patch100 -p1
 %patch0 -p1
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
-%patch5 -p1
 
 %patch10 -p1
 %if %{with gcc_libffi}
@@ -2819,7 +2593,6 @@ echo "release" > gcc/DEV-PHASE
 cd gcc
 #{__autoconf}
 cd ..
-cp -f /usr/share/automake/config.sub .
 
 rm -rf builddir && install -d builddir && cd builddir
 
@@ -2895,6 +2668,30 @@ TEXCONFIG=false \
 %endif
        --with-system-zlib \
        --without-x \
+%ifarch armv6l
+       --with-arch=armv6 \
+%endif
+%ifarch armv6hl
+       --with-arch=armv6 \
+       --with-float=hard \
+       --with-fpu=vfp \
+%endif
+%ifarch armv7l
+       --with-arch=armv7 \
+       --with-mode=thumb \
+%endif
+%ifarch armv7hl
+       --with-arch=armv7-a \
+       --with-float=hard \
+       --with-fpu=vfpv3-d16 \
+       --with-mode=thumb \
+%endif
+%ifarch armv7hnl
+       --with-arch=armv7-a \
+       --with-float=hard \
+       --with-fpu=neon-vfpv3 \
+       --with-mode=thumb \
+%endif
 %if %{with cxx}
        --enable-__cxa_atexit \
        --enable-libstdcxx-allocator=new \
@@ -2906,8 +2703,8 @@ TEXCONFIG=false \
        --with-gxx-include-dir=%{_includedir}/c++/%{version} \
        %{?with_vtv:--enable-vtable-verify} \
 %endif
-       --with-pkgversion="PLD-Linux" \
-       --with-bugurl="http://bugs.pld-linux.org" \
+       --with-pkgversion="TLD-Linux" \
+       --with-bugurl="https://tld-linux.org" \
        --host=%{_target_platform} \
        --build=%{_target_platform}
 
@@ -2953,15 +2750,15 @@ cp -p gcc/specs $RPM_BUILD_ROOT%{gcclibdir}
 %if %{with multilib}
 # create links
 %ifarch sparc64
-ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc \
-       $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc
-ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-gcc-%{version} \
-       $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-gcc-%{version}
+ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-tld-linux-gcc \
+       $RPM_BUILD_ROOT%{_bindir}/sparc-tld-linux-gcc
+ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-tld-linux-gcc-%{version} \
+       $RPM_BUILD_ROOT%{_bindir}/sparc-tld-linux-gcc-%{version}
 %if %{with cxx}
-ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-c++ \
-       $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-c++
-ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-pld-linux-g++ \
-       $RPM_BUILD_ROOT%{_bindir}/sparc-pld-linux-g++
+ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-tld-linux-c++ \
+       $RPM_BUILD_ROOT%{_bindir}/sparc-tld-linux-c++
+ln -f $RPM_BUILD_ROOT%{_bindir}/sparc64-tld-linux-g++ \
+       $RPM_BUILD_ROOT%{_bindir}/sparc-tld-linux-g++
 %endif
 %endif
 %endif
@@ -3084,9 +2881,10 @@ cp -f libobjc/README gcc/objc/README.libobjc
 # 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_fortran:libgfortran.la libquadmath.la} \
+       %{?with_fortran:libgfortran.la %{?with_quadmath:libquadmath.la}} \
        %{?with_gomp:libgomp.la} \
        %{?with_Xsan:libasan.la libubsan.la} \
+       %{?with_hwasan:libhwasan.la} \
        %{?with_lsan_m0:liblsan.la} \
        %{?with_tsan_m0:libtsan.la} \
        %{?with_atomic:libatomic.la} \
@@ -3099,7 +2897,7 @@ done
 %if %{with multilib}
 for f in libitm.la libssp.la libssp_nonshared.la \
        %{?with_cxx:libstdc++.la libstdc++fs.la libsupc++.la} \
-       %{?with_fortran:libgfortran.la libquadmath.la} \
+       %{?with_fortran:libgfortran.la %{?with_quadmath:libquadmath.la}} \
        %{?with_gomp:libgomp.la} \
        %{?with_Xsan:libasan.la libubsan.la} \
        %{?with_lsan_m1:liblsan.la} \
@@ -3113,7 +2911,7 @@ done
 %if %{with multilib2}
 for f in libitm.la libssp.la libssp_nonshared.la \
        %{?with_cxx:libstdc++.la libstdc++fs.la libsupc++.la} \
-       %{?with_fortran:libgfortran.la libquadmath.la} \
+       %{?with_fortran:libgfortran.la %{?with_quadmath:libquadmath.la}} \
        %{?with_gomp:libgomp.la} \
        %{?with_Xsan:libasan.la libubsan.la} \
        %{?with_lsan_m2:liblsan.la} \
@@ -3150,11 +2948,10 @@ for LIBDIR in %{_libdir} %{?with_multilib:%{_libdir32}} %{?with_multilib2:%{_lib
          < libstdc++-v3/python/hook.in \
          > $LIBPATH/$(basename $RPM_BUILD_ROOT%{_prefix}/%{_lib}/libstdc++.so.*.*.*)-gdb.py
 done
-install -d $RPM_BUILD_ROOT%{py_sitescriptdir}
-%{__mv} $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx $RPM_BUILD_ROOT%{py_sitescriptdir}
-%py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}
-%py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}
-%py_postclean
+install -d $RPM_BUILD_ROOT%{py3_sitescriptdir}
+%{__mv} $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx $RPM_BUILD_ROOT%{py3_sitescriptdir}
+%py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir}
+%py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir}
 %else
 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx
 %endif
@@ -3230,12 +3027,6 @@ rm -rf $RPM_BUILD_ROOT
 %postun        -n libgomp-devel -p /sbin/postshell
 -/usr/sbin/fix-info-dir -c %{_infodir}
 
-%post   -p /sbin/ldconfig -n libcilkrts
-%postun -p /sbin/ldconfig -n libcilkrts
-%post   -p /sbin/ldconfig -n libcilkrts-multilib-32
-%postun -p /sbin/ldconfig -n libcilkrts-multilib-32
-%post   -p /sbin/ldconfig -n libcilkrts-multilib-%{multilib2}
-%postun -p /sbin/ldconfig -n libcilkrts-multilib-%{multilib2}
 %post  -p /sbin/ldconfig -n libgcc
 %postun        -p /sbin/ldconfig -n libgcc
 %post  -p /sbin/ldconfig -n libgcc-multilib-32
@@ -3272,12 +3063,6 @@ rm -rf $RPM_BUILD_ROOT
 %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 libmpx
-%postun        -p /sbin/ldconfig -n libmpx
-%post  -p /sbin/ldconfig -n libmpx-multilib-32
-%postun        -p /sbin/ldconfig -n libmpx-multilib-32
-%post  -p /sbin/ldconfig -n libmpx-multilib-%{multilib2}
-%postun        -p /sbin/ldconfig -n libmpx-multilib-%{multilib2}
 %post  -p /sbin/ldconfig -n libobjc
 %postun        -p /sbin/ldconfig -n libobjc
 %post  -p /sbin/ldconfig -n libobjc-multilib-32
@@ -3302,6 +3087,8 @@ rm -rf $RPM_BUILD_ROOT
 %postun        -p /sbin/ldconfig -n libasan-multilib-32
 %post  -p /sbin/ldconfig -n libasan-multilib-%{multilib2}
 %postun        -p /sbin/ldconfig -n libasan-multilib-%{multilib2}
+%post  -p /sbin/ldconfig -n libhwasan
+%postun        -p /sbin/ldconfig -n libhwasan
 %post  -p /sbin/ldconfig -n liblsan
 %postun        -p /sbin/ldconfig -n liblsan
 %post  -p /sbin/ldconfig -n liblsan-multilib-%{multilib2}
@@ -3343,16 +3130,17 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/gcc-ar
 %attr(755,root,root) %{_bindir}/gcc-nm
 %attr(755,root,root) %{_bindir}/gcc-ranlib
-#%attr(755,root,root) %{_bindir}/gccbug
 %attr(755,root,root) %{_bindir}/gcov
 %attr(755,root,root) %{_bindir}/gcov-dump
 %attr(755,root,root) %{_bindir}/gcov-tool
+%attr(755,root,root) %{_bindir}/lto-dump
 %{_mandir}/man1/cc.1*
 %{_mandir}/man1/cpp.1*
 %{_mandir}/man1/gcc.1*
 %{_mandir}/man1/gcov.1*
 %{_mandir}/man1/gcov-dump.1*
 %{_mandir}/man1/gcov-tool.1*
+%{_mandir}/man1/lto-dump.1*
 %{_infodir}/cpp.info*
 %{_infodir}/cppinternals.info*
 %{_infodir}/gcc.info*
@@ -3408,10 +3196,15 @@ rm -rf $RPM_BUILD_ROOT
 %ifarch %{ix86} %{x8664} x32
 %{gcclibdir}/include/adxintrin.h
 %{gcclibdir}/include/ammintrin.h
+%{gcclibdir}/include/amxbf16intrin.h
+%{gcclibdir}/include/amxint8intrin.h
+%{gcclibdir}/include/amxtileintrin.h 
 %{gcclibdir}/include/avx2intrin.h
 %{gcclibdir}/include/avx5124fmapsintrin.h
 %{gcclibdir}/include/avx5124vnniwintrin.h
-%{gcclibdir}/include/avx512vpopcntdqintrin.h
+%{gcclibdir}/include/avx512bf16intrin.h
+%{gcclibdir}/include/avx512bf16vlintrin.h
+%{gcclibdir}/include/avx512bitalgintrin.h
 %{gcclibdir}/include/avx512bwintrin.h
 %{gcclibdir}/include/avx512cdintrin.h
 %{gcclibdir}/include/avx512dqintrin.h
@@ -3420,46 +3213,73 @@ rm -rf $RPM_BUILD_ROOT
 %{gcclibdir}/include/avx512ifmaintrin.h
 %{gcclibdir}/include/avx512ifmavlintrin.h
 %{gcclibdir}/include/avx512pfintrin.h
+%{gcclibdir}/include/avx512vbmi2intrin.h
+%{gcclibdir}/include/avx512vbmi2vlintrin.h
 %{gcclibdir}/include/avx512vbmiintrin.h
 %{gcclibdir}/include/avx512vbmivlintrin.h
 %{gcclibdir}/include/avx512vlbwintrin.h
 %{gcclibdir}/include/avx512vldqintrin.h
 %{gcclibdir}/include/avx512vlintrin.h
+%{gcclibdir}/include/avx512vnniintrin.h
+%{gcclibdir}/include/avx512vnnivlintrin.h
+%{gcclibdir}/include/avx512vp2intersectintrin.h
+%{gcclibdir}/include/avx512vp2intersectvlintrin.h
+%{gcclibdir}/include/avx512vpopcntdqintrin.h
+%{gcclibdir}/include/avx512vpopcntdqvlintrin.h
 %{gcclibdir}/include/avxintrin.h
+%{gcclibdir}/include/avxvnniintrin.h
 %{gcclibdir}/include/bmi2intrin.h
 %{gcclibdir}/include/bmiintrin.h
 %{gcclibdir}/include/bmmintrin.h
+%{gcclibdir}/include/cet.h
+%{gcclibdir}/include/cetintrin.h
+%{gcclibdir}/include/cldemoteintrin.h
 %{gcclibdir}/include/clflushoptintrin.h
 %{gcclibdir}/include/clwbintrin.h
 %{gcclibdir}/include/clzerointrin.h
 %{gcclibdir}/include/cpuid.h
 %{gcclibdir}/include/cross-stdarg.h
 %{gcclibdir}/include/emmintrin.h
+%{gcclibdir}/include/enqcmdintrin.h
 %{gcclibdir}/include/f16cintrin.h
 %{gcclibdir}/include/fma4intrin.h
 %{gcclibdir}/include/fmaintrin.h
 %{gcclibdir}/include/fxsrintrin.h
+%{gcclibdir}/include/gfniintrin.h
+%{gcclibdir}/include/hresetintrin.h
 %{gcclibdir}/include/ia32intrin.h
 %{gcclibdir}/include/immintrin.h
+%{gcclibdir}/include/keylockerintrin.h
 %{gcclibdir}/include/lwpintrin.h
 %{gcclibdir}/include/lzcntintrin.h
 %{gcclibdir}/include/mm3dnow.h
 %{gcclibdir}/include/mmintrin.h
 %{gcclibdir}/include/mm_malloc.h
-%{gcclibdir}/include/nmmintrin.h
+%{gcclibdir}/include/movdirintrin.h
+%{gcclibdir}/include/mwaitintrin.h
 %{gcclibdir}/include/mwaitxintrin.h
+%{gcclibdir}/include/nmmintrin.h
+%{gcclibdir}/include/pconfigintrin.h
 %{gcclibdir}/include/pkuintrin.h
 %{gcclibdir}/include/pmmintrin.h
 %{gcclibdir}/include/popcntintrin.h
 %{gcclibdir}/include/prfchwintrin.h
 %{gcclibdir}/include/rdseedintrin.h
 %{gcclibdir}/include/rtmintrin.h
+%{gcclibdir}/include/serializeintrin.h
 %{gcclibdir}/include/sgxintrin.h
 %{gcclibdir}/include/shaintrin.h
 %{gcclibdir}/include/smmintrin.h
 %{gcclibdir}/include/tbmintrin.h
 %{gcclibdir}/include/tmmintrin.h
+%{gcclibdir}/include/tsxldtrkintrin.h
+%{gcclibdir}/include/uintrintrin.h
+%{gcclibdir}/include/vaesintrin.h
+%{gcclibdir}/include/vpclmulqdqintrin.h
+%{gcclibdir}/include/waitpkgintrin.h
+%{gcclibdir}/include/wbnoinvdintrin.h
 %{gcclibdir}/include/wmmintrin.h
+%{gcclibdir}/include/x86gprintrin.h
 %{gcclibdir}/include/x86intrin.h
 %{gcclibdir}/include/xmmintrin.h
 %{gcclibdir}/include/xopintrin.h
@@ -3469,9 +3289,24 @@ rm -rf $RPM_BUILD_ROOT
 %{gcclibdir}/include/xsavesintrin.h
 %{gcclibdir}/include/xtestintrin.h
 %endif
-%ifarch arm
+%ifarch %{arm}
+%{gcclibdir}/include/arm_acle.h
+%{gcclibdir}/include/arm_bf16.h
+%{gcclibdir}/include/arm_cde.h
+%{gcclibdir}/include/arm_cmse.h
+%{gcclibdir}/include/arm_fp16.h
+%{gcclibdir}/include/arm_mve.h
+%{gcclibdir}/include/arm_mve_types.h
 %{gcclibdir}/include/arm_neon.h
 %{gcclibdir}/include/mmintrin.h
+%{gcclibdir}/include/unwind-arm-common.h
+%endif
+%ifarch aarch64
+%{gcclibdir}/include/arm_acle.h
+%{gcclibdir}/include/arm_bf16.h
+%{gcclibdir}/include/arm_fp16.h
+%{gcclibdir}/include/arm_neon.h
+%{gcclibdir}/include/arm_sve.h
 %endif
 %ifarch ia64
 %{gcclibdir}/include/ia64intrin.h
@@ -3481,9 +3316,18 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 %ifarch mips
 %{gcclibdir}/include/loongson.h
+%{gcclibdir}/include/msa.h
 %endif
 %ifarch powerpc ppc ppc64
 %{gcclibdir}/include/altivec.h
+%{gcclibdir}/include/amo.h
+%{gcclibdir}/include/bmiintrin.h
+%{gcclibdir}/include/bmi2intrin.h
+%{gcclibdir}/include/emmintrin.h
+%{gcclibdir}/include/htmintrin.h
+%{gcclibdir}/include/htmxlintrin.h
+%{gcclibdir}/include/mm_malloc.h
+%{gcclibdir}/include/mmintrin.h
 %{gcclibdir}/include/paired.h
 %{gcclibdir}/include/ppc-asm.h
 %{gcclibdir}/include/ppu_intrinsics.h
@@ -3491,6 +3335,17 @@ rm -rf $RPM_BUILD_ROOT
 %{gcclibdir}/include/spe.h
 %{gcclibdir}/include/spu2vmx.h
 %{gcclibdir}/include/vec_types.h
+%{gcclibdir}/include/x86intrin.h
+%{gcclibdir}/include/xmmintrin.h
+%endif
+%ifarch s390
+%{gcclibdir}/include/htmintrin.h
+%{gcclibdir}/include/htmxlintrin.h
+%{gcclibdir}/include/s390intrin.h
+%{gcclibdir}/include/vecintrin.h
+%endif
+%ifarch sparc sparcv9 sparc64
+%{gcclibdir}/include/visintrin.h
 %endif
 %{?with_vtv:%{gcclibdir}/include/vtv_*.h}
 
@@ -3578,7 +3433,8 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/libgomp.so
 %{_libdir}/libgomp.la
 %{_libdir}/libgomp.spec
-%{gcclibdir}/finclude
+%{?with_fortran:%{gcclibdir}/finclude}
+%{gcclibdir}/include/acc_prof.h
 %{gcclibdir}/include/omp.h
 %{gcclibdir}/include/openacc.h
 %{_infodir}/libgomp.info*
@@ -3598,7 +3454,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir32}/libgomp.so
 %{_libdir32}/libgomp.la
 %{_libdir32}/libgomp.spec
-%{gcclibdir}/32/finclude
+%{?with_fortran:%{gcclibdir}/32/finclude}
 
 %files -n libgomp-multilib-32-static
 %defattr(644,root,root,755)
@@ -3616,7 +3472,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdirm2}/libgomp.so
 %{_libdirm2}/libgomp.la
 %{_libdirm2}/libgomp.spec
-%{gcclibdir}/%{multilib2}/finclude
+%{?with_fortran:%{gcclibdir}/%{multilib2}/finclude}
 
 %files -n libgomp-multilib-%{multilib2}-static
 %defattr(644,root,root,755)
@@ -3624,131 +3480,6 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 %endif
 
-%if %{with cilkrts}
-%files -n libcilkrts
-%defattr(644,root,root,755)
-%doc libcilkrts/{ChangeLog,README}
-%attr(755,root,root) %{_libdir}/libcilkrts.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libcilkrts.so.5
-
-%files -n libcilkrts-devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libcilkrts.so
-%{_libdir}/libcilkrts.la
-%{_libdir}/libcilkrts.spec
-%{gcclibdir}/include/cilk
-
-%files -n libcilkrts-static
-%defattr(644,root,root,755)
-%{_libdir}/libcilkrts.a
-
-%if %{with multilib}
-%files -n libcilkrts-multilib-32
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir32}/libcilkrts.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libcilkrts.so.5
-
-%files -n libcilkrts-multilib-32-devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir32}/libcilkrts.so
-%{_libdir32}/libcilkrts.la
-%{_libdir32}/libcilkrts.spec
-
-%files -n libcilkrts-multilib-32-static
-%defattr(644,root,root,755)
-%{_libdir32}/libcilkrts.a
-%endif
-
-%if %{with multilib2}
-%files -n libcilkrts-multilib-%{multilib2}
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdirm2}/libcilkrts.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libcilkrts.so.5
-
-%files -n libcilkrts-multilib-%{multilib2}-devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdirm2}/libcilkrts.so
-%{_libdirm2}/libcilkrts.la
-%{_libdirm2}/libcilkrts.spec
-
-%files -n libcilkrts-multilib-%{multilib2}-static
-%defattr(644,root,root,755)
-%{_libdirm2}/libcilkrts.a
-%endif
-%endif
-
-# see libmpx/configure.tgt for supported architectures
-%ifarch %{x8664} %{ix86}
-%files -n libmpx
-%defattr(644,root,root,755)
-%doc libmpx/ChangeLog
-%attr(755,root,root) %{_libdir}/libmpx.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libmpx.so.2
-%attr(755,root,root) %{_libdir}/libmpxwrappers.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libmpxwrappers.so.2
-
-%files -n libmpx-devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libmpx.so
-%attr(755,root,root) %{_libdir}/libmpxwrappers.so
-%{_libdir}/libmpx.la
-%{_libdir}/libmpxwrappers.la
-%{_libdir}/libmpx.spec
-
-%files -n libmpx-static
-%defattr(644,root,root,755)
-%{_libdir}/libmpx.a
-%{_libdir}/libmpxwrappers.a
-%endif
-
-%if %{with multilib}
-%files -n libmpx-multilib-32
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir32}/libmpx.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libmpx.so.2
-%attr(755,root,root) %{_libdir32}/libmpxwrappers.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libmpxwrappers.so.2
-
-%files -n libmpx-multilib-32-devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir32}/libmpx.so
-%attr(755,root,root) %{_libdir32}/libmpxwrappers.so
-%{_libdir32}/libmpx.la
-%{_libdir32}/libmpxwrappers.la
-%{_libdir32}/libmpx.spec
-
-%files -n libmpx-multilib-32-static
-%defattr(644,root,root,755)
-%{_libdir32}/libmpx.a
-%{_libdir32}/libmpxwrappers.a
-%endif
-
-%if %{with multilib2}
-# see libmpx/configure.tgt for supported architectures;
-# no x32 there as of gcc 6.x
-%if "%{multilib2}" != "x32"
-%files -n libmpx-multilib-%{multilib2}
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdirm2}/libmpx.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libmpx.so.2
-%attr(755,root,root) %{_libdirm2}/libmpxwrappers.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libmpxwrappers.so.2
-
-%files -n libmpx-multilib-%{multilib2}-devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdirm2}/libmpx.so
-%attr(755,root,root) %{_libdirm2}/libmpxwrappers.so
-%{_libdirm2}/libmpx.la
-%{_libdirm2}/libmpxwrappers.la
-%{_libdirm2}/libmpx.spec
-
-%files -n libmpx-multilib-%{multilib2}-static
-%defattr(644,root,root,755)
-%{_libdirm2}/libmpx.a
-%{_libdirm2}/libmpxwrappers.a
-%endif
-%endif
-
 %if %{with ada}
 %files ada
 %defattr(644,root,root,755)
@@ -3759,6 +3490,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/libgnat-*.so
 %attr(755,root,root) %{_libdir}/libgnat.so
 %attr(755,root,root) %{gcclibdir}/gnat1
+%{gcclibdir}/ada_target_properties
 %{gcclibdir}/adainclude
 %dir %{gcclibdir}/adalib
 %{gcclibdir}/adalib/*.ali
@@ -3778,6 +3510,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir32}/libgnarl.so
 %attr(755,root,root) %{_libdir32}/libgnat-*.so
 %attr(755,root,root) %{_libdir32}/libgnat.so
+%{gcclibdir}/32/ada_target_properties
 %{gcclibdir}/32/adainclude
 %dir %{gcclibdir}/32/adalib
 %{gcclibdir}/32/adalib/*.ali
@@ -3793,6 +3526,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdirm2}/libgnarl.so
 %attr(755,root,root) %{_libdirm2}/libgnat-*.so
 %attr(755,root,root) %{_libdirm2}/libgnat.so
+%{gcclibdir}/%{multilib2}/ada_target_properties
 %{gcclibdir}/%{multilib2}/adainclude
 %dir %{gcclibdir}/%{multilib2}/adalib
 %{gcclibdir}/%{multilib2}/adalib/*.ali
@@ -3825,6 +3559,11 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %{gcclibdir}/32/adalib/libgnarl.a
 %{gcclibdir}/32/adalib/libgnat.a
+%ifarch %{x8664}
+# these exist only when host is x86_64???
+%{gcclibdir}/32/adalib/libgnarl_pic.a
+%{gcclibdir}/32/adalib/libgnat_pic.a
+%endif
 %endif
 
 %if %{with multilib2}
@@ -3839,18 +3578,24 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %{gcclibdir}/%{multilib2}/adalib/libgnarl.a
 %{gcclibdir}/%{multilib2}/adalib/libgnat.a
+%ifarch %{x8664}
+# these exist only when host is x86_64???
+%{gcclibdir}/%{multilib2}/adalib/libgnarl_pic.a
+%{gcclibdir}/%{multilib2}/adalib/libgnat_pic.a
+%endif
 %endif
 %endif
 
 %if %{with cxx}
 %files c++
 %defattr(644,root,root,755)
-%doc gcc/cp/{ChangeLog,NEWS}
+%doc gcc/cp/ChangeLog
 %attr(755,root,root) %{_bindir}/g++
 %attr(755,root,root) %{_bindir}/*-g++
 %attr(755,root,root) %{_bindir}/c++
 %attr(755,root,root) %{_bindir}/*-c++
 %attr(755,root,root) %{gcclibdir}/cc1plus
+%attr(755,root,root) %{gcclibdir}/g++-mapper-server
 %{_libdir}/libsupc++.la
 %{_libdir}/libsupc++.a
 %{_mandir}/man1/g++.1*
@@ -3883,7 +3628,6 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libstdc++fs.la
 %dir %{_includedir}/c++
 %{_includedir}/c++/%{version}
-%{_includedir}/expc++.h
 %{_includedir}/extc++.h
 %{_includedir}/stdc++.h
 %{_includedir}/stdtr1c++.h
@@ -3931,10 +3675,12 @@ rm -rf $RPM_BUILD_ROOT
 %if %{with python}
 %files -n libstdc++-gdb
 %defattr(644,root,root,755)
-%dir %{py_sitescriptdir}/libstdcxx
-%{py_sitescriptdir}/libstdcxx/*.py[co]
-%dir %{py_sitescriptdir}/libstdcxx/v6
-%{py_sitescriptdir}/libstdcxx/v6/*.py[co]
+%dir %{py3_sitescriptdir}/libstdcxx
+%{py3_sitescriptdir}/libstdcxx/*.py
+%{py3_sitescriptdir}/libstdcxx/__pycache__
+%dir %{py3_sitescriptdir}/libstdcxx/v6
+%{py3_sitescriptdir}/libstdcxx/v6/*.py
+%{py3_sitescriptdir}/libstdcxx/v6/__pycache__
 %{_datadir}/gdb/auto-load%{_libdir}/libstdc++.so.%{cxx_sover}.*.*-gdb.py
 %if %{with multilib}
 %{_datadir}/gdb/auto-load%{_libdir32}/libstdc++.so.%{cxx_sover}.*.*-gdb.py
@@ -3944,6 +3690,11 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 %endif
 
+%if %{with apidocs}
+%files -n libstdc++-apidocs
+%defattr(644,root,root,755)
+%doc libstdc++-v3/doc/html/*
+%endif
 %endif
 
 %if %{with fortran}
@@ -3957,6 +3708,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/libgfortran.so
 %{_libdir}/libgfortran.spec
 %{_libdir}/libgfortran.la
+%{gcclibdir}/include/ISO_Fortran_binding.h
 %{gcclibdir}/libcaf_single.a
 %{gcclibdir}/libcaf_single.la
 #%{gcclibdir}/libgfortranbegin.la
@@ -3993,7 +3745,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %doc libgfortran/{AUTHORS,README,ChangeLog}
 %attr(755,root,root) %{_libdir}/libgfortran.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgfortran.so.4
+%attr(755,root,root) %ghost %{_libdir}/libgfortran.so.5
 
 %files -n libgfortran-static
 %defattr(644,root,root,755)
@@ -4003,7 +3755,7 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libgfortran-multilib-32
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir32}/libgfortran.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libgfortran.so.4
+%attr(755,root,root) %ghost %{_libdir32}/libgfortran.so.5
 
 %files -n libgfortran-multilib-32-static
 %defattr(644,root,root,755)
@@ -4014,13 +3766,14 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libgfortran-multilib-%{multilib2}
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdirm2}/libgfortran.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libgfortran.so.4
+%attr(755,root,root) %ghost %{_libdirm2}/libgfortran.so.5
 
 %files -n libgfortran-multilib-%{multilib2}-static
 %defattr(644,root,root,755)
 %{_libdirm2}/libgfortran.a
 %endif
 
+%if %{with quadmath}
 %files -n libquadmath
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libquadmath.so.*.*.*
@@ -4070,6 +3823,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdirm2}/libquadmath.a
 %endif
 %endif
+%endif
 
 %if %{with gcc_libffi}
 %files -n libffi
@@ -4197,8 +3951,11 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/gccgo
 %attr(755,root,root) %{_bindir}/go
 %attr(755,root,root) %{_bindir}/gofmt
+%attr(755,root,root) %{gcclibdir}/buildid
 %attr(755,root,root) %{gcclibdir}/cgo
 %attr(755,root,root) %{gcclibdir}/go1
+%attr(755,root,root) %{gcclibdir}/test2json
+%attr(755,root,root) %{gcclibdir}/vet
 %dir %{_libdir}/go
 %{_libdir}/go/%{version}
 %{_mandir}/man1/go.1*
@@ -4224,7 +3981,7 @@ rm -rf $RPM_BUILD_ROOT
 %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.11
+%attr(755,root,root) %ghost %{_libdir}/libgo.so.19
 
 %files -n libgo-devel
 %defattr(644,root,root,755)
@@ -4241,7 +3998,7 @@ rm -rf $RPM_BUILD_ROOT
 %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.11
+%attr(755,root,root) %ghost %{_libdir32}/libgo.so.19
 
 %files -n libgo-multilib-32-devel
 %defattr(644,root,root,755)
@@ -4259,7 +4016,7 @@ rm -rf $RPM_BUILD_ROOT
 %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.11
+%attr(755,root,root) %ghost %{_libdirm2}/libgo.so.19
 
 %files -n libgo-multilib-%{multilib2}-devel
 %defattr(644,root,root,755)
@@ -4279,7 +4036,7 @@ rm -rf $RPM_BUILD_ROOT
 %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.4
+%attr(755,root,root) %ghost %{_libdir}/libasan.so.6
 
 %files -n libasan-devel
 %defattr(644,root,root,755)
@@ -4296,7 +4053,7 @@ rm -rf $RPM_BUILD_ROOT
 %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.4
+%attr(755,root,root) %ghost %{_libdir32}/libasan.so.6
 
 %files -n libasan-multilib-32-devel
 %defattr(644,root,root,755)
@@ -4313,7 +4070,7 @@ rm -rf $RPM_BUILD_ROOT
 %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.4
+%attr(755,root,root) %ghost %{_libdirm2}/libasan.so.6
 
 %files -n libasan-multilib-%{multilib2}-devel
 %defattr(644,root,root,755)
@@ -4327,6 +4084,23 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 %endif
 
+%if %{with hwasan}
+%files -n libhwasan
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libhwasan.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libhwasan.so.0
+
+%files -n libhwasan-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libhwasan.so
+%{_libdir}/libhwasan.la
+%{gcclibdir}/include/sanitizer/hwasan_interface.h
+
+%files -n libhwasan-static
+%defattr(644,root,root,755)
+%{_libdir}/libhwasan.a
+%endif
+
 %if %{with lsan_m0}
 %files -n liblsan
 %defattr(644,root,root,755)
@@ -4336,6 +4110,7 @@ rm -rf $RPM_BUILD_ROOT
 %files -n liblsan-devel
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/liblsan.so
+%{_libdir}/liblsan_preinit.o
 %{_libdir}/liblsan.la
 %{gcclibdir}/include/sanitizer/lsan_interface.h
 
@@ -4353,6 +4128,7 @@ rm -rf $RPM_BUILD_ROOT
 %files -n liblsan-multilib-%{multilib2}-devel
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdirm2}/liblsan.so
+%{_libdirm2}/liblsan_preinit.o
 %{_libdirm2}/liblsan.la
 # it looks like duplicate of file from liblsan-devel, but actually it isn't:
 # these packages are mutually exclusive
@@ -4376,6 +4152,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/libtsan.so
 %{_libdir}/libtsan_preinit.o
 %{_libdir}/libtsan.la
+%{gcclibdir}/include/sanitizer/tsan_interface.h
 
 %files -n libtsan-static
 %defattr(644,root,root,755)
@@ -4392,7 +4169,12 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libtsan-multilib-%{multilib2}-devel
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdirm2}/libtsan.so
+%{_libdirm2}/libtsan_preinit.o
 %{_libdirm2}/libtsan.la
+# it looks like duplicate of file from libtsan-devel, but actually it isn't:
+# these packages are mutually exclusive
+# (either liblsan-devel.x86_64 or liblsan-multilib-64.x32)
+%{gcclibdir}/include/sanitizer/tsan_interface.h
 
 %files -n libtsan-multilib-%{multilib2}-static
 %defattr(644,root,root,755)
@@ -4403,7 +4185,7 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libubsan
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libubsan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libubsan.so.0
+%attr(755,root,root) %ghost %{_libdir}/libubsan.so.1
 
 %files -n libubsan-devel
 %defattr(644,root,root,755)
@@ -4418,7 +4200,7 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libubsan-multilib-32
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir32}/libubsan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libubsan.so.0
+%attr(755,root,root) %ghost %{_libdir32}/libubsan.so.1
 
 %files -n libubsan-multilib-32-devel
 %defattr(644,root,root,755)
@@ -4434,7 +4216,7 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libubsan-multilib-%{multilib2}
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdirm2}/libubsan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libubsan.so.0
+%attr(755,root,root) %ghost %{_libdirm2}/libubsan.so.1
 
 %files -n libubsan-multilib-%{multilib2}-devel
 %defattr(644,root,root,755)
@@ -4560,7 +4342,7 @@ rm -rf $RPM_BUILD_ROOT
 %{gcclibdir}/plugin/gengtype
 %{gcclibdir}/plugin/gtype.state
 %{gcclibdir}/plugin/include
-%attr(755,root,root) %{gcclibdir}/plugin/libcc1plugin.la
+%{gcclibdir}/plugin/libcc1plugin.la
 %attr(755,root,root) %{gcclibdir}/plugin/libcc1plugin.so
-%attr(755,root,root) %{gcclibdir}/plugin/libcp1plugin.la
+%{gcclibdir}/plugin/libcp1plugin.la
 %attr(755,root,root) %{gcclibdir}/plugin/libcp1plugin.so