ed322c
%global DATE 20220421
ed322c
%global gitrev 1d3172725999deb0dca93ac70393ed9a0ad0da3f
ed322c
%global gcc_version 11.3.1
b9880e
%global gcc_major 11
b9880e
# Note, gcc_release must be integer, if you want to add suffixes to
b9880e
# %%{release}, append them after %%{gcc_release} on Release: line.
ed322c
%global gcc_release 2
b9880e
%global nvptx_tools_gitrev 5f6f343a302d620b0868edab376c00b15741e39e
b9880e
%global newlib_cygwin_gitrev 50e2a63b04bdd018484605fbb954fd1bd5147fa0
b9880e
%global _unpackaged_files_terminate_build 0
b9880e
%if 0%{?fedora} > 27 || 0%{?rhel} > 7
b9880e
# Until annobin is fixed (#1519165).
b9880e
%undefine _annotated_build
b9880e
%endif
b9880e
# Strip will fail on nvptx-none *.a archives and the brp-* scripts will
b9880e
# fail randomly depending on what is stripped last.
b9880e
%if 0%{?__brp_strip_static_archive:1}
b9880e
%global __brp_strip_static_archive %{__brp_strip_static_archive} || :
b9880e
%endif
b9880e
%if 0%{?__brp_strip_lto:1}
b9880e
%global __brp_strip_lto %{__brp_strip_lto} || :
b9880e
%endif
b9880e
%if 0%{?fedora} < 32 && 0%{?rhel} < 8
b9880e
%global multilib_64_archs sparc64 ppc64 ppc64p7 s390x x86_64
b9880e
%else
b9880e
%global multilib_64_archs sparc64 ppc64 ppc64p7 x86_64
b9880e
%endif
b9880e
%if 0%{?rhel} > 7
b9880e
%global build_ada 0
b9880e
%global build_objc 0
b9880e
%global build_go 0
b9880e
%global build_d 0
b9880e
%else
b9880e
%ifarch %{ix86} x86_64 ia64 ppc %{power64} alpha s390x %{arm} aarch64 riscv64
b9880e
%global build_ada 1
b9880e
%else
b9880e
%global build_ada 0
b9880e
%endif
b9880e
%global build_objc 1
b9880e
%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 %{mips} riscv64
b9880e
%global build_go 1
b9880e
%else
b9880e
%global build_go 0
b9880e
%endif
b9880e
%ifarch %{ix86} x86_64 %{arm} %{mips} s390 s390x riscv64
b9880e
%global build_d 1
b9880e
%else
b9880e
%global build_d 0
b9880e
%endif
b9880e
%endif
b9880e
%ifarch %{ix86} x86_64 ia64 ppc64le
b9880e
%global build_libquadmath 1
b9880e
%else
b9880e
%global build_libquadmath 0
b9880e
%endif
b9880e
%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64
b9880e
%global build_libasan 1
b9880e
%else
b9880e
%global build_libasan 0
b9880e
%endif
b9880e
%ifarch x86_64 ppc64 ppc64le aarch64
b9880e
%global build_libtsan 1
b9880e
%else
b9880e
%global build_libtsan 0
b9880e
%endif
b9880e
%ifarch x86_64 ppc64 ppc64le aarch64
b9880e
%global build_liblsan 1
b9880e
%else
b9880e
%global build_liblsan 0
b9880e
%endif
b9880e
%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64
b9880e
%global build_libubsan 1
b9880e
%else
b9880e
%global build_libubsan 0
b9880e
%endif
b9880e
%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 %{mips} riscv64
b9880e
%global build_libatomic 1
b9880e
%else
b9880e
%global build_libatomic 0
b9880e
%endif
b9880e
%ifarch %{ix86} x86_64 %{arm} alpha ppc ppc64 ppc64le ppc64p7 s390 s390x aarch64
b9880e
%global build_libitm 1
b9880e
%else
b9880e
%global build_libitm 0
b9880e
%endif
b9880e
%if 0%{?rhel} > 8
b9880e
%global build_isl 0
b9880e
%else
b9880e
%global build_isl 1
b9880e
%endif
b9880e
%global build_libstdcxx_docs 1
b9880e
%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 %{mips}
b9880e
%global attr_ifunc 1
b9880e
%else
b9880e
%global attr_ifunc 0
b9880e
%endif
b9880e
%ifarch x86_64 ppc64le
b9880e
%global build_offload_nvptx 1
b9880e
%else
b9880e
%global build_offload_nvptx 0
b9880e
%endif
b9880e
%if 0%{?fedora} < 32 && 0%{?rhel} < 8
b9880e
%ifarch s390x
b9880e
%global multilib_32_arch s390
b9880e
%endif
b9880e
%endif
b9880e
%ifarch sparc64
b9880e
%global multilib_32_arch sparcv9
b9880e
%endif
b9880e
%ifarch ppc64 ppc64p7
b9880e
%global multilib_32_arch ppc
b9880e
%endif
b9880e
%ifarch x86_64
b9880e
%global multilib_32_arch i686
b9880e
%endif
b9880e
Summary: Various compilers (C, C++, Objective-C, ...)
b9880e
Name: gcc
b9880e
Version: %{gcc_version}
ed322c
Release: %{gcc_release}.1%{?dist}
b9880e
# libgcc, libgfortran, libgomp, libstdc++ and crtstuff have
b9880e
# GCC Runtime Exception.
b9880e
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
b9880e
# The source for this package was pulled from upstream's vcs.
b9880e
# %%{gitrev} is some commit from the
b9880e
# https://gcc.gnu.org/git/?p=gcc.git;h=refs/vendors/redhat/heads/gcc-%%{gcc_major}-branch
b9880e
# branch.  Use the following commands to generate the tarball:
b9880e
# git clone --depth 1 git://gcc.gnu.org/git/gcc.git gcc-dir.tmp
b9880e
# git --git-dir=gcc-dir.tmp/.git fetch --depth 1 origin %%{gitrev}
b9880e
# git --git-dir=gcc-dir.tmp/.git archive --prefix=%%{name}-%%{version}-%%{DATE}/ %%{gitrev} | xz -9e > %%{name}-%%{version}-%%{DATE}.tar.xz
b9880e
# rm -rf gcc-dir.tmp
b9880e
Source0: gcc-%{version}-%{DATE}.tar.xz
b9880e
# The source for nvptx-tools package was pulled from upstream's vcs.  Use the
b9880e
# following commands to generate the tarball:
b9880e
# git clone --depth 1 git://github.com/MentorEmbedded/nvptx-tools.git nvptx-tools-dir.tmp
b9880e
# git --git-dir=nvptx-tools-dir.tmp/.git fetch --depth 1 origin %%{nvptx_tools_gitrev}
b9880e
# git --git-dir=nvptx-tools-dir.tmp/.git archive --prefix=nvptx-tools-%%{nvptx_tools_gitrev}/ %%{nvptx_tools_gitrev} | xz -9e > nvptx-tools-%%{nvptx_tools_gitrev}.tar.xz
b9880e
# rm -rf nvptx-tools-dir.tmp
b9880e
Source1: nvptx-tools-%{nvptx_tools_gitrev}.tar.xz
b9880e
# The source for nvptx-newlib package was pulled from upstream's vcs.  Use the
b9880e
# following commands to generate the tarball:
b9880e
# git clone git://sourceware.org/git/newlib-cygwin.git newlib-cygwin-dir.tmp
b9880e
# git --git-dir=newlib-cygwin-dir.tmp/.git archive --prefix=newlib-cygwin-%%{newlib_cygwin_gitrev}/ %%{newlib_cygwin_gitrev} ":(exclude)newlib/libc/sys/linux/include/rpc/*.[hx]" | xz -9e > newlib-cygwin-%%{newlib_cygwin_gitrev}.tar.xz
b9880e
# rm -rf newlib-cygwin-dir.tmp
b9880e
Source2: newlib-cygwin-%{newlib_cygwin_gitrev}.tar.xz
b9880e
%global isl_version 0.18
b9880e
Source3: https://gcc.gnu.org/pub/gcc/infrastructure/isl-%{isl_version}.tar.bz2
b9880e
URL: http://gcc.gnu.org
b9880e
# Need binutils with -pie support >= 2.14.90.0.4-4
b9880e
# Need binutils which can omit dot symbols and overlap .opd on ppc64 >= 2.15.91.0.2-4
b9880e
# Need binutils which handle -msecure-plt on ppc >= 2.16.91.0.2-2
b9880e
# Need binutils which support .weakref >= 2.16.91.0.3-1
b9880e
# Need binutils which support --hash-style=gnu >= 2.17.50.0.2-7
b9880e
# Need binutils which support mffgpr and mftgpr >= 2.17.50.0.2-8
b9880e
# Need binutils which support --build-id >= 2.17.50.0.17-3
b9880e
# Need binutils which support %%gnu_unique_object >= 2.19.51.0.14
b9880e
# Need binutils which support .cfi_sections >= 2.19.51.0.14-33
b9880e
# Need binutils which support --no-add-needed >= 2.20.51.0.2-12
b9880e
# Need binutils which support -plugin
b9880e
# Need binutils which support .loc view >= 2.30
b9880e
# Need binutils which support --generate-missing-build-notes=yes >= 2.31
b9880e
%if 0%{?fedora} >= 29 || 0%{?rhel} > 7
b9880e
BuildRequires: binutils >= 2.31
b9880e
%else
b9880e
BuildRequires: binutils >= 2.24
b9880e
%endif
b9880e
# While gcc doesn't include statically linked binaries, during testing
b9880e
# -static is used several times.
b9880e
BuildRequires: glibc-static
b9880e
BuildRequires: zlib-devel, gettext, dejagnu, bison, flex, sharutils
b9880e
BuildRequires: texinfo, texinfo-tex, /usr/bin/pod2man
b9880e
BuildRequires: systemtap-sdt-devel >= 1.3
b9880e
BuildRequires: gmp-devel >= 4.1.2-8, mpfr-devel >= 3.1.0, libmpc-devel >= 0.8.1
b9880e
BuildRequires: python3-devel, /usr/bin/python
b9880e
BuildRequires: gcc, gcc-c++, make
b9880e
%if %{build_go}
b9880e
BuildRequires: hostname, procps
b9880e
%endif
b9880e
# For VTA guality testing
b9880e
BuildRequires: gdb
b9880e
# Make sure pthread.h doesn't contain __thread tokens
b9880e
# Make sure glibc supports stack protector
b9880e
# Make sure glibc supports DT_GNU_HASH
b9880e
BuildRequires: glibc-devel >= 2.4.90-13
b9880e
BuildRequires: elfutils-devel >= 0.147
b9880e
BuildRequires: elfutils-libelf-devel >= 0.147
b9880e
BuildRequires: libzstd-devel
b9880e
%ifarch ppc ppc64 ppc64le ppc64p7 s390 s390x sparc sparcv9 alpha
b9880e
# Make sure glibc supports TFmode long double
b9880e
BuildRequires: glibc >= 2.3.90-35
b9880e
%endif
b9880e
%ifarch %{multilib_64_archs} sparcv9 ppc
b9880e
# Ensure glibc{,-devel} is installed for both multilib arches
b9880e
BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so
b9880e
%endif
b9880e
%if %{build_ada}
b9880e
# Ada requires Ada to build
b9880e
BuildRequires: gcc-gnat >= 3.1, libgnat >= 3.1
b9880e
%endif
b9880e
%ifarch ia64
b9880e
BuildRequires: libunwind >= 0.98
b9880e
%endif
b9880e
%if %{build_libstdcxx_docs}
b9880e
BuildRequires: doxygen >= 1.7.1
b9880e
BuildRequires: graphviz, dblatex, texlive-collection-latex, docbook5-style-xsl
b9880e
%endif
b9880e
Requires: cpp = %{version}-%{release}
b9880e
# Need .eh_frame ld optimizations
b9880e
# Need proper visibility support
b9880e
# Need -pie support
b9880e
# Need --as-needed/--no-as-needed support
b9880e
# On ppc64, need omit dot symbols support and --non-overlapping-opd
b9880e
# Need binutils that owns /usr/bin/c++filt
b9880e
# Need binutils that support .weakref
b9880e
# Need binutils that supports --hash-style=gnu
b9880e
# Need binutils that support mffgpr/mftgpr
b9880e
# Need binutils that support --build-id
b9880e
# Need binutils that support %%gnu_unique_object
b9880e
# Need binutils that support .cfi_sections
b9880e
# Need binutils that support --no-add-needed
b9880e
# Need binutils that support -plugin
b9880e
# Need binutils that support .loc view >= 2.30
b9880e
# Need binutils which support --generate-missing-build-notes=yes >= 2.31
b9880e
%if 0%{?fedora} >= 29 || 0%{?rhel} > 7
b9880e
Requires: binutils >= 2.31
b9880e
%else
b9880e
Requires: binutils >= 2.24
b9880e
%endif
b9880e
# Make sure gdb will understand DW_FORM_strp
b9880e
Conflicts: gdb < 5.1-2
b9880e
Requires: glibc-devel >= 2.2.90-12
b9880e
%ifarch ppc ppc64 ppc64le ppc64p7 s390 s390x sparc sparcv9 alpha
b9880e
# Make sure glibc supports TFmode long double
b9880e
Requires: glibc >= 2.3.90-35
b9880e
%endif
b9880e
%if 0%{?fedora} >= 18 || 0%{?rhel} >= 7
b9880e
%ifarch %{arm}
b9880e
Requires: glibc >= 2.16
b9880e
%endif
b9880e
%endif
b9880e
Requires: libgcc >= %{version}-%{release}
b9880e
Requires: libgomp = %{version}-%{release}
b9880e
# lto-wrapper invokes make
b9880e
Requires: make
b9880e
%if !%{build_ada}
b9880e
Obsoletes: gcc-gnat < %{version}-%{release}
b9880e
%endif
b9880e
Obsoletes: gcc-java < %{version}-%{release}
b9880e
AutoReq: true
b9880e
Provides: bundled(libiberty)
4bc2c8
Provides: bundled(libbacktrace)
4bc2c8
Provides: bundled(libffi)
b9880e
Provides: gcc(major) = %{gcc_major}
b9880e
b9880e
Patch0: gcc11-hack.patch
b9880e
Patch2: gcc11-sparc-config-detection.patch
b9880e
Patch3: gcc11-libgomp-omp_h-multilib.patch
b9880e
Patch4: gcc11-libtool-no-rpath.patch
b9880e
Patch5: gcc11-isl-dl.patch
b9880e
Patch6: gcc11-isl-dl2.patch
b9880e
Patch7: gcc11-libstdc++-docs.patch
b9880e
Patch8: gcc11-no-add-needed.patch
b9880e
Patch9: gcc11-foffload-default.patch
b9880e
Patch10: gcc11-Wno-format-security.patch
b9880e
Patch11: gcc11-rh1574936.patch
b9880e
Patch12: gcc11-d-shared-libphobos.patch
4bc2c8
Patch14: gcc11-libgcc-link.patch
4bc2c8
Patch15: gcc11-pr101786.patch
4bc2c8
Patch16: gcc11-stringify-__VA_OPT__.patch
524b32
Patch17: gcc11-stringify-__VA_OPT__-2.patch
3de30f
Patch18: gcc11-Wbidi-chars.patch
524b32
Patch19: gcc11-dg-ice-fixes.patch
8af166
Patch20: gcc11-relocatable-pch.patch
8af166
Patch21: gcc11-dejagnu-multiline.patch
8af166
Patch23: gcc11-pie.patch
8af166
Patch24: gcc11-bind-now.patch
ed322c
Patch25: gcc11-pr105331.patch
ed322c
# This can go once we rebase from GCC 11.
ed322c
Patch26: gcc11-rh2106262.patch
b9880e
b9880e
Patch100: gcc11-fortran-fdec-duplicates.patch
b9880e
Patch101: gcc11-fortran-flogical-as-integer.patch
b9880e
Patch102: gcc11-fortran-fdec-ichar.patch
b9880e
Patch103: gcc11-fortran-fdec-non-integer-index.patch
b9880e
Patch104: gcc11-fortran-fdec-old-init.patch
b9880e
Patch105: gcc11-fortran-fdec-override-kind.patch
b9880e
Patch106: gcc11-fortran-fdec-non-logical-if.patch
b9880e
Patch107: gcc11-fortran-fdec-promotion.patch
b9880e
Patch108: gcc11-fortran-fdec-sequence.patch
b9880e
Patch109: gcc11-fortran-fdec-add-missing-indexes.patch
b9880e
b9880e
# On ARM EABI systems, we do want -gnueabi to be part of the
b9880e
# target triple.
b9880e
%ifnarch %{arm}
b9880e
%global _gnu %{nil}
b9880e
%else
b9880e
%global _gnu -gnueabi
b9880e
%endif
b9880e
%ifarch sparcv9
b9880e
%global gcc_target_platform sparc64-%{_vendor}-%{_target_os}
b9880e
%endif
b9880e
%ifarch ppc ppc64p7
b9880e
%global gcc_target_platform ppc64-%{_vendor}-%{_target_os}
b9880e
%endif
b9880e
%ifnarch sparcv9 ppc ppc64p7
b9880e
%global gcc_target_platform %{_target_platform}
b9880e
%endif
b9880e
b9880e
%if %{build_go}
b9880e
# Avoid stripping these libraries and binaries.
b9880e
%global __os_install_post \
b9880e
chmod 644 %{buildroot}%{_prefix}/%{_lib}/libgo.so.19.* \
b9880e
chmod 644 %{buildroot}%{_prefix}/bin/go.gcc \
b9880e
chmod 644 %{buildroot}%{_prefix}/bin/gofmt.gcc \
b9880e
chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cgo \
b9880e
chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/buildid \
b9880e
chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/test2json \
b9880e
chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/vet \
b9880e
%__os_install_post \
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgo.so.19.* \
b9880e
chmod 755 %{buildroot}%{_prefix}/bin/go.gcc \
b9880e
chmod 755 %{buildroot}%{_prefix}/bin/gofmt.gcc \
b9880e
chmod 755 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cgo \
b9880e
chmod 755 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/buildid \
b9880e
chmod 755 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/test2json \
b9880e
chmod 755 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/vet \
b9880e
%{nil}
b9880e
%endif
b9880e
b9880e
%description
b9880e
The gcc package contains the GNU Compiler Collection version 11.
b9880e
You'll need this package in order to compile C code.
b9880e
b9880e
%package -n libgcc
b9880e
Summary: GCC version 11 shared support library
b9880e
Autoreq: false
b9880e
%if !%{build_ada}
b9880e
Obsoletes: libgnat < %{version}-%{release}
b9880e
%endif
b9880e
Obsoletes: libmudflap
b9880e
Obsoletes: libmudflap-devel
b9880e
Obsoletes: libmudflap-static
b9880e
Obsoletes: libgcj < %{version}-%{release}
b9880e
Obsoletes: libgcj-devel < %{version}-%{release}
b9880e
Obsoletes: libgcj-src < %{version}-%{release}
b9880e
%ifarch %{ix86} x86_64
b9880e
Obsoletes: libcilkrts
b9880e
Obsoletes: libcilkrts-static
b9880e
Obsoletes: libmpx
b9880e
Obsoletes: libmpx-static
b9880e
%endif
b9880e
b9880e
%description -n libgcc
b9880e
This package contains GCC shared support library which is needed
b9880e
e.g. for exception handling support.
b9880e
b9880e
%package c++
b9880e
Summary: C++ support for GCC
b9880e
Requires: gcc = %{version}-%{release}
b9880e
Requires: libstdc++ = %{version}-%{release}
b9880e
Requires: libstdc++-devel = %{version}-%{release}
b9880e
Provides: gcc-g++ = %{version}-%{release}
b9880e
Provides: g++ = %{version}-%{release}
b9880e
Autoreq: true
b9880e
b9880e
%description c++
b9880e
This package adds C++ support to the GNU Compiler Collection.
b9880e
It includes support for most of the current C++ specification,
b9880e
including templates and exception handling.
b9880e
b9880e
%package -n libstdc++
b9880e
Summary: GNU Standard C++ Library
b9880e
Autoreq: true
b9880e
Requires: glibc >= 2.10.90-7
b9880e
b9880e
%description -n libstdc++
b9880e
The libstdc++ package contains a rewritten standard compliant GCC Standard
b9880e
C++ Library.
b9880e
b9880e
%package -n libstdc++-devel
b9880e
Summary: Header files and libraries for C++ development
b9880e
Requires: libstdc++%{?_isa} = %{version}-%{release}
b9880e
Autoreq: true
b9880e
b9880e
%description -n libstdc++-devel
b9880e
This is the GNU implementation of the standard C++ libraries.  This
b9880e
package includes the header files and libraries needed for C++
b9880e
development. This includes rewritten implementation of STL.
b9880e
b9880e
%package -n libstdc++-static
b9880e
Summary: Static libraries for the GNU standard C++ library
b9880e
Requires: libstdc++-devel = %{version}-%{release}
b9880e
Autoreq: true
b9880e
b9880e
%description -n libstdc++-static
b9880e
Static libraries for the GNU standard C++ library.
b9880e
b9880e
%package -n libstdc++-docs
b9880e
Summary: Documentation for the GNU standard C++ library
b9880e
Autoreq: true
b9880e
b9880e
%description -n libstdc++-docs
b9880e
Manual, doxygen generated API information and Frequently Asked Questions
b9880e
for the GNU standard C++ library.
b9880e
b9880e
%package objc
b9880e
Summary: Objective-C support for GCC
b9880e
Requires: gcc = %{version}-%{release}
b9880e
Requires: libobjc = %{version}-%{release}
b9880e
Autoreq: true
b9880e
b9880e
%description objc
b9880e
gcc-objc provides Objective-C support for the GCC.
b9880e
Mainly used on systems running NeXTSTEP, Objective-C is an
b9880e
object-oriented derivative of the C language.
b9880e
b9880e
%package objc++
b9880e
Summary: Objective-C++ support for GCC
b9880e
Requires: gcc-c++ = %{version}-%{release}, gcc-objc = %{version}-%{release}
b9880e
Autoreq: true
b9880e
b9880e
%description objc++
b9880e
gcc-objc++ package provides Objective-C++ support for the GCC.
b9880e
b9880e
%package -n libobjc
b9880e
Summary: Objective-C runtime
b9880e
Autoreq: true
b9880e
b9880e
%description -n libobjc
b9880e
This package contains Objective-C shared library which is needed to run
b9880e
Objective-C dynamically linked programs.
b9880e
b9880e
%package gfortran
b9880e
Summary: Fortran support
b9880e
Requires: gcc = %{version}-%{release}
b9880e
Requires: libgfortran = %{version}-%{release}
b9880e
%if %{build_libquadmath}
b9880e
Requires: libquadmath = %{version}-%{release}
b9880e
Requires: libquadmath-devel = %{version}-%{release}
b9880e
%endif
b9880e
Provides: gcc-fortran = %{version}-%{release}
b9880e
Provides: gfortran = %{version}-%{release}
b9880e
Autoreq: true
b9880e
b9880e
%description gfortran
b9880e
The gcc-gfortran package provides support for compiling Fortran
b9880e
programs with the GNU Compiler Collection.
b9880e
b9880e
%package -n libgfortran
b9880e
Summary: Fortran runtime
b9880e
Autoreq: true
b9880e
%if %{build_libquadmath}
b9880e
Requires: libquadmath = %{version}-%{release}
b9880e
%endif
b9880e
b9880e
%description -n libgfortran
b9880e
This package contains Fortran shared library which is needed to run
b9880e
Fortran dynamically linked programs.
b9880e
b9880e
%package -n libgfortran-static
b9880e
Summary: Static Fortran libraries
b9880e
Requires: libgfortran = %{version}-%{release}
b9880e
Requires: gcc = %{version}-%{release}
b9880e
%if %{build_libquadmath}
b9880e
Requires: libquadmath-static = %{version}-%{release}
b9880e
%endif
b9880e
b9880e
%description -n libgfortran-static
b9880e
This package contains static Fortran libraries.
b9880e
b9880e
%package gdc
b9880e
Summary: D support
b9880e
Requires: gcc = %{version}-%{release}
b9880e
Requires: libgphobos = %{version}-%{release}
b9880e
Provides: gcc-d = %{version}-%{release}
b9880e
Provides: gdc = %{version}-%{release}
b9880e
Autoreq: true
b9880e
b9880e
%description gdc
b9880e
The gcc-gdc package provides support for compiling D
b9880e
programs with the GNU Compiler Collection.
b9880e
b9880e
%package -n libgphobos
b9880e
Summary: D runtime
b9880e
Autoreq: true
b9880e
b9880e
%description -n libgphobos
b9880e
This package contains D shared library which is needed to run
b9880e
D dynamically linked programs.
b9880e
b9880e
%package -n libgphobos-static
b9880e
Summary: Static D libraries
b9880e
Requires: libgphobos = %{version}-%{release}
b9880e
Requires: gcc-gdc = %{version}-%{release}
b9880e
b9880e
%description -n libgphobos-static
b9880e
This package contains static D libraries.
b9880e
b9880e
%package -n libgomp
b9880e
Summary: GCC OpenMP v4.5 shared support library
b9880e
b9880e
%description -n libgomp
b9880e
This package contains GCC shared support library which is needed
b9880e
for OpenMP v4.5 support.
b9880e
b9880e
%package -n libgomp-offload-nvptx
b9880e
Summary: GCC OpenMP v4.5 plugin for offloading to NVPTX
b9880e
Requires: libgomp = %{version}-%{release}
b9880e
b9880e
%description -n libgomp-offload-nvptx
b9880e
This package contains libgomp plugin for offloading to NVidia
b9880e
PTX.  The plugin needs libcuda.so.1 shared library that has to be
b9880e
installed separately.
b9880e
b9880e
%package gdb-plugin
b9880e
Summary: GCC plugin for GDB
b9880e
Requires: gcc = %{version}-%{release}
b9880e
b9880e
%description gdb-plugin
b9880e
This package contains GCC plugin for GDB C expression evaluation.
b9880e
b9880e
%package -n libgccjit
b9880e
Summary: Library for embedding GCC inside programs and libraries
b9880e
Requires: gcc = %{version}-%{release}
b9880e
b9880e
%description -n libgccjit
b9880e
This package contains shared library with GCC JIT front-end.
b9880e
b9880e
%package -n libgccjit-devel
b9880e
Summary: Support for embedding GCC inside programs and libraries
b9880e
%if 0%{?fedora} > 27 || 0%{?rhel} > 7
b9880e
BuildRequires: python3-sphinx
b9880e
%else
b9880e
BuildRequires: python-sphinx
b9880e
%endif
b9880e
Requires: libgccjit = %{version}-%{release}
b9880e
b9880e
%description -n libgccjit-devel
b9880e
This package contains header files and documentation for GCC JIT front-end.
b9880e
b9880e
%package -n libquadmath
b9880e
Summary: GCC __float128 shared support library
b9880e
b9880e
%description -n libquadmath
b9880e
This package contains GCC shared support library which is needed
b9880e
for __float128 math support and for Fortran REAL*16 support.
b9880e
b9880e
%package -n libquadmath-devel
b9880e
Summary: GCC __float128 support
b9880e
Requires: libquadmath = %{version}-%{release}
b9880e
Requires: gcc = %{version}-%{release}
b9880e
b9880e
%description -n libquadmath-devel
b9880e
This package contains headers for building Fortran programs using
b9880e
REAL*16 and programs using __float128 math.
b9880e
b9880e
%package -n libquadmath-static
b9880e
Summary: Static libraries for __float128 support
b9880e
Requires: libquadmath-devel = %{version}-%{release}
b9880e
b9880e
%description -n libquadmath-static
b9880e
This package contains static libraries for building Fortran programs
b9880e
using REAL*16 and programs using __float128 math.
b9880e
b9880e
%package -n libitm
b9880e
Summary: The GNU Transactional Memory library
b9880e
b9880e
%description -n libitm
b9880e
This package contains the GNU Transactional Memory library
b9880e
which is a GCC transactional memory support runtime library.
b9880e
b9880e
%package -n libitm-devel
b9880e
Summary: The GNU Transactional Memory support
b9880e
Requires: libitm = %{version}-%{release}
b9880e
Requires: gcc = %{version}-%{release}
b9880e
b9880e
%description -n libitm-devel
b9880e
This package contains headers and support files for the
b9880e
GNU Transactional Memory library.
b9880e
b9880e
%package -n libitm-static
b9880e
Summary: The GNU Transactional Memory static library
b9880e
Requires: libitm-devel = %{version}-%{release}
b9880e
b9880e
%description -n libitm-static
b9880e
This package contains GNU Transactional Memory static libraries.
b9880e
b9880e
%package -n libatomic
b9880e
Summary: The GNU Atomic library
b9880e
b9880e
%description -n libatomic
b9880e
This package contains the GNU Atomic library
b9880e
which is a GCC support runtime library for atomic operations not supported
b9880e
by hardware.
b9880e
b9880e
%package -n libatomic-static
b9880e
Summary: The GNU Atomic static library
b9880e
Requires: libatomic = %{version}-%{release}
b9880e
b9880e
%description -n libatomic-static
b9880e
This package contains GNU Atomic static libraries.
b9880e
b9880e
%package -n libasan
b9880e
Summary: The Address Sanitizer runtime library
b9880e
b9880e
%description -n libasan
b9880e
This package contains the Address Sanitizer library
b9880e
which is used for -fsanitize=address instrumented programs.
b9880e
b9880e
%package -n libasan-static
b9880e
Summary: The Address Sanitizer static library
b9880e
Requires: libasan = %{version}-%{release}
b9880e
b9880e
%description -n libasan-static
b9880e
This package contains Address Sanitizer static runtime library.
b9880e
b9880e
%package -n libtsan
b9880e
Summary: The Thread Sanitizer runtime library
b9880e
b9880e
%description -n libtsan
b9880e
This package contains the Thread Sanitizer library
b9880e
which is used for -fsanitize=thread instrumented programs.
b9880e
b9880e
%package -n libtsan-static
b9880e
Summary: The Thread Sanitizer static library
b9880e
Requires: libtsan = %{version}-%{release}
b9880e
b9880e
%description -n libtsan-static
b9880e
This package contains Thread Sanitizer static runtime library.
b9880e
b9880e
%package -n libubsan
b9880e
Summary: The Undefined Behavior Sanitizer runtime library
b9880e
b9880e
%description -n libubsan
b9880e
This package contains the Undefined Behavior Sanitizer library
b9880e
which is used for -fsanitize=undefined instrumented programs.
b9880e
b9880e
%package -n libubsan-static
b9880e
Summary: The Undefined Behavior Sanitizer static library
b9880e
Requires: libubsan = %{version}-%{release}
b9880e
b9880e
%description -n libubsan-static
b9880e
This package contains Undefined Behavior Sanitizer static runtime library.
b9880e
b9880e
%package -n liblsan
b9880e
Summary: The Leak Sanitizer runtime library
b9880e
b9880e
%description -n liblsan
b9880e
This package contains the Leak Sanitizer library
b9880e
which is used for -fsanitize=leak instrumented programs.
b9880e
b9880e
%package -n liblsan-static
b9880e
Summary: The Leak Sanitizer static library
b9880e
Requires: liblsan = %{version}-%{release}
b9880e
b9880e
%description -n liblsan-static
b9880e
This package contains Leak Sanitizer static runtime library.
b9880e
b9880e
%package -n cpp
b9880e
Summary: The C Preprocessor
b9880e
Requires: filesystem >= 3
b9880e
Provides: /lib/cpp
b9880e
Autoreq: true
b9880e
b9880e
%description -n cpp
b9880e
Cpp is the GNU C-Compatible Compiler Preprocessor.
b9880e
Cpp is a macro processor which is used automatically
b9880e
by the C compiler to transform your program before actual
b9880e
compilation. It is called a macro processor because it allows
b9880e
you to define macros, abbreviations for longer
b9880e
constructs.
b9880e
b9880e
The C preprocessor provides four separate functionalities: the
b9880e
inclusion of header files (files of declarations that can be
b9880e
substituted into your program); macro expansion (you can define macros,
b9880e
and the C preprocessor will replace the macros with their definitions
b9880e
throughout the program); conditional compilation (using special
b9880e
preprocessing directives, you can include or exclude parts of the
b9880e
program according to various conditions); and line control (if you use
b9880e
a program to combine or rearrange source files into an intermediate
b9880e
file which is then compiled, you can use line control to inform the
b9880e
compiler about where each source line originated).
b9880e
b9880e
You should install this package if you are a C programmer and you use
b9880e
macros.
b9880e
b9880e
%package gnat
b9880e
Summary: Ada 83, 95, 2005 and 2012 support for GCC
b9880e
Requires: gcc = %{version}-%{release}
b9880e
Requires: libgnat = %{version}-%{release}, libgnat-devel = %{version}-%{release}
b9880e
Autoreq: true
b9880e
b9880e
%description gnat
b9880e
GNAT is a GNU Ada 83, 95, 2005 and 2012 front-end to GCC. This package includes
b9880e
development tools, the documents and Ada compiler.
b9880e
b9880e
%package -n libgnat
b9880e
Summary: GNU Ada 83, 95, 2005 and 2012 runtime shared libraries
b9880e
Autoreq: true
b9880e
b9880e
%description -n libgnat
b9880e
GNAT is a GNU Ada 83, 95, 2005 and 2012 front-end to GCC. This package includes
b9880e
shared libraries, which are required to run programs compiled with the GNAT.
b9880e
b9880e
%package -n libgnat-devel
b9880e
Summary: GNU Ada 83, 95, 2005 and 2012 libraries
b9880e
Autoreq: true
b9880e
b9880e
%description -n libgnat-devel
b9880e
GNAT is a GNU Ada 83, 95, 2005 and 2012 front-end to GCC. This package includes
b9880e
libraries, which are required to compile with the GNAT.
b9880e
b9880e
%package -n libgnat-static
b9880e
Summary: GNU Ada 83, 95, 2005 and 2012 static libraries
b9880e
Requires: libgnat-devel = %{version}-%{release}
b9880e
Autoreq: true
b9880e
b9880e
%description -n libgnat-static
b9880e
GNAT is a GNU Ada 83, 95, 2005 and 2012 front-end to GCC. This package includes
b9880e
static libraries.
b9880e
b9880e
%package go
b9880e
Summary: Go support
b9880e
Requires: gcc = %{version}-%{release}
b9880e
Requires: libgo = %{version}-%{release}
b9880e
Requires: libgo-devel = %{version}-%{release}
b9880e
Requires(post): %{_sbindir}/update-alternatives
b9880e
Requires(postun): %{_sbindir}/update-alternatives
b9880e
Provides: gccgo = %{version}-%{release}
b9880e
Autoreq: true
b9880e
b9880e
%description go
b9880e
The gcc-go package provides support for compiling Go programs
b9880e
with the GNU Compiler Collection.
b9880e
b9880e
%package -n libgo
b9880e
Summary: Go runtime
b9880e
Autoreq: true
b9880e
b9880e
%description -n libgo
b9880e
This package contains Go shared library which is needed to run
b9880e
Go dynamically linked programs.
b9880e
b9880e
%package -n libgo-devel
b9880e
Summary: Go development libraries
b9880e
Requires: libgo = %{version}-%{release}
b9880e
Autoreq: true
b9880e
b9880e
%description -n libgo-devel
b9880e
This package includes libraries and support files for compiling
b9880e
Go programs.
b9880e
b9880e
%package -n libgo-static
b9880e
Summary: Static Go libraries
b9880e
Requires: libgo = %{version}-%{release}
b9880e
Requires: gcc = %{version}-%{release}
b9880e
b9880e
%description -n libgo-static
b9880e
This package contains static Go libraries.
b9880e
b9880e
%package plugin-devel
b9880e
Summary: Support for compiling GCC plugins
b9880e
Requires: gcc = %{version}-%{release}
b9880e
Requires: gmp-devel >= 4.1.2-8, mpfr-devel >= 3.1.0, libmpc-devel >= 0.8.1
b9880e
b9880e
%description plugin-devel
b9880e
This package contains header files and other support files
b9880e
for compiling GCC plugins.  The GCC plugin ABI is currently
b9880e
not stable, so plugins must be rebuilt any time GCC is updated.
b9880e
b9880e
%package offload-nvptx
b9880e
Summary: Offloading compiler to NVPTX
b9880e
Requires: gcc = %{version}-%{release}
b9880e
Requires: libgomp-offload-nvptx = %{version}-%{release}
b9880e
b9880e
%description offload-nvptx
b9880e
The gcc-offload-nvptx package provides offloading support for
b9880e
NVidia PTX.  OpenMP and OpenACC programs linked with -fopenmp will
b9880e
by default add PTX code into the binaries, which can be offloaded
b9880e
to NVidia PTX capable devices if available.
b9880e
8af166
%package plugin-annobin
8af166
Summary: The annobin plugin for gcc, built by the installed version of gcc
8af166
Requires: gcc = %{version}-%{release}
8af166
# Starting with release 10.01 annobin fixed a bug in its configure scripts
8af166
# which prevented them from working with a built but not installed compiler
8af166
BuildRequires: annobin >= 10.01
8af166
# Starting with release  9.93 annobin-plugin-gcc puts a copy of the sources
8af166
# in /usr/src/annobin
8af166
# FIXME: Currently the annobin-plugin-gcc subpackage only exists in Fedora.
8af166
# For RHEL-9 the annobin package does everything.
8af166
# BuildRequires: annobin-plugin-gcc
8af166
# Needed in order to be able to decompress the annobin source tarball.
8af166
BuildRequires: xz
8af166
8af166
%description plugin-annobin
8af166
This package adds a version of the annobin plugin for gcc.  This version
8af166
of the plugin is explicitly built by the same version of gcc that is installed
8af166
so that there cannot be any synchronization problems.
8af166
b9880e
%prep
b9880e
%setup -q -n gcc-%{version}-%{DATE} -a 1 -a 2 -a 3
b9880e
%patch0 -p0 -b .hack~
b9880e
%patch2 -p0 -b .sparc-config-detection~
b9880e
%patch3 -p0 -b .libgomp-omp_h-multilib~
b9880e
%patch4 -p0 -b .libtool-no-rpath~
b9880e
%if %{build_isl}
b9880e
%patch5 -p0 -b .isl-dl~
b9880e
%patch6 -p0 -b .isl-dl2~
b9880e
%endif
b9880e
%if %{build_libstdcxx_docs}
b9880e
%patch7 -p0 -b .libstdc++-docs~
b9880e
%endif
b9880e
%patch8 -p0 -b .no-add-needed~
b9880e
%patch9 -p0 -b .foffload-default~
b9880e
%patch10 -p0 -b .Wno-format-security~
b9880e
%if 0%{?fedora} >= 29 || 0%{?rhel} > 7
b9880e
%patch11 -p0 -b .rh1574936~
b9880e
%endif
b9880e
%patch12 -p0 -b .d-shared-libphobos~
4bc2c8
%patch14 -p0 -b .libgcc-link~
4bc2c8
%patch15 -p0 -b .pr101786~
4bc2c8
%patch16 -p0 -b .stringify-__VA_OPT__~
524b32
%patch17 -p0 -b .stringify-__VA_OPT__-2~
3de30f
%patch18 -p1 -b .bidi~
524b32
%patch19 -p1 -b .ice~
8af166
%patch20 -p1 -b .pch~
8af166
%patch21 -p1 -b .dejagnu-multiline~
8af166
%patch23 -p1 -b .pie~
8af166
%patch24 -p1 -b .now~
ed322c
%patch25 -p0 -b .pr105331~
ed322c
%patch26 -p1 -b .rh2106262~
b9880e
b9880e
%if 0%{?rhel} >= 9
b9880e
%patch100 -p1 -b .fortran-fdec-duplicates~
b9880e
%patch101 -p1 -b .fortran-flogical-as-integer~
b9880e
%patch102 -p1 -b .fortran-fdec-ichar~
b9880e
%patch103 -p1 -b .fortran-fdec-non-integer-index~
b9880e
%patch104 -p1 -b .fortran-fdec-old-init~
b9880e
%patch105 -p1 -b .fortran-fdec-override-kind~
b9880e
%patch106 -p1 -b .fortran-fdec-non-logical-if~
b9880e
%patch107 -p1 -b .fortran-fdec-promotion~
b9880e
%patch108 -p1 -b .fortran-fdec-sequence~
b9880e
%patch109 -p1 -b .fortran-fdec-add-missing-indexes~
b9880e
%endif
b9880e
b9880e
%ifarch %{arm}
b9880e
rm -f gcc/testsuite/go.test/test/fixedbugs/issue19182.go
b9880e
%endif
b9880e
b9880e
echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
b9880e
b9880e
cp -a libstdc++-v3/config/cpu/i{4,3}86/atomicity.h
b9880e
b9880e
./contrib/gcc_update --touch
b9880e
b9880e
LC_ALL=C sed -i -e 's/\xa0/ /' gcc/doc/options.texi
b9880e
b9880e
sed -i -e 's/Common Driver Var(flag_report_bug)/& Init(1)/' gcc/common.opt
b9880e
b9880e
%ifarch ppc
b9880e
if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then
b9880e
  mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64
b9880e
  mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/{,64/}baseline_symbols.txt
b9880e
  mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/{32/,}baseline_symbols.txt
b9880e
  rm -rf libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32
b9880e
fi
b9880e
%endif
b9880e
%ifarch sparc
b9880e
if [ -d libstdc++-v3/config/abi/post/sparc64-linux-gnu ]; then
b9880e
  mkdir -p libstdc++-v3/config/abi/post/sparc64-linux-gnu/64
b9880e
  mv libstdc++-v3/config/abi/post/sparc64-linux-gnu/{,64/}baseline_symbols.txt
b9880e
  mv libstdc++-v3/config/abi/post/sparc64-linux-gnu/{32/,}baseline_symbols.txt
b9880e
  rm -rf libstdc++-v3/config/abi/post/sparc64-linux-gnu/32
b9880e
fi
b9880e
%endif
b9880e
b9880e
# This test causes fork failures, because it spawns way too many threads
b9880e
rm -f gcc/testsuite/go.test/test/chan/goroutines.go
b9880e
8af166
# This test fails randomly.
8af166
%ifarch ppc64le
8af166
rm -f libstdc++-v3/testsuite/30_threads/future/members/poll.cc
8af166
%endif
8af166
b9880e
%build
b9880e
b9880e
# Undo the broken autoconf change in recent Fedora versions
b9880e
export CONFIG_SITE=NONE
b9880e
b9880e
CC=gcc
b9880e
CXX=g++
b9880e
OPT_FLAGS=`echo %{optflags}|sed -e 's/\(-Wp,\)\?-D_FORTIFY_SOURCE=[12]//g'`
b9880e
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-flto=auto//g;s/-flto//g;s/-ffat-lto-objects//g'`
b9880e
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-m64//g;s/-m32//g;s/-m31//g'`
b9880e
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mfpmath=sse/-mfpmath=sse -msse2/g'`
b9880e
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/ -pipe / /g'`
b9880e
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-Werror=format-security/-Wformat-security/g'`
b9880e
%ifarch sparc
b9880e
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mcpu=ultrasparc/-mtune=ultrasparc/g;s/-mcpu=v[78]//g'`
b9880e
%endif
b9880e
%ifarch %{ix86}
b9880e
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-march=i.86//g'`
b9880e
%endif
b9880e
OPT_FLAGS=`echo "$OPT_FLAGS" | sed -e 's/[[:blank:]]\+/ /g'`
b9880e
case "$OPT_FLAGS" in
b9880e
  *-fasynchronous-unwind-tables*)
b9880e
    sed -i -e 's/-fno-exceptions /-fno-exceptions -fno-asynchronous-unwind-tables /' \
b9880e
      libgcc/Makefile.in
b9880e
    ;;
b9880e
esac
b9880e
b9880e
%if %{build_offload_nvptx}
b9880e
mkdir obji
b9880e
IROOT=`pwd`/obji
b9880e
cd nvptx-tools-%{nvptx_tools_gitrev}
b9880e
rm -rf obj-%{gcc_target_platform}
b9880e
mkdir obj-%{gcc_target_platform}
b9880e
cd obj-%{gcc_target_platform}
8af166
CC="$CC" CXX="$CXX" CFLAGS="%{optflags} -fPIE" CXXFLAGS="%{optflags} -fPIE" LDFLAGS="-pie -Wl,-z,now" \
b9880e
../configure --prefix=%{_prefix}
b9880e
make %{?_smp_mflags}
b9880e
make install prefix=${IROOT}%{_prefix}
b9880e
cd ../..
b9880e
b9880e
ln -sf newlib-cygwin-%{newlib_cygwin_gitrev}/newlib newlib
b9880e
rm -rf obj-offload-nvptx-none
b9880e
mkdir obj-offload-nvptx-none
b9880e
b9880e
cd obj-offload-nvptx-none
b9880e
CC="$CC" CXX="$CXX" CFLAGS="$OPT_FLAGS" \
b9880e
	CXXFLAGS="`echo " $OPT_FLAGS " | sed 's/ -Wall / /g;s/ -fexceptions / /g' \
b9880e
		  | sed 's/ -Wformat-security / -Wformat -Wformat-security /'`" \
b9880e
	XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" \
b9880e
	../configure --disable-bootstrap --disable-sjlj-exceptions \
b9880e
	--enable-newlib-io-long-long --with-build-time-tools=${IROOT}%{_prefix}/nvptx-none/bin \
b9880e
	--target nvptx-none --enable-as-accelerator-for=%{gcc_target_platform} \
b9880e
	--enable-languages=c,c++,fortran,lto \
b9880e
	--prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir} \
b9880e
	--with-bugurl=http://bugzilla.redhat.com/bugzilla \
b9880e
	--enable-checking=release --with-system-zlib \
8af166
	--with-gcc-major-version-only --without-isl --enable-host-pie --enable-host-bind-now
b9880e
make %{?_smp_mflags}
b9880e
cd ..
b9880e
rm -f newlib
b9880e
%endif
b9880e
b9880e
rm -rf obj-%{gcc_target_platform}
b9880e
mkdir obj-%{gcc_target_platform}
b9880e
cd obj-%{gcc_target_platform}
b9880e
b9880e
%if %{build_isl}
b9880e
mkdir isl-build isl-install
b9880e
%ifarch s390 s390x
b9880e
ISL_FLAG_PIC=-fPIC
b9880e
%else
b9880e
ISL_FLAG_PIC=-fpic
b9880e
%endif
b9880e
cd isl-build
b9880e
sed -i 's|libisl|libgcc11privateisl|g' \
b9880e
  ../../isl-%{isl_version}/Makefile.{am,in}
b9880e
../../isl-%{isl_version}/configure \
b9880e
  CC=/usr/bin/gcc CXX=/usr/bin/g++ \
b9880e
  CFLAGS="${CFLAGS:-%optflags} $ISL_FLAG_PIC" --prefix=`cd ..; pwd`/isl-install
b9880e
make %{?_smp_mflags}
b9880e
make install
b9880e
cd ../isl-install/lib
b9880e
rm libgcc11privateisl.so{,.15}
b9880e
mv libgcc11privateisl.so.15.3.0 libisl.so.15
b9880e
ln -sf libisl.so.15 libisl.so
b9880e
cd ../..
b9880e
%endif
b9880e
b9880e
enablelgo=
b9880e
enablelada=
b9880e
enablelobjc=
b9880e
enableld=
b9880e
%if %{build_objc}
b9880e
enablelobjc=,objc,obj-c++
b9880e
%endif
b9880e
%if %{build_ada}
b9880e
enablelada=,ada
b9880e
%endif
b9880e
%if %{build_go}
b9880e
enablelgo=,go
b9880e
%endif
b9880e
%if %{build_d}
b9880e
enableld=,d
b9880e
%endif
b9880e
CONFIGURE_OPTS="\
b9880e
	--prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir} \
b9880e
	--with-bugurl=http://bugzilla.redhat.com/bugzilla \
b9880e
	--enable-shared --enable-threads=posix --enable-checking=release \
b9880e
%ifarch ppc64le
b9880e
	--enable-targets=powerpcle-linux \
b9880e
%endif
b9880e
%ifarch ppc64le %{mips} s390x
b9880e
%ifarch s390x
b9880e
%if 0%{?fedora} < 32 && 0%{?rhel} < 8
b9880e
	--enable-multilib \
b9880e
%else
b9880e
	--disable-multilib \
b9880e
%endif
b9880e
%else
b9880e
	--disable-multilib \
b9880e
%endif
b9880e
%else
b9880e
	--enable-multilib \
b9880e
%endif
b9880e
	--with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions \
b9880e
	--enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only \
b9880e
%ifnarch %{mips}
b9880e
	--with-linker-hash-style=gnu \
b9880e
%endif
b9880e
	--enable-plugin --enable-initfini-array \
b9880e
%if %{build_isl}
b9880e
	--with-isl=`pwd`/isl-install \
b9880e
%else
b9880e
	--without-isl \
b9880e
%endif
b9880e
%if %{build_offload_nvptx}
b9880e
	--enable-offload-targets=nvptx-none \
b9880e
	--without-cuda-driver \
b9880e
%endif
b9880e
%if 0%{?fedora} >= 21 || 0%{?rhel} >= 7
b9880e
%if %{attr_ifunc}
b9880e
	--enable-gnu-indirect-function \
b9880e
%endif
b9880e
%endif
b9880e
%ifarch %{arm}
b9880e
	--disable-sjlj-exceptions \
b9880e
%endif
b9880e
%ifarch ppc ppc64 ppc64le ppc64p7
b9880e
	--enable-secureplt \
b9880e
%endif
b9880e
%ifarch sparc sparcv9 sparc64 ppc ppc64 ppc64le ppc64p7 s390 s390x alpha
b9880e
	--with-long-double-128 \
b9880e
%endif
b9880e
%ifarch sparc
b9880e
	--disable-linux-futex \
b9880e
%endif
b9880e
%ifarch sparc64
b9880e
	--with-cpu=ultrasparc \
b9880e
%endif
b9880e
%ifarch sparc sparcv9
b9880e
	--host=%{gcc_target_platform} --build=%{gcc_target_platform} --target=%{gcc_target_platform} --with-cpu=v7
b9880e
%endif
b9880e
%ifarch ppc ppc64 ppc64p7
b9880e
%if 0%{?rhel} >= 7
b9880e
	--with-cpu-32=power7 --with-tune-32=power7 --with-cpu-64=power7 --with-tune-64=power7 \
b9880e
%endif
b9880e
%if 0%{?rhel} == 6
b9880e
	--with-cpu-32=power4 --with-tune-32=power6 --with-cpu-64=power4 --with-tune-64=power6 \
b9880e
%endif
b9880e
%endif
b9880e
%ifarch ppc64le
b9880e
%if 0%{?rhel} == 9
b9880e
	--with-cpu-32=power9 --with-tune-32=power9 --with-cpu-64=power9 --with-tune-64=power9 \
b9880e
%else
b9880e
	--with-cpu-32=power8 --with-tune-32=power8 --with-cpu-64=power8 --with-tune-64=power8 \
b9880e
%endif
b9880e
%endif
b9880e
%ifarch ppc
b9880e
	--build=%{gcc_target_platform} --target=%{gcc_target_platform} --with-cpu=default32
b9880e
%endif
b9880e
%ifarch %{ix86} x86_64
b9880e
	--enable-cet \
b9880e
	--with-tune=generic \
b9880e
%endif
b9880e
%if 0%{?rhel} >= 7
b9880e
%ifarch %{ix86}
b9880e
	--with-arch=x86-64 \
b9880e
%endif
b9880e
%ifarch x86_64
b9880e
%if 0%{?rhel} > 8
b9880e
	--with-arch_64=x86-64-v2 \
b9880e
%endif
b9880e
	--with-arch_32=x86-64 \
b9880e
%endif
b9880e
%else
b9880e
%ifarch %{ix86}
b9880e
	--with-arch=i686 \
b9880e
%endif
b9880e
%ifarch x86_64
b9880e
	--with-arch_32=i686 \
b9880e
%endif
b9880e
%endif
b9880e
%ifarch s390 s390x
b9880e
%if 0%{?rhel} >= 7
b9880e
%if 0%{?rhel} > 7
b9880e
%if 0%{?rhel} > 8
b9880e
%if 0%{?rhel} == 9
b9880e
	--with-arch=z14 --with-tune=z15 \
b9880e
%else
b9880e
	--with-arch=z13 --with-tune=arch13 \
b9880e
%endif
b9880e
%else
b9880e
	--with-arch=z13 --with-tune=z14 \
b9880e
%endif
b9880e
%else
b9880e
	--with-arch=z196 --with-tune=zEC12 \
b9880e
%endif
b9880e
%else
b9880e
%if 0%{?fedora} >= 26
b9880e
	--with-arch=zEC12 --with-tune=z13 \
b9880e
%else
b9880e
	--with-arch=z9-109 --with-tune=z10 \
b9880e
%endif
b9880e
%endif
b9880e
	--enable-decimal-float \
b9880e
%endif
b9880e
%ifarch armv7hl
b9880e
	--with-tune=generic-armv7-a --with-arch=armv7-a \
b9880e
	--with-float=hard --with-fpu=vfpv3-d16 --with-abi=aapcs-linux \
b9880e
%endif
b9880e
%ifarch mips mipsel
b9880e
	--with-arch=mips32r2 --with-fp-32=xx \
b9880e
%endif
b9880e
%ifarch mips64 mips64el
b9880e
	--with-arch=mips64r2 --with-abi=64 \
b9880e
%endif
b9880e
%ifarch riscv64
b9880e
	--with-arch=rv64gc --with-abi=lp64d --with-multilib-list=lp64d \
b9880e
%endif
b9880e
%ifnarch sparc sparcv9 ppc
b9880e
	--build=%{gcc_target_platform} \
b9880e
%endif
b9880e
%if 0%{?fedora} >= 35 || 0%{?rhel} >= 9
4bc2c8
%ifnarch %{arm}
b9880e
	--with-build-config=bootstrap-lto --enable-link-serialization=1 \
b9880e
%endif
4bc2c8
%endif
b9880e
	"
b9880e
b9880e
CC="$CC" CXX="$CXX" CFLAGS="$OPT_FLAGS" \
b9880e
	CXXFLAGS="`echo " $OPT_FLAGS " | sed 's/ -Wall / /g;s/ -fexceptions / /g' \
b9880e
		  | sed 's/ -Wformat-security / -Wformat -Wformat-security /'`" \
b9880e
	XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" \
8af166
	../configure --enable-bootstrap --enable-host-pie --enable-host-bind-now \
b9880e
	--enable-languages=c,c++,fortran${enablelobjc}${enablelada}${enablelgo}${enableld},lto \
b9880e
	$CONFIGURE_OPTS
b9880e
b9880e
%ifarch sparc sparcv9 sparc64
4bc2c8
make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" LDFLAGS_FOR_TARGET=-Wl,-z,relro,-z,now bootstrap
b9880e
%else
4bc2c8
make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" LDFLAGS_FOR_TARGET=-Wl,-z,relro,-z,now profiledbootstrap
b9880e
%endif
b9880e
b9880e
CC="`%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-cc`"
b9880e
CXX="`%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-cxx` `%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-includes`"
b9880e
b9880e
# Build libgccjit separately, so that normal compiler binaries aren't -fpic
b9880e
# unnecessarily.
b9880e
mkdir objlibgccjit
b9880e
cd objlibgccjit
b9880e
CC="$CC" CXX="$CXX" CFLAGS="$OPT_FLAGS" \
b9880e
	CXXFLAGS="`echo " $OPT_FLAGS " | sed 's/ -Wall / /g;s/ -fexceptions / /g' \
b9880e
		  | sed 's/ -Wformat-security / -Wformat -Wformat-security /'`" \
b9880e
	XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" \
8af166
	../../configure --disable-bootstrap --enable-host-shared  --enable-host-bind-now \
b9880e
	--enable-languages=jit $CONFIGURE_OPTS
b9880e
make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" all-gcc
b9880e
cp -a gcc/libgccjit.so* ../gcc/
b9880e
cd ../gcc/
b9880e
ln -sf xgcc %{gcc_target_platform}-gcc-%{gcc_major}
b9880e
cp -a Makefile{,.orig}
b9880e
sed -i -e '/^CHECK_TARGETS/s/$/ check-jit/' Makefile
b9880e
touch -r Makefile.orig Makefile
b9880e
rm Makefile.orig
b9880e
make jit.sphinx.html
b9880e
make jit.sphinx.install-html jit_htmldir=`pwd`/../../rpm.doc/libgccjit-devel/html
b9880e
cd ..
b9880e
b9880e
%if %{build_isl}
b9880e
cp -a isl-install/lib/libisl.so.15 gcc/
b9880e
%endif
b9880e
b9880e
# Make generated man pages even if Pod::Man is not new enough
b9880e
perl -pi -e 's/head3/head2/' ../contrib/texi2pod.pl
b9880e
for i in ../gcc/doc/*.texi; do
b9880e
  cp -a $i $i.orig; sed 's/ftable/table/' $i.orig > $i
b9880e
done
b9880e
make -C gcc generated-manpages
b9880e
for i in ../gcc/doc/*.texi; do mv -f $i.orig $i; done
b9880e
b9880e
# Make generated doxygen pages.
b9880e
%if %{build_libstdcxx_docs}
b9880e
cd %{gcc_target_platform}/libstdc++-v3
b9880e
make doc-html-doxygen
b9880e
make doc-man-doxygen
b9880e
cd ../..
b9880e
%endif
b9880e
b9880e
# Copy various doc files here and there
b9880e
cd ..
b9880e
mkdir -p rpm.doc/gfortran rpm.doc/objc rpm.doc/gdc rpm.doc/libphobos
b9880e
mkdir -p rpm.doc/go rpm.doc/libgo rpm.doc/libquadmath rpm.doc/libitm
b9880e
mkdir -p rpm.doc/changelogs/{gcc/cp,gcc/ada,gcc/jit,libstdc++-v3,libobjc,libgomp,libcc1,libatomic,libsanitizer}
b9880e
b9880e
for i in {gcc,gcc/cp,gcc/ada,gcc/jit,libstdc++-v3,libobjc,libgomp,libcc1,libatomic,libsanitizer}/ChangeLog*; do
b9880e
	cp -p $i rpm.doc/changelogs/$i
b9880e
done
b9880e
b9880e
(cd gcc/fortran; for i in ChangeLog*; do
b9880e
	cp -p $i ../../rpm.doc/gfortran/$i
b9880e
done)
b9880e
(cd libgfortran; for i in ChangeLog*; do
b9880e
	cp -p $i ../rpm.doc/gfortran/$i.libgfortran
b9880e
done)
b9880e
%if %{build_objc}
b9880e
(cd libobjc; for i in README*; do
b9880e
	cp -p $i ../rpm.doc/objc/$i.libobjc
b9880e
done)
b9880e
%endif
b9880e
%if %{build_d}
b9880e
(cd gcc/d; for i in ChangeLog*; do
b9880e
	cp -p $i ../../rpm.doc/gdc/$i.gdc
b9880e
done)
b9880e
(cd libphobos; for i in ChangeLog*; do
b9880e
	cp -p $i ../rpm.doc/libphobos/$i.libphobos
b9880e
done
b9880e
cp -a src/LICENSE*.txt libdruntime/LICENSE ../rpm.doc/libphobos/)
b9880e
%endif
b9880e
%if %{build_libquadmath}
b9880e
(cd libquadmath; for i in ChangeLog* COPYING.LIB; do
b9880e
	cp -p $i ../rpm.doc/libquadmath/$i.libquadmath
b9880e
done)
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
(cd libitm; for i in ChangeLog*; do
b9880e
	cp -p $i ../rpm.doc/libitm/$i.libitm
b9880e
done)
b9880e
%endif
b9880e
%if %{build_go}
b9880e
(cd gcc/go; for i in README* ChangeLog*; do
b9880e
	cp -p $i ../../rpm.doc/go/$i
b9880e
done)
b9880e
(cd libgo; for i in LICENSE* PATENTS* README; do
b9880e
	cp -p $i ../rpm.doc/libgo/$i.libgo
b9880e
done)
b9880e
%endif
b9880e
b9880e
rm -f rpm.doc/changelogs/gcc/ChangeLog.[1-9]
b9880e
find rpm.doc -name \*ChangeLog\* | xargs bzip2 -9
b9880e
524b32
# Get the annobin sources.  Note these are not added to the rpm as SOURCE4
524b32
# because if they were the build phase would try to include them as part of
524b32
# gcc itself, and this causes problems.  Instead we locate the sources in
524b32
# the buildroot.  They should have been put there when annobin was installed.
524b32
524b32
pushd %{_builddir}
524b32
524b32
%global annobin_source_dir %{_usrsrc}/annobin
524b32
524b32
if [ -d %{annobin_source_dir} ]
524b32
then
524b32
    # Unpack the sources.
524b32
    echo "Unpacking annobin sources"
524b32
    rm -fr annobin-*
524b32
    tar xvf %{annobin_source_dir}/latest-annobin.tar.xz
524b32
8af166
    # Setting this as a local symbol because using %%global does not appear to work.
8af166
    annobin_dir=$(find . -maxdepth 1 -type d -name "annobin*")
524b32
8af166
    # Now build the annobin plugin using the just built compiler.
8af166
    echo "annobin directory = ${annobin_dir}"
8af166
    cd ${annobin_dir}
524b32
8af166
    # Work out where this version of gcc stores its plugins.
524b32
%global ANNOBIN_GCC_PLUGIN_DIR  %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin
524b32
8af166
    CONFIG_ARGS="--quiet"
8af166
    CONFIG_ARGS="$CONFIG_ARGS --with-gcc-plugin-dir=%{ANNOBIN_GCC_PLUGIN_DIR}"
8af166
    CONFIG_ARGS="$CONFIG_ARGS --without-annocheck"
8af166
    CONFIG_ARGS="$CONFIG_ARGS --without-tests"
8af166
    CONFIG_ARGS="$CONFIG_ARGS --disable-rpath"
8af166
8af166
    comp_dir="%{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/gcc/"
8af166
    ccompiler="%{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/gcc/xgcc -B $comp_dir"
8af166
    cxxcompiler="%{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/gcc/xg++ -B $comp_dir"
8af166
8af166
    comp_flags="%build_cflags"
8af166
    comp_flags="$comp_flags -I %{_builddir}/gcc-%{version}-%{DATE}/gcc"
8af166
    comp_flags="$comp_flags -I %{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/gcc/"
8af166
    comp_flags="$comp_flags -I %{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/%{gcc_target_platform}/libstdc++-v3/include"
8af166
    comp_flags="$comp_flags -I %{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/%{gcc_target_platform}/libstdc++-v3/include/%{gcc_target_platform}"
8af166
    comp_flags="$comp_flags -I %{_builddir}/gcc-%{version}-%{DATE}/libstdc++-v3/libsupc++"
8af166
    comp_flags="$comp_flags -I %{_builddir}/gcc-%{version}-%{DATE}/include"
8af166
    comp_flags="$comp_flags -I %{_builddir}/gcc-%{version}-%{DATE}/libcpp/include"
8af166
8af166
    ld_flags="%build_ldflags"
8af166
    ld_flags="$ld_flags -L%{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/libstdc++-v3/.libs"
8af166
    ld_flags="$ld_flags -L%{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/%{gcc_target_platform}/libstdc++-v3/.libs"
8af166
    ld_flags="$ld_flags -L%{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/%{gcc_target_platform}/libstdc++-v3/src/.libs"
8af166
    ld_flags="$ld_flags -L%{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/libstdc++-v3/libsupc++/.libs"
8af166
    ld_flags="$ld_flags -L%{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/%{gcc_target_platform}/libstdc++-v3/libsupc++/.libs"
8af166
    ld_flags="$ld_flags -L%{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/%{gcc_target_platform}/libgcc/.libs"
8af166
8af166
    # libtool works with CFLAGS but ignores LDFLAGS, so we have to combine them.
8af166
    comp_flags="$comp_flags $ld_flags"
8af166
8af166
    echo "Configuring the annobin plugin"
8af166
    CC="${ccompiler}" CFLAGS="${comp_flags}" \
8af166
      CXX="${cxxcompiler}" CXXFLAGS="${comp_flags}" \
8af166
      LDFLAGS="${ld_flags}" \
8af166
      ./configure ${CONFIG_ARGS}  || cat config.log
8af166
8af166
    echo "Building the annobin plugin"
8af166
    make
8af166
8af166
    echo "Annobin plugin build complete"
8af166
else
8af166
    echo "Unable to locate annobin sources (expected to find: %{annobin_source_dir}/latest-annobin.tar.xz)"
8af166
    echo "These should be provided by installing the annobin package"
8af166
    exit 1
8af166
fi
524b32
popd
524b32
b9880e
%install
b9880e
rm -rf %{buildroot}
b9880e
mkdir -p %{buildroot}
b9880e
b9880e
# RISC-V ABI wants to install everything in /lib64/lp64d or /usr/lib64/lp64d.
b9880e
# Make these be symlinks to /lib64 or /usr/lib64 respectively. See:
b9880e
# https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/DRHT5YTPK4WWVGL3GIN5BF2IKX2ODHZ3/
b9880e
%ifarch riscv64
b9880e
for d in %{buildroot}%{_libdir} %{buildroot}/%{_lib} \
b9880e
	  %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib} \
b9880e
	  %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_platform}/%{_lib}; do
b9880e
  mkdir -p $d
b9880e
  (cd $d && ln -sf . lp64d)
b9880e
done
b9880e
%endif
b9880e
b9880e
%if %{build_offload_nvptx}
b9880e
cd nvptx-tools-%{nvptx_tools_gitrev}
b9880e
cd obj-%{gcc_target_platform}
b9880e
make install prefix=%{buildroot}%{_prefix}
b9880e
cd ../..
b9880e
b9880e
ln -sf newlib-cygwin-%{newlib_cygwin_gitrev}/newlib newlib
b9880e
cd obj-offload-nvptx-none
b9880e
make prefix=%{buildroot}%{_prefix} mandir=%{buildroot}%{_mandir} \
b9880e
  infodir=%{buildroot}%{_infodir} install
b9880e
rm -rf %{buildroot}%{_prefix}/libexec/gcc/nvptx-none/%{gcc_major}/install-tools
b9880e
rm -rf %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/accel/nvptx-none/{install-tools,plugin,cc1,cc1plus,f951}
b9880e
rm -rf %{buildroot}%{_infodir} %{buildroot}%{_mandir}/man7 %{buildroot}%{_prefix}/share/locale
b9880e
rm -rf %{buildroot}%{_prefix}/lib/gcc/nvptx-none/%{gcc_major}/{install-tools,plugin}
b9880e
rm -rf %{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/accel/nvptx-none/{install-tools,plugin,include-fixed}
b9880e
rm -rf %{buildroot}%{_prefix}/%{_lib}/libc[cp]1*
b9880e
mv -f %{buildroot}%{_prefix}/nvptx-none/lib/*.{a,spec} %{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/accel/nvptx-none/
b9880e
mv -f %{buildroot}%{_prefix}/nvptx-none/lib/mgomp/*.{a,spec} %{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/accel/nvptx-none/mgomp/
b9880e
mv -f %{buildroot}%{_prefix}/lib/gcc/nvptx-none/%{gcc_major}/*.a %{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/accel/nvptx-none/
b9880e
mv -f %{buildroot}%{_prefix}/lib/gcc/nvptx-none/%{gcc_major}/mgomp/*.a %{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/accel/nvptx-none/mgomp/
b9880e
find %{buildroot}%{_prefix}/lib/gcc/nvptx-none %{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/accel/nvptx-none \
b9880e
     %{buildroot}%{_prefix}/nvptx-none/lib -name \*.la | xargs rm
b9880e
cd ..
b9880e
rm -f newlib
b9880e
%endif
b9880e
b9880e
cd obj-%{gcc_target_platform}
b9880e
b9880e
TARGET_PLATFORM=%{gcc_target_platform}
b9880e
b9880e
# There are some MP bugs in libstdc++ Makefiles
b9880e
make -C %{gcc_target_platform}/libstdc++-v3
b9880e
b9880e
make prefix=%{buildroot}%{_prefix} mandir=%{buildroot}%{_mandir} \
b9880e
  infodir=%{buildroot}%{_infodir} install
b9880e
%if %{build_ada}
b9880e
chmod 644 %{buildroot}%{_infodir}/gnat*
b9880e
%endif
b9880e
b9880e
FULLPATH=%{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
FULLEPATH=%{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
b9880e
%if %{build_isl}
b9880e
cp -a isl-install/lib/libisl.so.15 $FULLPATH/
b9880e
%endif
b9880e
b9880e
# fix some things
b9880e
ln -sf gcc %{buildroot}%{_prefix}/bin/cc
b9880e
rm -f %{buildroot}%{_prefix}/lib/cpp
b9880e
ln -sf ../bin/cpp %{buildroot}/%{_prefix}/lib/cpp
b9880e
ln -sf gfortran %{buildroot}%{_prefix}/bin/f95
b9880e
rm -f %{buildroot}%{_infodir}/dir
b9880e
gzip -9 %{buildroot}%{_infodir}/*.info*
b9880e
ln -sf gcc %{buildroot}%{_prefix}/bin/gnatgcc
b9880e
mkdir -p %{buildroot}%{_fmoddir}
b9880e
b9880e
%if %{build_go}
b9880e
mv %{buildroot}%{_prefix}/bin/go{,.gcc}
b9880e
mv %{buildroot}%{_prefix}/bin/gofmt{,.gcc}
b9880e
ln -sf /etc/alternatives/go %{buildroot}%{_prefix}/bin/go
b9880e
ln -sf /etc/alternatives/gofmt %{buildroot}%{_prefix}/bin/gofmt
b9880e
%endif
b9880e
b9880e
cxxconfig="`find %{gcc_target_platform}/libstdc++-v3/include -name c++config.h`"
b9880e
for i in `find %{gcc_target_platform}/[36]*/libstdc++-v3/include -name c++config.h 2>/dev/null`; do
b9880e
  if ! diff -up $cxxconfig $i; then
b9880e
    cat > %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_platform}/bits/c++config.h <
b9880e
#ifndef _CPP_CPPCONFIG_WRAPPER
b9880e
#define _CPP_CPPCONFIG_WRAPPER 1
b9880e
#include <bits/wordsize.h>
b9880e
#if __WORDSIZE == 32
b9880e
%ifarch %{multilib_64_archs}
b9880e
`cat $(find %{gcc_target_platform}/32/libstdc++-v3/include -name c++config.h)`
b9880e
%else
b9880e
`cat $(find %{gcc_target_platform}/libstdc++-v3/include -name c++config.h)`
b9880e
%endif
b9880e
#else
b9880e
%ifarch %{multilib_64_archs}
b9880e
`cat $(find %{gcc_target_platform}/libstdc++-v3/include -name c++config.h)`
b9880e
%else
b9880e
`cat $(find %{gcc_target_platform}/64/libstdc++-v3/include -name c++config.h)`
b9880e
%endif
b9880e
#endif
b9880e
#endif
b9880e
EOF
b9880e
    break
b9880e
  fi
b9880e
done
b9880e
b9880e
for f in `find %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_platform}/ -name c++config.h`; do
b9880e
  for i in 1 2 4 8; do
b9880e
    sed -i -e 's/#define _GLIBCXX_ATOMIC_BUILTINS_'$i' 1/#ifdef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_'$i'\
b9880e
&\
b9880e
#endif/' $f
b9880e
  done
b9880e
done
b9880e
b9880e
# Nuke bits/*.h.gch dirs
b9880e
# 1) there is no bits/*.h header installed, so when gch file can't be
b9880e
#    used, compilation fails
b9880e
# 2) sometimes it is hard to match the exact options used for building
b9880e
#    libstdc++-v3 or they aren't desirable
b9880e
# 3) there are multilib issues, conflicts etc. with this
b9880e
# 4) it is huge
b9880e
# People can always precompile on their own whatever they want, but
b9880e
# shipping this for everybody is unnecessary.
b9880e
rm -rf %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_platform}/bits/*.h.gch
b9880e
b9880e
%if %{build_libstdcxx_docs}
b9880e
libstdcxx_doc_builddir=%{gcc_target_platform}/libstdc++-v3/doc/doxygen
b9880e
mkdir -p ../rpm.doc/libstdc++-v3
b9880e
cp -r -p ../libstdc++-v3/doc/html ../rpm.doc/libstdc++-v3/html
b9880e
cp -r -p $libstdcxx_doc_builddir/html ../rpm.doc/libstdc++-v3/html/api
b9880e
mkdir -p %{buildroot}%{_mandir}/man3
b9880e
cp -r -p $libstdcxx_doc_builddir/man/man3/* %{buildroot}%{_mandir}/man3/
b9880e
find ../rpm.doc/libstdc++-v3 -name \*~ | xargs rm
b9880e
%endif
b9880e
b9880e
%ifarch sparcv9 sparc64
b9880e
ln -f %{buildroot}%{_prefix}/bin/%{gcc_target_platform}-gcc \
b9880e
  %{buildroot}%{_prefix}/bin/sparc-%{_vendor}-%{_target_os}-gcc
b9880e
%endif
b9880e
%ifarch ppc ppc64 ppc64p7
b9880e
ln -f %{buildroot}%{_prefix}/bin/%{gcc_target_platform}-gcc \
b9880e
  %{buildroot}%{_prefix}/bin/ppc-%{_vendor}-%{_target_os}-gcc
b9880e
%endif
b9880e
b9880e
FULLLSUBDIR=
b9880e
%ifarch sparcv9 ppc
b9880e
FULLLSUBDIR=lib32
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
FULLLSUBDIR=lib64
b9880e
%endif
b9880e
if [ -n "$FULLLSUBDIR" ]; then
b9880e
  FULLLPATH=$FULLPATH/$FULLLSUBDIR
b9880e
  mkdir -p $FULLLPATH
b9880e
else
b9880e
  FULLLPATH=$FULLPATH
b9880e
fi
b9880e
b9880e
find %{buildroot} -name \*.la | xargs rm -f
b9880e
b9880e
mv %{buildroot}%{_prefix}/%{_lib}/libgfortran.spec $FULLPATH/
b9880e
%if %{build_d}
b9880e
mv %{buildroot}%{_prefix}/%{_lib}/libgphobos.spec $FULLPATH/
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
mv %{buildroot}%{_prefix}/%{_lib}/libitm.spec $FULLPATH/
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
mv %{buildroot}%{_prefix}/%{_lib}/libsanitizer.spec $FULLPATH/
b9880e
%endif
b9880e
b9880e
mkdir -p %{buildroot}/%{_lib}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libgcc_s.so.1 %{buildroot}/%{_lib}/libgcc_s-%{gcc_major}-%{DATE}.so.1
b9880e
chmod 755 %{buildroot}/%{_lib}/libgcc_s-%{gcc_major}-%{DATE}.so.1
b9880e
ln -sf libgcc_s-%{gcc_major}-%{DATE}.so.1 %{buildroot}/%{_lib}/libgcc_s.so.1
b9880e
%ifarch %{ix86} x86_64 ppc ppc64 ppc64p7 ppc64le %{arm} aarch64 riscv64
b9880e
rm -f $FULLPATH/libgcc_s.so
b9880e
echo '/* GNU ld script
b9880e
   Use the shared library, but some functions are only in
b9880e
   the static library, so try that secondarily.  */
b9880e
OUTPUT_FORMAT('`gcc -Wl,--print-output-format -nostdlib -r -o /dev/null`')
b9880e
GROUP ( /%{_lib}/libgcc_s.so.1 libgcc.a )' > $FULLPATH/libgcc_s.so
b9880e
%else
b9880e
ln -sf /%{_lib}/libgcc_s.so.1 $FULLPATH/libgcc_s.so
b9880e
%endif
b9880e
%ifarch sparcv9 ppc
b9880e
%ifarch ppc
b9880e
rm -f $FULLPATH/64/libgcc_s.so
b9880e
echo '/* GNU ld script
b9880e
   Use the shared library, but some functions are only in
b9880e
   the static library, so try that secondarily.  */
b9880e
OUTPUT_FORMAT('`gcc -m64 -Wl,--print-output-format -nostdlib -r -o /dev/null`')
b9880e
GROUP ( /lib64/libgcc_s.so.1 libgcc.a )' > $FULLPATH/64/libgcc_s.so
b9880e
%else
b9880e
ln -sf /lib64/libgcc_s.so.1 $FULLPATH/64/libgcc_s.so
b9880e
%endif
b9880e
%endif
b9880e
%ifarch %{multilib_64_archs}
b9880e
%ifarch x86_64 ppc64 ppc64p7
b9880e
rm -f $FULLPATH/64/libgcc_s.so
b9880e
echo '/* GNU ld script
b9880e
   Use the shared library, but some functions are only in
b9880e
   the static library, so try that secondarily.  */
b9880e
OUTPUT_FORMAT('`gcc -m32 -Wl,--print-output-format -nostdlib -r -o /dev/null`')
b9880e
GROUP ( /lib/libgcc_s.so.1 libgcc.a )' > $FULLPATH/32/libgcc_s.so
b9880e
%else
b9880e
ln -sf /lib/libgcc_s.so.1 $FULLPATH/32/libgcc_s.so
b9880e
%endif
b9880e
%endif
b9880e
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libgomp.spec $FULLPATH/
b9880e
b9880e
%if %{build_ada}
b9880e
mv -f $FULLPATH/adalib/libgnarl-*.so %{buildroot}%{_prefix}/%{_lib}/
b9880e
mv -f $FULLPATH/adalib/libgnat-*.so %{buildroot}%{_prefix}/%{_lib}/
b9880e
rm -f $FULLPATH/adalib/libgnarl.so* $FULLPATH/adalib/libgnat.so*
b9880e
%endif
b9880e
b9880e
mkdir -p %{buildroot}%{_prefix}/libexec/getconf
b9880e
if gcc/xgcc -B gcc/ -E -P -dD -xc /dev/null | grep '__LONG_MAX__.*\(2147483647\|0x7fffffff\($\|[LU]\)\)'; then
b9880e
  ln -sf POSIX_V6_ILP32_OFF32 %{buildroot}%{_prefix}/libexec/getconf/default
b9880e
else
b9880e
  ln -sf POSIX_V6_LP64_OFF64 %{buildroot}%{_prefix}/libexec/getconf/default
b9880e
fi
b9880e
b9880e
mkdir -p %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libstdc++*gdb.py* \
b9880e
      %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/
b9880e
pushd ../libstdc++-v3/python
b9880e
for i in `find . -name \*.py`; do
b9880e
  touch -r $i %{buildroot}%{_prefix}/share/gcc-%{gcc_major}/python/$i
b9880e
done
b9880e
touch -r hook.in %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/libstdc++*gdb.py
b9880e
popd
b9880e
for f in `find %{buildroot}%{_prefix}/share/gcc-%{gcc_major}/python/ \
b9880e
	       %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/ -name \*.py`; do
b9880e
  r=${f/$RPM_BUILD_ROOT/}
b9880e
  %{__python3} -c 'import py_compile; py_compile.compile("'$f'", dfile="'$r'")'
b9880e
  %{__python3} -O -c 'import py_compile; py_compile.compile("'$f'", dfile="'$r'")'
b9880e
done
b9880e
b9880e
rm -f $FULLEPATH/libgccjit.so
b9880e
cp -a objlibgccjit/gcc/libgccjit.so* %{buildroot}%{_prefix}/%{_lib}/
b9880e
cp -a ../gcc/jit/libgccjit*.h %{buildroot}%{_prefix}/include/
b9880e
/usr/bin/install -c -m 644 objlibgccjit/gcc/doc/libgccjit.info %{buildroot}/%{_infodir}/
b9880e
gzip -9 %{buildroot}/%{_infodir}/libgccjit.info
b9880e
b9880e
pushd $FULLPATH
b9880e
if [ "%{_lib}" = "lib" ]; then
b9880e
%if %{build_objc}
b9880e
ln -sf ../../../libobjc.so.4 libobjc.so
b9880e
%endif
b9880e
ln -sf ../../../libstdc++.so.6.*[0-9] libstdc++.so
b9880e
ln -sf ../../../libgfortran.so.5.* libgfortran.so
b9880e
ln -sf ../../../libgomp.so.1.* libgomp.so
b9880e
%if %{build_go}
b9880e
ln -sf ../../../libgo.so.19.* libgo.so
b9880e
%endif
b9880e
%if %{build_libquadmath}
b9880e
ln -sf ../../../libquadmath.so.0.* libquadmath.so
b9880e
%endif
b9880e
%if %{build_d}
b9880e
ln -sf ../../../libgdruntime.so.2.* libgdruntime.so
b9880e
ln -sf ../../../libgphobos.so.2.* libgphobos.so
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
ln -sf ../../../libitm.so.1.* libitm.so
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
ln -sf ../../../libatomic.so.1.* libatomic.so
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
ln -sf ../../../libasan.so.6.* libasan.so
b9880e
mv ../../../libasan_preinit.o libasan_preinit.o
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
ln -sf ../../../libubsan.so.1.* libubsan.so
b9880e
%endif
b9880e
else
b9880e
%if %{build_objc}
b9880e
ln -sf ../../../../%{_lib}/libobjc.so.4 libobjc.so
b9880e
%endif
b9880e
ln -sf ../../../../%{_lib}/libstdc++.so.6.*[0-9] libstdc++.so
b9880e
ln -sf ../../../../%{_lib}/libgfortran.so.5.* libgfortran.so
b9880e
ln -sf ../../../../%{_lib}/libgomp.so.1.* libgomp.so
b9880e
%if %{build_go}
b9880e
ln -sf ../../../../%{_lib}/libgo.so.19.* libgo.so
b9880e
%endif
b9880e
%if %{build_libquadmath}
b9880e
ln -sf ../../../../%{_lib}/libquadmath.so.0.* libquadmath.so
b9880e
%endif
b9880e
%if %{build_d}
b9880e
ln -sf ../../../../%{_lib}/libgdruntime.so.2.* libgdruntime.so
b9880e
ln -sf ../../../../%{_lib}/libgphobos.so.2.* libgphobos.so
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
ln -sf ../../../../%{_lib}/libitm.so.1.* libitm.so
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
ln -sf ../../../../%{_lib}/libatomic.so.1.* libatomic.so
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
ln -sf ../../../../%{_lib}/libasan.so.6.* libasan.so
b9880e
mv ../../../../%{_lib}/libasan_preinit.o libasan_preinit.o
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
ln -sf ../../../../%{_lib}/libubsan.so.1.* libubsan.so
b9880e
%endif
b9880e
%if %{build_libtsan}
b9880e
rm -f libtsan.so
b9880e
echo 'INPUT ( %{_prefix}/%{_lib}/'`echo ../../../../%{_lib}/libtsan.so.0.* | sed 's,^.*libt,libt,'`' )' > libtsan.so
b9880e
mv ../../../../%{_lib}/libtsan_preinit.o libtsan_preinit.o
b9880e
%endif
b9880e
%if %{build_liblsan}
b9880e
rm -f liblsan.so
b9880e
echo 'INPUT ( %{_prefix}/%{_lib}/'`echo ../../../../%{_lib}/liblsan.so.0.* | sed 's,^.*libl,libl,'`' )' > liblsan.so
b9880e
mv ../../../../%{_lib}/liblsan_preinit.o liblsan_preinit.o
b9880e
%endif
b9880e
fi
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libstdc++.*a $FULLLPATH/
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libstdc++fs.*a $FULLLPATH/
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libsupc++.*a $FULLLPATH/
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libgfortran.*a $FULLLPATH/
b9880e
%if %{build_objc}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libobjc.*a .
b9880e
%endif
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libgomp.*a .
b9880e
%if %{build_libquadmath}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libquadmath.*a $FULLLPATH/
b9880e
%endif
b9880e
%if %{build_d}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libgdruntime.*a $FULLLPATH/
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libgphobos.*a $FULLLPATH/
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libitm.*a $FULLLPATH/
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libatomic.*a $FULLLPATH/
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libasan.*a $FULLLPATH/
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libubsan.*a $FULLLPATH/
b9880e
%endif
b9880e
%if %{build_libtsan}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libtsan.*a $FULLPATH/
b9880e
%endif
b9880e
%if %{build_liblsan}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/liblsan.*a $FULLPATH/
b9880e
%endif
b9880e
%if %{build_go}
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libgo.*a $FULLLPATH/
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libgobegin.*a $FULLLPATH/
b9880e
mv -f %{buildroot}%{_prefix}/%{_lib}/libgolibbegin.*a $FULLLPATH/
b9880e
%endif
b9880e
b9880e
%if %{build_ada}
b9880e
%ifarch sparcv9 ppc
b9880e
rm -rf $FULLPATH/64/ada{include,lib}
b9880e
%endif
b9880e
%ifarch %{multilib_64_archs}
b9880e
rm -rf $FULLPATH/32/ada{include,lib}
b9880e
%endif
b9880e
if [ "$FULLPATH" != "$FULLLPATH" ]; then
b9880e
mv -f $FULLPATH/ada{include,lib} $FULLLPATH/
b9880e
pushd $FULLLPATH/adalib
b9880e
if [ "%{_lib}" = "lib" ]; then
b9880e
ln -sf ../../../../../libgnarl-*.so libgnarl.so
b9880e
ln -sf ../../../../../libgnarl-*.so libgnarl-11.so
b9880e
ln -sf ../../../../../libgnat-*.so libgnat.so
b9880e
ln -sf ../../../../../libgnat-*.so libgnat-11.so
b9880e
else
b9880e
ln -sf ../../../../../../%{_lib}/libgnarl-*.so libgnarl.so
b9880e
ln -sf ../../../../../../%{_lib}/libgnarl-*.so libgnarl-11.so
b9880e
ln -sf ../../../../../../%{_lib}/libgnat-*.so libgnat.so
b9880e
ln -sf ../../../../../../%{_lib}/libgnat-*.so libgnat-11.so
b9880e
fi
b9880e
popd
b9880e
else
b9880e
pushd $FULLPATH/adalib
b9880e
if [ "%{_lib}" = "lib" ]; then
b9880e
ln -sf ../../../../libgnarl-*.so libgnarl.so
b9880e
ln -sf ../../../../libgnarl-*.so libgnarl-11.so
b9880e
ln -sf ../../../../libgnat-*.so libgnat.so
b9880e
ln -sf ../../../../libgnat-*.so libgnat-11.so
b9880e
else
b9880e
ln -sf ../../../../../%{_lib}/libgnarl-*.so libgnarl.so
b9880e
ln -sf ../../../../../%{_lib}/libgnarl-*.so libgnarl-11.so
b9880e
ln -sf ../../../../../%{_lib}/libgnat-*.so libgnat.so
b9880e
ln -sf ../../../../../%{_lib}/libgnat-*.so libgnat-11.so
b9880e
fi
b9880e
popd
b9880e
fi
b9880e
%endif
b9880e
b9880e
%ifarch sparcv9 ppc
b9880e
%if %{build_objc}
b9880e
ln -sf ../../../../../lib64/libobjc.so.4 64/libobjc.so
b9880e
%endif
b9880e
ln -sf ../`echo ../../../../lib/libstdc++.so.6.*[0-9] | sed s~/lib/~/lib64/~` 64/libstdc++.so
b9880e
ln -sf ../`echo ../../../../lib/libgfortran.so.5.* | sed s~/lib/~/lib64/~` 64/libgfortran.so
b9880e
ln -sf ../`echo ../../../../lib/libgomp.so.1.* | sed s~/lib/~/lib64/~` 64/libgomp.so
b9880e
%if %{build_go}
b9880e
rm -f libgo.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libgo.so.19.* | sed 's,^.*libg,libg,'`' )' > libgo.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libgo.so.19.* | sed 's,^.*libg,libg,'`' )' > 64/libgo.so
b9880e
%endif
b9880e
%if %{build_libquadmath}
b9880e
rm -f libquadmath.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libquadmath.so.0.* | sed 's,^.*libq,libq,'`' )' > libquadmath.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libquadmath.so.0.* | sed 's,^.*libq,libq,'`' )' > 64/libquadmath.so
b9880e
%endif
b9880e
%if %{build_d}
b9880e
rm -f libgdruntime.so libgphobos.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libgdruntime.so.2.* | sed 's,^.*libg,libg,'`' )' > libgdruntime.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libgdruntime.so.2.* | sed 's,^.*libg,libg,'`' )' > 64/libgdruntime.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libgphobos.so.2.* | sed 's,^.*libg,libg,'`' )' > libgphobos.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libgphobos.so.2.* | sed 's,^.*libg,libg,'`' )' > 64/libgphobos.so
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
rm -f libitm.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libitm.so.1.* | sed 's,^.*libi,libi,'`' )' > libitm.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libitm.so.1.* | sed 's,^.*libi,libi,'`' )' > 64/libitm.so
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
rm -f libatomic.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libatomic.so.1.* | sed 's,^.*liba,liba,'`' )' > libatomic.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libatomic.so.1.* | sed 's,^.*liba,liba,'`' )' > 64/libatomic.so
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
rm -f libasan.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libasan.so.6.* | sed 's,^.*liba,liba,'`' )' > libasan.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libasan.so.6.* | sed 's,^.*liba,liba,'`' )' > 64/libasan.so
b9880e
mv ../../../../lib64/libasan_preinit.o 64/libasan_preinit.o
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
rm -f libubsan.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libubsan.so.1.* | sed 's,^.*libu,libu,'`' )' > libubsan.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libubsan.so.1.* | sed 's,^.*libu,libu,'`' )' > 64/libubsan.so
b9880e
%endif
b9880e
ln -sf lib32/libgfortran.a libgfortran.a
b9880e
ln -sf ../lib64/libgfortran.a 64/libgfortran.a
b9880e
%if %{build_objc}
b9880e
mv -f %{buildroot}%{_prefix}/lib64/libobjc.*a 64/
b9880e
%endif
b9880e
mv -f %{buildroot}%{_prefix}/lib64/libgomp.*a 64/
b9880e
ln -sf lib32/libstdc++.a libstdc++.a
b9880e
ln -sf ../lib64/libstdc++.a 64/libstdc++.a
b9880e
ln -sf lib32/libstdc++fs.a libstdc++fs.a
b9880e
ln -sf ../lib64/libstdc++fs.a 64/libstdc++fs.a
b9880e
ln -sf lib32/libsupc++.a libsupc++.a
b9880e
ln -sf ../lib64/libsupc++.a 64/libsupc++.a
b9880e
%if %{build_libquadmath}
b9880e
ln -sf lib32/libquadmath.a libquadmath.a
b9880e
ln -sf ../lib64/libquadmath.a 64/libquadmath.a
b9880e
%endif
b9880e
%if %{build_d}
b9880e
ln -sf lib32/libgdruntime.a libgdruntime.a
b9880e
ln -sf ../lib64/libgdruntime.a 64/libgdruntime.a
b9880e
ln -sf lib32/libgphobos.a libgphobos.a
b9880e
ln -sf ../lib64/libgphobos.a 64/libgphobos.a
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
ln -sf lib32/libitm.a libitm.a
b9880e
ln -sf ../lib64/libitm.a 64/libitm.a
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
ln -sf lib32/libatomic.a libatomic.a
b9880e
ln -sf ../lib64/libatomic.a 64/libatomic.a
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
ln -sf lib32/libasan.a libasan.a
b9880e
ln -sf ../lib64/libasan.a 64/libasan.a
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
ln -sf lib32/libubsan.a libubsan.a
b9880e
ln -sf ../lib64/libubsan.a 64/libubsan.a
b9880e
%endif
b9880e
%if %{build_go}
b9880e
ln -sf lib32/libgo.a libgo.a
b9880e
ln -sf ../lib64/libgo.a 64/libgo.a
b9880e
ln -sf lib32/libgobegin.a libgobegin.a
b9880e
ln -sf ../lib64/libgobegin.a 64/libgobegin.a
b9880e
ln -sf lib32/libgolibbegin.a libgolibbegin.a
b9880e
ln -sf ../lib64/libgolibbegin.a 64/libgolibbegin.a
b9880e
%endif
b9880e
%if %{build_ada}
b9880e
ln -sf lib32/adainclude adainclude
b9880e
ln -sf ../lib64/adainclude 64/adainclude
b9880e
ln -sf lib32/adalib adalib
b9880e
ln -sf ../lib64/adalib 64/adalib
b9880e
%endif
b9880e
%endif
b9880e
%ifarch %{multilib_64_archs}
b9880e
mkdir -p 32
b9880e
%if %{build_objc}
b9880e
ln -sf ../../../../libobjc.so.4 32/libobjc.so
b9880e
%endif
b9880e
ln -sf ../`echo ../../../../lib64/libstdc++.so.6.*[0-9] | sed s~/../lib64/~/~` 32/libstdc++.so
b9880e
ln -sf ../`echo ../../../../lib64/libgfortran.so.5.* | sed s~/../lib64/~/~` 32/libgfortran.so
b9880e
ln -sf ../`echo ../../../../lib64/libgomp.so.1.* | sed s~/../lib64/~/~` 32/libgomp.so
b9880e
%if %{build_go}
b9880e
rm -f libgo.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libgo.so.19.* | sed 's,^.*libg,libg,'`' )' > libgo.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libgo.so.19.* | sed 's,^.*libg,libg,'`' )' > 32/libgo.so
b9880e
%endif
b9880e
%if %{build_libquadmath}
b9880e
rm -f libquadmath.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libquadmath.so.0.* | sed 's,^.*libq,libq,'`' )' > libquadmath.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libquadmath.so.0.* | sed 's,^.*libq,libq,'`' )' > 32/libquadmath.so
b9880e
%endif
b9880e
%if %{build_d}
b9880e
rm -f libgdruntime.so libgphobos.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libgdruntime.so.2.* | sed 's,^.*libg,libg,'`' )' > libgdruntime.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libgdruntime.so.2.* | sed 's,^.*libg,libg,'`' )' > 32/libgdruntime.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libgphobos.so.2.* | sed 's,^.*libg,libg,'`' )' > libgphobos.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libgphobos.so.2.* | sed 's,^.*libg,libg,'`' )' > 32/libgphobos.so
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
rm -f libitm.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libitm.so.1.* | sed 's,^.*libi,libi,'`' )' > libitm.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libitm.so.1.* | sed 's,^.*libi,libi,'`' )' > 32/libitm.so
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
rm -f libatomic.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libatomic.so.1.* | sed 's,^.*liba,liba,'`' )' > libatomic.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libatomic.so.1.* | sed 's,^.*liba,liba,'`' )' > 32/libatomic.so
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
rm -f libasan.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libasan.so.6.* | sed 's,^.*liba,liba,'`' )' > libasan.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libasan.so.6.* | sed 's,^.*liba,liba,'`' )' > 32/libasan.so
b9880e
mv ../../../../lib/libasan_preinit.o 32/libasan_preinit.o
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
rm -f libubsan.so
b9880e
echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libubsan.so.1.* | sed 's,^.*libu,libu,'`' )' > libubsan.so
b9880e
echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libubsan.so.1.* | sed 's,^.*libu,libu,'`' )' > 32/libubsan.so
b9880e
%endif
b9880e
%if %{build_objc}
b9880e
mv -f %{buildroot}%{_prefix}/lib/libobjc.*a 32/
b9880e
%endif
b9880e
mv -f %{buildroot}%{_prefix}/lib/libgomp.*a 32/
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
ln -sf ../lib32/libgfortran.a 32/libgfortran.a
b9880e
ln -sf lib64/libgfortran.a libgfortran.a
b9880e
ln -sf ../lib32/libstdc++.a 32/libstdc++.a
b9880e
ln -sf lib64/libstdc++.a libstdc++.a
b9880e
ln -sf ../lib32/libstdc++fs.a 32/libstdc++fs.a
b9880e
ln -sf lib64/libstdc++fs.a libstdc++fs.a
b9880e
ln -sf ../lib32/libsupc++.a 32/libsupc++.a
b9880e
ln -sf lib64/libsupc++.a libsupc++.a
b9880e
%if %{build_libquadmath}
b9880e
ln -sf ../lib32/libquadmath.a 32/libquadmath.a
b9880e
ln -sf lib64/libquadmath.a libquadmath.a
b9880e
%endif
b9880e
%if %{build_d}
b9880e
ln -sf ../lib32/libgdruntime.a 32/libgdruntime.a
b9880e
ln -sf lib64/libgdruntime.a libgdruntime.a
b9880e
ln -sf ../lib32/libgphobos.a 32/libgphobos.a
b9880e
ln -sf lib64/libgphobos.a libgphobos.a
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
ln -sf ../lib32/libitm.a 32/libitm.a
b9880e
ln -sf lib64/libitm.a libitm.a
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
ln -sf ../lib32/libatomic.a 32/libatomic.a
b9880e
ln -sf lib64/libatomic.a libatomic.a
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
ln -sf ../lib32/libasan.a 32/libasan.a
b9880e
ln -sf lib64/libasan.a libasan.a
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
ln -sf ../lib32/libubsan.a 32/libubsan.a
b9880e
ln -sf lib64/libubsan.a libubsan.a
b9880e
%endif
b9880e
%if %{build_go}
b9880e
ln -sf ../lib32/libgo.a 32/libgo.a
b9880e
ln -sf lib64/libgo.a libgo.a
b9880e
ln -sf ../lib32/libgobegin.a 32/libgobegin.a
b9880e
ln -sf lib64/libgobegin.a libgobegin.a
b9880e
ln -sf ../lib32/libgolibbegin.a 32/libgolibbegin.a
b9880e
ln -sf lib64/libgolibbegin.a libgolibbegin.a
b9880e
%endif
b9880e
%if %{build_ada}
b9880e
ln -sf ../lib32/adainclude 32/adainclude
b9880e
ln -sf lib64/adainclude adainclude
b9880e
ln -sf ../lib32/adalib 32/adalib
b9880e
ln -sf lib64/adalib adalib
b9880e
%endif
b9880e
%else
b9880e
%ifarch %{multilib_64_archs}
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgfortran.a 32/libgfortran.a
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libstdc++.a 32/libstdc++.a
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libstdc++fs.a 32/libstdc++fs.a
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libsupc++.a 32/libsupc++.a
b9880e
%if %{build_libquadmath}
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libquadmath.a 32/libquadmath.a
b9880e
%endif
b9880e
%if %{build_d}
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgdruntime.a 32/libgdruntime.a
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgphobos.a 32/libgphobos.a
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libitm.a 32/libitm.a
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libatomic.a 32/libatomic.a
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libasan.a 32/libasan.a
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libubsan.a 32/libubsan.a
b9880e
%endif
b9880e
%if %{build_go}
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgo.a 32/libgo.a
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgobegin.a 32/libgobegin.a
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgolibbegin.a 32/libgolibbegin.a
b9880e
%endif
b9880e
%if %{build_ada}
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/adainclude 32/adainclude
b9880e
ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/adalib 32/adalib
b9880e
%endif
b9880e
%endif
b9880e
%endif
b9880e
b9880e
# If we are building a debug package then copy all of the static archives
b9880e
# into the debug directory to keep them as unstripped copies.
b9880e
%if 0%{?_enable_debug_packages}
b9880e
for d in . $FULLLSUBDIR; do
b9880e
  mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/debug%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/$d
b9880e
  for f in `find $d -maxdepth 1 -a \
b9880e
		\( -name libasan.a -o -name libatomic.a \
b9880e
		-o -name libcaf_single.a \
b9880e
		-o -name libgcc.a -o -name libgcc_eh.a \
b9880e
		-o -name libgcov.a -o -name libgfortran.a \
b9880e
		-o -name libgo.a -o -name libgobegin.a \
b9880e
		-o -name libgolibbegin.a -o -name libgomp.a \
b9880e
		-o -name libitm.a -o -name liblsan.a \
b9880e
		-o -name libobjc.a -o -name libgdruntime.a -o -name libgphobos.a \
b9880e
		-o -name libquadmath.a -o -name libstdc++.a \
b9880e
		-o -name libstdc++fs.a -o -name libsupc++.a \
b9880e
		-o -name libtsan.a -o -name libubsan.a \) -a -type f`; do
b9880e
    cp -a $f $RPM_BUILD_ROOT%{_prefix}/lib/debug%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/$d/
b9880e
  done
b9880e
done
b9880e
%endif
b9880e
b9880e
# Strip debug info from Fortran/ObjC/Java static libraries
b9880e
strip -g `find . \( -name libgfortran.a -o -name libobjc.a -o -name libgomp.a \
b9880e
		    -o -name libgcc.a -o -name libgcov.a -o -name libquadmath.a \
b9880e
		    -o -name libgdruntime.a -o -name libgphobos.a \
b9880e
		    -o -name libitm.a -o -name libgo.a -o -name libcaf\*.a \
b9880e
		    -o -name libatomic.a -o -name libasan.a -o -name libtsan.a \
b9880e
		    -o -name libubsan.a -o -name liblsan.a -o -name libcc1.a \) \
b9880e
		 -a -type f`
b9880e
popd
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgfortran.so.5.*
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgomp.so.1.*
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libcc1.so.0.*
b9880e
%if %{build_libquadmath}
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libquadmath.so.0.*
b9880e
%endif
b9880e
%if %{build_d}
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgdruntime.so.2.*
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgphobos.so.2.*
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libitm.so.1.*
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libatomic.so.1.*
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libasan.so.6.*
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libubsan.so.1.*
b9880e
%endif
b9880e
%if %{build_libtsan}
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libtsan.so.0.*
b9880e
%endif
b9880e
%if %{build_liblsan}
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/liblsan.so.0.*
b9880e
%endif
b9880e
%if %{build_go}
b9880e
# Avoid stripping these libraries and binaries.
b9880e
chmod 644 %{buildroot}%{_prefix}/%{_lib}/libgo.so.19.*
b9880e
chmod 644 %{buildroot}%{_prefix}/bin/go.gcc
b9880e
chmod 644 %{buildroot}%{_prefix}/bin/gofmt.gcc
b9880e
chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cgo
b9880e
chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/buildid
b9880e
chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/test2json
b9880e
chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/vet
b9880e
%endif
b9880e
%if %{build_objc}
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libobjc.so.4.*
b9880e
%endif
b9880e
b9880e
%if %{build_ada}
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgnarl*so*
b9880e
chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgnat*so*
b9880e
%endif
b9880e
b9880e
mv $FULLPATH/include-fixed/syslimits.h $FULLPATH/include/syslimits.h
b9880e
mv $FULLPATH/include-fixed/limits.h $FULLPATH/include/limits.h
b9880e
for h in `find $FULLPATH/include -name \*.h`; do
b9880e
  if grep -q 'It has been auto-edited by fixincludes from' $h; then
b9880e
    rh=`grep -A2 'It has been auto-edited by fixincludes from' $h | tail -1 | sed 's|^.*"\(.*\)".*$|\1|'`
b9880e
    diff -up $rh $h || :
b9880e
    rm -f $h
b9880e
  fi
b9880e
done
b9880e
b9880e
cat > %{buildroot}%{_prefix}/bin/c89 <<"EOF"
b9880e
#!/bin/sh
b9880e
fl="-std=c89"
b9880e
for opt; do
b9880e
  case "$opt" in
b9880e
    -ansi|-std=c89|-std=iso9899:1990) fl="";;
b9880e
    -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2
b9880e
	    exit 1;;
b9880e
  esac
b9880e
done
b9880e
exec gcc $fl ${1+"$@"}
b9880e
EOF
b9880e
cat > %{buildroot}%{_prefix}/bin/c99 <<"EOF"
b9880e
#!/bin/sh
b9880e
fl="-std=c99"
b9880e
for opt; do
b9880e
  case "$opt" in
b9880e
    -std=c99|-std=iso9899:1999) fl="";;
b9880e
    -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2
b9880e
	    exit 1;;
b9880e
  esac
b9880e
done
b9880e
exec gcc $fl ${1+"$@"}
b9880e
EOF
b9880e
chmod 755 %{buildroot}%{_prefix}/bin/c?9
b9880e
b9880e
cd ..
b9880e
%find_lang %{name}
b9880e
%find_lang cpplib
b9880e
b9880e
# Remove binaries we will not be including, so that they don't end up in
b9880e
# gcc-debuginfo
b9880e
rm -f %{buildroot}%{_prefix}/%{_lib}/{libffi*,libiberty.a} || :
b9880e
rm -f $FULLEPATH/install-tools/{mkheaders,fixincl}
b9880e
rm -f %{buildroot}%{_prefix}/lib/{32,64}/libiberty.a
b9880e
rm -f %{buildroot}%{_prefix}/%{_lib}/libssp*
b9880e
rm -f %{buildroot}%{_prefix}/%{_lib}/libvtv* || :
b9880e
rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gfortran || :
b9880e
rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gccgo || :
b9880e
rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcj || :
b9880e
rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcc-ar || :
b9880e
rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcc-nm || :
b9880e
rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcc-ranlib || :
b9880e
rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gdc || :
b9880e
b9880e
%ifarch %{multilib_64_archs}
b9880e
# Remove libraries for the other arch on multilib arches
b9880e
rm -f %{buildroot}%{_prefix}/lib/lib*.so*
b9880e
rm -f %{buildroot}%{_prefix}/lib/lib*.a
b9880e
rm -f %{buildroot}/lib/libgcc_s*.so*
b9880e
%if %{build_go}
b9880e
rm -rf %{buildroot}%{_prefix}/lib/go/%{gcc_major}/%{gcc_target_platform}
b9880e
%ifnarch sparc64 ppc64 ppc64p7
b9880e
ln -sf %{multilib_32_arch}-%{_vendor}-%{_target_os} %{buildroot}%{_prefix}/lib/go/%{gcc_major}/%{gcc_target_platform}
b9880e
%endif
b9880e
%endif
b9880e
%else
b9880e
%ifarch sparcv9 ppc
b9880e
rm -f %{buildroot}%{_prefix}/lib64/lib*.so*
b9880e
rm -f %{buildroot}%{_prefix}/lib64/lib*.a
b9880e
rm -f %{buildroot}/lib64/libgcc_s*.so*
b9880e
%if %{build_go}
b9880e
rm -rf %{buildroot}%{_prefix}/lib64/go/%{gcc_major}/%{gcc_target_platform}
b9880e
%endif
b9880e
%endif
b9880e
%endif
b9880e
b9880e
rm -f %{buildroot}%{mandir}/man3/ffi*
b9880e
b9880e
# Help plugins find out nvra.
b9880e
echo gcc-%{version}-%{release}.%{_arch} > $FULLPATH/rpmver
b9880e
b9880e
# Add symlink to lto plugin in the binutils plugin directory.
b9880e
%{__mkdir_p} %{buildroot}%{_libdir}/bfd-plugins/
b9880e
ln -s ../../libexec/gcc/%{gcc_target_platform}/%{gcc_major}/liblto_plugin.so \
b9880e
  %{buildroot}%{_libdir}/bfd-plugins/
b9880e
8af166
# Rename the annobin plugin to gcc-annobin.
524b32
mkdir -p %{buildroot}%{ANNOBIN_GCC_PLUGIN_DIR}
524b32
pushd    %{buildroot}%{ANNOBIN_GCC_PLUGIN_DIR}
524b32
524b32
annobin_dir=$(find %{_builddir} -maxdepth 1 -type d -name "annobin*")
524b32
echo "annobin directory = ${annobin_dir}"
524b32
524b32
cp ${annobin_dir}/gcc-plugin/.libs/annobin.so.0.0.0 gcc-annobin.so.0.0.0
524b32
524b32
rm -f gcc-annobin.so.0 gcc-annobin.so
524b32
ln -s gcc-annobin.so.0.0.0 gcc-annobin.so.0
524b32
ln -s gcc-annobin.so.0.0.0 gcc-annobin.so
524b32
popd
524b32
b9880e
%check
b9880e
cd obj-%{gcc_target_platform}
b9880e
b9880e
# run the tests.
b9880e
LC_ALL=C make %{?_smp_mflags} -k check ALT_CC_UNDER_TEST=gcc ALT_CXX_UNDER_TEST=g++ \
b9880e
%if 0%{?fedora} >= 20 || 0%{?rhel} > 7
b9880e
     RUNTESTFLAGS="--target_board=unix/'{,-fstack-protector-strong}'" || :
b9880e
%else
b9880e
     RUNTESTFLAGS="--target_board=unix/'{,-fstack-protector}'" || :
b9880e
%endif
b9880e
if [ -f %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/annobin.so ]; then
b9880e
  # Test whether current annobin plugin won't fail miserably with the newly built gcc.
b9880e
  echo -e '#include <stdio.h>\nint main () { printf ("Hello, world!\\n"); return 0; }' > annobin-test.c
b9880e
  echo -e '#include <iostream>\nint main () { std::cout << "Hello, world!" << std::endl; return 0; }' > annobin-test.C
b9880e
  `%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-cc` \
b9880e
  -O2 -g -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS \
b9880e
  -fexceptions -fstack-protector-strong -grecord-gcc-switches -o annobin-test{c,.c} \
b9880e
  -Wl,-rpath,%{gcc_target_platform}/libgcc/ \
b9880e
  -fplugin=%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/annobin.so \
b9880e
  2> ANNOBINOUT1 || echo Annobin test 1 FAIL > ANNOBINOUT2;
b9880e
  `%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-cxx` \
b9880e
  `%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-includes` \
b9880e
  -O2 -g -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS \
b9880e
  -fexceptions -fstack-protector-strong -grecord-gcc-switches -o annobin-test{C,.C} \
b9880e
  -Wl,-rpath,%{gcc_target_platform}/libgcc/:%{gcc_target_platform}/libstdc++-v3/src/.libs/ \
b9880e
  -fplugin=%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/annobin.so \
b9880e
  -B %{gcc_target_platform}/libstdc++-v3/src/.libs/ \
b9880e
  2> ANNOBINOUT3 || echo Annobin test 2 FAIL > ANNOBINOUT4;
b9880e
  [ -f ./annobin-testc ] || echo Annobin test 1 MISSING > ANNOBINOUT5;
b9880e
  [ -f ./annobin-testc ] && \
b9880e
  ( ./annobin-testc > ANNOBINRES1 2>&1 || echo Annobin test 1 RUNFAIL > ANNOBINOUT6 );
b9880e
  [ -f ./annobin-testC ] || echo Annobin test 2 MISSING > ANNOBINOUT7;
b9880e
  [ -f ./annobin-testC ] && \
b9880e
  ( ./annobin-testC > ANNOBINRES2 2>&1 || echo Annobin test 2 RUNFAIL > ANNOBINOUT8 );
b9880e
  cat ANNOBINOUT[1-8] > ANNOBINOUT
b9880e
  touch ANNOBINRES1 ANNOBINRES2
b9880e
  [ -s ANNOBINOUT ] && echo Annobin testing FAILed > ANNOBINRES
b9880e
  cat ANNOBINOUT ANNOBINRES[12] >> ANNOBINRES
b9880e
  rm -f ANNOBINOUT* ANNOBINRES[12] annobin-test{c,C}
b9880e
fi
b9880e
echo ====================TESTING=========================
b9880e
( LC_ALL=C ../contrib/test_summary || : ) 2>&1 | sed -n '/^cat.*EOF/,/^EOF/{/^cat.*EOF/d;/^EOF/d;/^LAST_UPDATED:/d;p;}'
b9880e
[ -f ANNOBINRES ] && cat ANNOBINRES
b9880e
echo ====================TESTING END=====================
b9880e
mkdir testlogs-%{_target_platform}-%{version}-%{release}
b9880e
for i in `find . -name \*.log | grep -F testsuite/ | grep -v 'config.log\|acats.*/tests/'`; do
b9880e
  ln $i testlogs-%{_target_platform}-%{version}-%{release}/ || :
b9880e
done
b9880e
tar cf - testlogs-%{_target_platform}-%{version}-%{release} | xz -9e \
b9880e
  | uuencode testlogs-%{_target_platform}.tar.xz || :
b9880e
rm -rf testlogs-%{_target_platform}-%{version}-%{release}
b9880e
b9880e
%post go
b9880e
%{_sbindir}/update-alternatives --install \
b9880e
  %{_prefix}/bin/go go %{_prefix}/bin/go.gcc 92 \
b9880e
  --slave %{_prefix}/bin/gofmt gofmt %{_prefix}/bin/gofmt.gcc
b9880e
b9880e
%preun go
b9880e
if [ $1 = 0 ]; then
b9880e
  %{_sbindir}/update-alternatives --remove go %{_prefix}/bin/go.gcc
b9880e
fi
b9880e
b9880e
# Because glibc Prereq's libgcc and /sbin/ldconfig
b9880e
# comes from glibc, it might not exist yet when
b9880e
# libgcc is installed
b9880e
%post -n libgcc -p <lua>
b9880e
if posix.access ("/sbin/ldconfig", "x") then
b9880e
  local pid = posix.fork ()
b9880e
  if pid == 0 then
b9880e
    posix.exec ("/sbin/ldconfig")
b9880e
  elseif pid ~= -1 then
b9880e
    posix.wait (pid)
b9880e
  end
b9880e
end
b9880e
b9880e
%postun -n libgcc -p <lua>
b9880e
if posix.access ("/sbin/ldconfig", "x") then
b9880e
  local pid = posix.fork ()
b9880e
  if pid == 0 then
b9880e
    posix.exec ("/sbin/ldconfig")
b9880e
  elseif pid ~= -1 then
b9880e
    posix.wait (pid)
b9880e
  end
b9880e
end
b9880e
b9880e
%ldconfig_scriptlets -n libstdc++
b9880e
b9880e
%ldconfig_scriptlets -n libobjc
b9880e
b9880e
%ldconfig_scriptlets -n libgfortran
b9880e
b9880e
%ldconfig_scriptlets -n libgphobos
b9880e
b9880e
%ldconfig_scriptlets -n libgnat
b9880e
b9880e
%ldconfig_scriptlets -n libgomp
b9880e
b9880e
%ldconfig_scriptlets gdb-plugin
b9880e
b9880e
%ldconfig_scriptlets -n libgccjit
b9880e
4bc2c8
%ldconfig_scriptlets -n libquadmath
b9880e
b9880e
%ldconfig_scriptlets -n libitm
b9880e
b9880e
%ldconfig_scriptlets -n libatomic
b9880e
b9880e
%ldconfig_scriptlets -n libasan
b9880e
b9880e
%ldconfig_scriptlets -n libubsan
b9880e
b9880e
%ldconfig_scriptlets -n libtsan
b9880e
b9880e
%ldconfig_scriptlets -n liblsan
b9880e
b9880e
%ldconfig_scriptlets -n libgo
b9880e
b9880e
%files -f %{name}.lang
b9880e
%{_prefix}/bin/cc
b9880e
%{_prefix}/bin/c89
b9880e
%{_prefix}/bin/c99
b9880e
%{_prefix}/bin/gcc
b9880e
%{_prefix}/bin/gcov
b9880e
%{_prefix}/bin/gcov-tool
b9880e
%{_prefix}/bin/gcov-dump
b9880e
%{_prefix}/bin/gcc-ar
b9880e
%{_prefix}/bin/gcc-nm
b9880e
%{_prefix}/bin/gcc-ranlib
b9880e
%{_prefix}/bin/lto-dump
b9880e
%ifarch ppc
b9880e
%{_prefix}/bin/%{_target_platform}-gcc
b9880e
%endif
b9880e
%ifarch sparc64 sparcv9
b9880e
%{_prefix}/bin/sparc-%{_vendor}-%{_target_os}-gcc
b9880e
%endif
b9880e
%ifarch ppc64 ppc64p7
b9880e
%{_prefix}/bin/ppc-%{_vendor}-%{_target_os}-gcc
b9880e
%endif
b9880e
%{_prefix}/bin/%{gcc_target_platform}-gcc
b9880e
%{_prefix}/bin/%{gcc_target_platform}-gcc-%{gcc_major}
b9880e
%{_mandir}/man1/gcc.1*
b9880e
%{_mandir}/man1/gcov.1*
b9880e
%{_mandir}/man1/gcov-tool.1*
b9880e
%{_mandir}/man1/gcov-dump.1*
b9880e
%{_mandir}/man1/lto-dump.1*
b9880e
%{_infodir}/gcc*
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/libexec/gcc
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/lto1
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/lto-wrapper
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/liblto_plugin.so*
b9880e
%{_libdir}/bfd-plugins/liblto_plugin.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/rpmver
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stddef.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdarg.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdfix.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/varargs.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/float.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/limits.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdbool.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/iso646.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/syslimits.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/unwind.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/omp.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/openacc.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/acc_prof.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdint.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdint-gcc.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdalign.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdnoreturn.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdatomic.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/gcov.h
b9880e
%ifarch %{ix86} x86_64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xmmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/emmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/pmmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/tmmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ammintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/smmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/nmmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/wmmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/immintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avxintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/x86intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/fma4intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xopintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/lwpintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/popcntintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmiintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/tbmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ia32intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx2intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmi2intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/f16cintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/fmaintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/lzcntintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/rtmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xtestintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/adxintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/prfchwintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/rdseedintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/fxsrintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsaveintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsaveoptintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512cdintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512erintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512fintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512pfintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/shaintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mm_malloc.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mm3dnow.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cpuid.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cross-stdarg.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512bwintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512dqintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512ifmaintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512ifmavlintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vbmiintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vbmivlintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vlbwintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vldqintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vlintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/clflushoptintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/clwbintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mwaitxintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsavecintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsavesintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/clzerointrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/pkuintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx5124fmapsintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx5124vnniwintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vpopcntdqintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/sgxintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/gfniintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cetintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cet.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vbmi2intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vbmi2vlintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vnniintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vnnivlintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/vaesintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/vpclmulqdqintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vpopcntdqvlintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512bitalgintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/pconfigintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/wbnoinvdintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/movdirintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/waitpkgintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cldemoteintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512bf16vlintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512bf16intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/enqcmdintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vp2intersectintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vp2intersectvlintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/serializeintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/tsxldtrkintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxtileintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxint8intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxbf16intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/x86gprintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/uintrintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/hresetintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/keylockerintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avxvnniintrin.h
4bc2c8
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mwaitintrin.h
b9880e
%endif
b9880e
%ifarch ia64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ia64intrin.h
b9880e
%endif
b9880e
%ifarch ppc ppc64 ppc64le ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ppc-asm.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/altivec.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ppu_intrinsics.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/si2vmx.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/spu2vmx.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/vec_types.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmxlintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmi2intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmiintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xmmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mm_malloc.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/emmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/x86intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/pmmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/tmmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/smmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amo.h
b9880e
%endif
b9880e
%ifarch %{arm}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/unwind-arm-common.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_neon.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_acle.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_cmse.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_fp16.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_bf16.h
b9880e
%endif
b9880e
%ifarch aarch64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_neon.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_acle.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_fp16.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_bf16.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_sve.h
b9880e
%endif
b9880e
%ifarch sparc sparcv9 sparc64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/visintrin.h
b9880e
%endif
b9880e
%ifarch s390 s390x
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/s390intrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmxlintrin.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/vecintrin.h
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/sanitizer
b9880e
%endif
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/collect2
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/crt*.o
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcc.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcov.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcc_eh.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcc_s.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgomp.spec
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgomp.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgomp.so
b9880e
%if %{build_libitm}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.spec
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libsanitizer.spec
b9880e
%endif
b9880e
%if %{build_isl}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libisl.so.*
b9880e
%endif
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/crt*.o
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcc.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcov.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcc_eh.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcc_s.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgomp.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgomp.so
b9880e
%if %{build_libquadmath}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libquadmath.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libquadmath.so
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libitm.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libitm.so
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libatomic.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libatomic.so
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libasan.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libasan.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libasan_preinit.o
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libubsan.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libubsan.so
b9880e
%endif
b9880e
%endif
b9880e
%ifarch %{multilib_64_archs}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/crt*.o
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcc.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcov.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcc_eh.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcc_s.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgomp.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgomp.so
b9880e
%if %{build_libquadmath}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libquadmath.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libquadmath.so
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libitm.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libitm.so
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libatomic.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libatomic.so
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libasan.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libasan.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libasan_preinit.o
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libubsan.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libubsan.so
b9880e
%endif
b9880e
%endif
b9880e
%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%if %{build_libquadmath}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.so
b9880e
%endif
b9880e
%if %{build_libitm}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.so
b9880e
%endif
b9880e
%if %{build_libatomic}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.so
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan_preinit.o
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.so
b9880e
%endif
b9880e
%else
b9880e
%if %{build_libatomic}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.so
b9880e
%endif
b9880e
%if %{build_libasan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan_preinit.o
b9880e
%endif
b9880e
%if %{build_libubsan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.so
b9880e
%endif
b9880e
%endif
b9880e
%if %{build_libtsan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libtsan.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libtsan_preinit.o
b9880e
%endif
b9880e
%if %{build_liblsan}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/liblsan.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/liblsan_preinit.o
b9880e
%endif
b9880e
%{_prefix}/libexec/getconf/default
b9880e
%doc gcc/README* rpm.doc/changelogs/gcc/ChangeLog* 
b9880e
%{!?_licensedir:%global license %%doc}
b9880e
%license gcc/COPYING* COPYING.RUNTIME
b9880e
b9880e
%files -n cpp -f cpplib.lang
b9880e
%{_prefix}/lib/cpp
b9880e
%{_prefix}/bin/cpp
b9880e
%{_mandir}/man1/cpp.1*
b9880e
%{_infodir}/cpp*
b9880e
%dir %{_prefix}/libexec/gcc
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1
b9880e
b9880e
%files -n libgcc
b9880e
/%{_lib}/libgcc_s-%{gcc_major}-%{DATE}.so.1
b9880e
/%{_lib}/libgcc_s.so.1
b9880e
%{!?_licensedir:%global license %%doc}
b9880e
%license gcc/COPYING* COPYING.RUNTIME
b9880e
b9880e
%files c++
b9880e
%{_prefix}/bin/%{gcc_target_platform}-*++
b9880e
%{_prefix}/bin/g++
b9880e
%{_prefix}/bin/c++
b9880e
%{_mandir}/man1/g++.1*
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/libexec/gcc
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1plus
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/g++-mapper-server
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libstdc++.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libstdc++.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libstdc++fs.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libsupc++.a
b9880e
%endif
b9880e
%ifarch %{multilib_64_archs}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libstdc++.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libstdc++.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libstdc++fs.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libsupc++.a
b9880e
%endif
b9880e
%ifarch sparcv9 ppc %{multilib_64_archs}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.so
b9880e
%endif
b9880e
%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++fs.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libsupc++.a
b9880e
%endif
b9880e
%doc rpm.doc/changelogs/gcc/cp/ChangeLog*
b9880e
b9880e
%files -n libstdc++
b9880e
%{_prefix}/%{_lib}/libstdc++.so.6*
b9880e
%dir %{_datadir}/gdb
b9880e
%dir %{_datadir}/gdb/auto-load
b9880e
%dir %{_datadir}/gdb/auto-load/%{_prefix}
b9880e
%dir %{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/
b9880e
# Package symlink to keep compatibility
b9880e
%ifarch riscv64
b9880e
%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/lp64d
b9880e
%endif
b9880e
%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/libstdc*gdb.py*
b9880e
%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/__pycache__
b9880e
%dir %{_prefix}/share/gcc-%{gcc_major}
b9880e
%dir %{_prefix}/share/gcc-%{gcc_major}/python
b9880e
%{_prefix}/share/gcc-%{gcc_major}/python/libstdcxx
b9880e
b9880e
%files -n libstdc++-devel
b9880e
%dir %{_prefix}/include/c++
b9880e
%{_prefix}/include/c++/%{gcc_major}
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifnarch sparcv9 ppc %{multilib_64_archs}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.so
b9880e
%endif
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libstdc++fs.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libstdc++fs.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++fs.a
b9880e
%endif
b9880e
%doc rpm.doc/changelogs/libstdc++-v3/ChangeLog* libstdc++-v3/README*
b9880e
b9880e
%files -n libstdc++-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libstdc++.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libsupc++.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libstdc++.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libsupc++.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libsupc++.a
b9880e
%endif
b9880e
b9880e
%if %{build_libstdcxx_docs}
b9880e
%files -n libstdc++-docs
b9880e
%{_mandir}/man3/*
b9880e
%doc rpm.doc/libstdc++-v3/html
b9880e
%endif
b9880e
b9880e
%if %{build_objc}
b9880e
%files objc
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/libexec/gcc
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/objc
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1obj
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libobjc.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libobjc.so
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libobjc.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libobjc.so
b9880e
%endif
b9880e
%ifarch %{multilib_64_archs}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libobjc.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libobjc.so
b9880e
%endif
b9880e
%doc rpm.doc/objc/*
b9880e
%doc libobjc/THREADS* rpm.doc/changelogs/libobjc/ChangeLog*
b9880e
b9880e
%files objc++
b9880e
%dir %{_prefix}/libexec/gcc
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1objplus
b9880e
b9880e
%files -n libobjc
b9880e
%{_prefix}/%{_lib}/libobjc.so.4*
b9880e
%endif
b9880e
b9880e
%files gfortran
b9880e
%{_prefix}/bin/gfortran
b9880e
%{_prefix}/bin/f95
b9880e
%{_mandir}/man1/gfortran.1*
b9880e
%{_infodir}/gfortran*
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/libexec/gcc
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ISO_Fortran_binding.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib.f90
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib.mod
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib_kinds.mod
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc.f90
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc.mod
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc_kinds.mod
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc_lib.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/ieee_arithmetic.mod
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/ieee_exceptions.mod
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/ieee_features.mod
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/f951
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.spec
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libcaf_single.a
b9880e
%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.a
b9880e
%endif
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.so
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libcaf_single.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgfortran.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgfortran.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/finclude
b9880e
%endif
b9880e
%ifarch %{multilib_64_archs}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libcaf_single.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgfortran.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgfortran.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/finclude
b9880e
%endif
b9880e
%dir %{_fmoddir}
b9880e
%doc rpm.doc/gfortran/*
b9880e
b9880e
%files -n libgfortran
b9880e
%{_prefix}/%{_lib}/libgfortran.so.5*
b9880e
b9880e
%files -n libgfortran-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgfortran.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgfortran.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.a
b9880e
%endif
b9880e
b9880e
%if %{build_d}
b9880e
%files gdc
b9880e
%{_prefix}/bin/gdc
b9880e
%{_mandir}/man1/gdc.1*
b9880e
%{_infodir}/gdc*
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/libexec/gcc
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/d
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/d21
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgphobos.spec
b9880e
%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgdruntime.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgphobos.a
b9880e
%endif
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgdruntime.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgphobos.so
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgdruntime.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgphobos.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgdruntime.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgphobos.so
b9880e
%endif
b9880e
%ifarch %{multilib_64_archs}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgdruntime.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgphobos.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgdruntime.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgphobos.so
b9880e
%endif
b9880e
%doc rpm.doc/gdc/*
b9880e
b9880e
%files -n libgphobos
b9880e
%{_prefix}/%{_lib}/libgdruntime.so.2*
b9880e
%{_prefix}/%{_lib}/libgphobos.so.2*
b9880e
%doc rpm.doc/libphobos/*
b9880e
b9880e
%files -n libgphobos-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgdruntime.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgphobos.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgdruntime.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgphobos.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgdruntime.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgphobos.a
b9880e
%endif
b9880e
%endif
b9880e
b9880e
%if %{build_ada}
b9880e
%files gnat
b9880e
%{_prefix}/bin/gnat
b9880e
%{_prefix}/bin/gnat[^i]*
b9880e
%{_infodir}/gnat*
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/libexec/gcc
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/adainclude
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/adalib
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/ada_target_properties
b9880e
%endif
b9880e
%ifarch %{multilib_64_archs}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/adainclude
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/adalib
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/ada_target_properties
b9880e
%endif
b9880e
%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adainclude
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib
b9880e
%endif
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/ada_target_properties
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/gnat1
b9880e
%doc rpm.doc/changelogs/gcc/ada/ChangeLog*
b9880e
b9880e
%files -n libgnat
b9880e
%{_prefix}/%{_lib}/libgnat-*.so
b9880e
%{_prefix}/%{_lib}/libgnarl-*.so
b9880e
b9880e
%files -n libgnat-devel
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adainclude
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib
b9880e
%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnat.a
b9880e
%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnarl.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adainclude
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib
b9880e
%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnat.a
b9880e
%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnarl.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adainclude
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib
b9880e
%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnat.a
b9880e
%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnarl.a
b9880e
%endif
b9880e
b9880e
%files -n libgnat-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnat.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnarl.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnat.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnarl.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnat.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnarl.a
b9880e
%endif
b9880e
%endif
b9880e
b9880e
%files -n libgomp
b9880e
%{_prefix}/%{_lib}/libgomp.so.1*
b9880e
%{_infodir}/libgomp.info*
b9880e
%doc rpm.doc/changelogs/libgomp/ChangeLog*
b9880e
b9880e
%if %{build_libquadmath}
b9880e
%files -n libquadmath
b9880e
%{_prefix}/%{_lib}/libquadmath.so.0*
b9880e
%{_infodir}/libquadmath.info*
b9880e
%{!?_licensedir:%global license %%doc}
b9880e
%license rpm.doc/libquadmath/COPYING*
b9880e
b9880e
%files -n libquadmath-devel
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/quadmath.h
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/quadmath_weak.h
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.so
b9880e
%endif
b9880e
%doc rpm.doc/libquadmath/ChangeLog*
b9880e
b9880e
%files -n libquadmath-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libquadmath.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libquadmath.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.a
b9880e
%endif
b9880e
%endif
b9880e
b9880e
%if %{build_libitm}
b9880e
%files -n libitm
b9880e
%{_prefix}/%{_lib}/libitm.so.1*
b9880e
%{_infodir}/libitm.info*
b9880e
b9880e
%files -n libitm-devel
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include
b9880e
#%%{_prefix}/lib/gcc/%%{gcc_target_platform}/%%{gcc_major}/include/itm.h
b9880e
#%%{_prefix}/lib/gcc/%%{gcc_target_platform}/%%{gcc_major}/include/itm_weak.h
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.so
b9880e
%endif
b9880e
%doc rpm.doc/libitm/ChangeLog*
b9880e
b9880e
%files -n libitm-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libitm.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libitm.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.a
b9880e
%endif
b9880e
%endif
b9880e
b9880e
%if %{build_libatomic}
b9880e
%files -n libatomic
b9880e
%{_prefix}/%{_lib}/libatomic.so.1*
b9880e
b9880e
%files -n libatomic-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libatomic.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libatomic.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.a
b9880e
%endif
b9880e
%doc rpm.doc/changelogs/libatomic/ChangeLog*
b9880e
%endif
b9880e
b9880e
%if %{build_libasan}
b9880e
%files -n libasan
b9880e
%{_prefix}/%{_lib}/libasan.so.6*
b9880e
b9880e
%files -n libasan-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libasan.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libasan.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.a
b9880e
%endif
b9880e
%doc rpm.doc/changelogs/libsanitizer/ChangeLog*
b9880e
%{!?_licensedir:%global license %%doc}
b9880e
%license libsanitizer/LICENSE.TXT
b9880e
%endif
b9880e
b9880e
%if %{build_libubsan}
b9880e
%files -n libubsan
b9880e
%{_prefix}/%{_lib}/libubsan.so.1*
b9880e
b9880e
%files -n libubsan-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libubsan.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libubsan.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.a
b9880e
%endif
b9880e
%doc rpm.doc/changelogs/libsanitizer/ChangeLog*
b9880e
%{!?_licensedir:%global license %%doc}
b9880e
%license libsanitizer/LICENSE.TXT
b9880e
%endif
b9880e
b9880e
%if %{build_libtsan}
b9880e
%files -n libtsan
b9880e
%{_prefix}/%{_lib}/libtsan.so.0*
b9880e
b9880e
%files -n libtsan-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libtsan.a
b9880e
%doc rpm.doc/changelogs/libsanitizer/ChangeLog*
b9880e
%{!?_licensedir:%global license %%doc}
b9880e
%license libsanitizer/LICENSE.TXT
b9880e
%endif
b9880e
b9880e
%if %{build_liblsan}
b9880e
%files -n liblsan
b9880e
%{_prefix}/%{_lib}/liblsan.so.0*
b9880e
b9880e
%files -n liblsan-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/liblsan.a
b9880e
%doc rpm.doc/changelogs/libsanitizer/ChangeLog*
b9880e
%{!?_licensedir:%global license %%doc}
b9880e
%license libsanitizer/LICENSE.TXT
b9880e
%endif
b9880e
b9880e
%if %{build_go}
b9880e
%files go
b9880e
%ghost %{_prefix}/bin/go
b9880e
%attr(755,root,root) %{_prefix}/bin/go.gcc
b9880e
%{_prefix}/bin/gccgo
b9880e
%ghost %{_prefix}/bin/gofmt
b9880e
%attr(755,root,root) %{_prefix}/bin/gofmt.gcc
b9880e
%{_mandir}/man1/gccgo.1*
b9880e
%{_mandir}/man1/go.1*
b9880e
%{_mandir}/man1/gofmt.1*
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/libexec/gcc
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/go1
b9880e
%attr(755,root,root) %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cgo
b9880e
%attr(755,root,root) %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/buildid
b9880e
%attr(755,root,root) %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/test2json
b9880e
%attr(755,root,root) %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/vet
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgo.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgo.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgobegin.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgolibbegin.a
b9880e
%endif
b9880e
%ifarch %{multilib_64_archs}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgo.so
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgo.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgobegin.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgolibbegin.a
b9880e
%endif
b9880e
%ifarch sparcv9 ppc %{multilib_64_archs}
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.so
b9880e
%endif
b9880e
%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgobegin.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgolibbegin.a
b9880e
%endif
b9880e
%doc rpm.doc/go/*
b9880e
b9880e
%files -n libgo
b9880e
%attr(755,root,root) %{_prefix}/%{_lib}/libgo.so.19*
b9880e
%doc rpm.doc/libgo/*
b9880e
b9880e
%files -n libgo-devel
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/%{_lib}/go
b9880e
%dir %{_prefix}/%{_lib}/go/%{gcc_major}
b9880e
%{_prefix}/%{_lib}/go/%{gcc_major}/%{gcc_target_platform}
b9880e
%ifarch %{multilib_64_archs}
b9880e
%ifnarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/go
b9880e
%dir %{_prefix}/lib/go/%{gcc_major}
b9880e
%{_prefix}/lib/go/%{gcc_major}/%{gcc_target_platform}
b9880e
%endif
b9880e
%endif
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgobegin.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgolibbegin.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgobegin.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgolibbegin.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgobegin.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgolibbegin.a
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.so
b9880e
%endif
b9880e
b9880e
%files -n libgo-static
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%ifarch sparcv9 ppc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgo.a
b9880e
%endif
b9880e
%ifarch sparc64 ppc64 ppc64p7
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgo.a
b9880e
%endif
b9880e
%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.a
b9880e
%endif
b9880e
%endif
b9880e
b9880e
%files -n libgccjit
b9880e
%{_prefix}/%{_lib}/libgccjit.so.*
b9880e
%doc rpm.doc/changelogs/gcc/jit/ChangeLog*
b9880e
b9880e
%files -n libgccjit-devel
b9880e
%{_prefix}/%{_lib}/libgccjit.so
b9880e
%{_prefix}/include/libgccjit*.h
b9880e
%{_infodir}/libgccjit.info*
b9880e
%doc rpm.doc/libgccjit-devel/*
b9880e
%doc gcc/jit/docs/examples
b9880e
b9880e
%files plugin-devel
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/gtype.state
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/include
b9880e
%dir %{_prefix}/libexec/gcc
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/plugin
b9880e
b9880e
%files gdb-plugin
b9880e
%{_prefix}/%{_lib}/libcc1.so*
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/libcc1plugin.so*
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/libcp1plugin.so*
b9880e
%doc rpm.doc/changelogs/libcc1/ChangeLog*
b9880e
b9880e
%if %{build_offload_nvptx}
b9880e
%files offload-nvptx
b9880e
%{_prefix}/bin/nvptx-none-*
b9880e
%{_prefix}/bin/%{gcc_target_platform}-accel-nvptx-none-gcc
b9880e
%{_prefix}/bin/%{gcc_target_platform}-accel-nvptx-none-lto-dump
b9880e
%dir %{_prefix}/lib/gcc
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/accel
b9880e
%dir %{_prefix}/libexec/gcc
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}
b9880e
%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/accel
b9880e
%{_prefix}/lib/gcc/nvptx-none
b9880e
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/accel/nvptx-none
b9880e
%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/accel/nvptx-none
b9880e
%dir %{_prefix}/nvptx-none
b9880e
%{_prefix}/nvptx-none/bin
b9880e
%{_prefix}/nvptx-none/include
b9880e
b9880e
%files -n libgomp-offload-nvptx
b9880e
%{_prefix}/%{_lib}/libgomp-plugin-nvptx.so.*
b9880e
%endif
b9880e
8af166
%files plugin-annobin
8af166
%{ANNOBIN_GCC_PLUGIN_DIR}/gcc-annobin.so
8af166
%{ANNOBIN_GCC_PLUGIN_DIR}/gcc-annobin.so.0
8af166
%{ANNOBIN_GCC_PLUGIN_DIR}/gcc-annobin.so.0.0.0
8af166
b9880e
%changelog
ed322c
* Tue Jul 12 2022 Marek Polacek <polacek@redhat.com> 11.3.1-2.1
ed322c
- fix handling of invalid ranges in std::regex (#2106262)
ed322c
ed322c
* Thu Apr 21 2022 Jakub Jelinek <jakub@redhat.com> 11.3.1-2
ed322c
- update from releases/gcc-11-branch (#2077536)
ed322c
  - GCC 11.3 release
ed322c
  - PRs c++/98249, c++/99893, c++/100608, c++/101051, c++/101532, c++/101677,
ed322c
	c++/101717, c++/101894, c++/102869, c++/103105, c++/103328,
ed322c
	c++/103341, c++/103455, c++/103706, c++/103885, c++/103943,
ed322c
	c++/104008, c++/104079, c++/104225, c++/104507, c++/104565,
ed322c
	c++/105003, c++/105064, c++/105143, c++/105186, c++/105256, c/101585,
ed322c
	debug/105203, fortran/102992, fortran/104210, fortran/104228,
ed322c
	fortran/104570, fortran/105138, gcov-profile/105282, ipa/103083,
ed322c
	ipa/103432, jit/100613, libstdc++/90943, libstdc++/100516,
ed322c
	libstdc++/103630, libstdc++/103638, libstdc++/103650,
ed322c
	libstdc++/103955, libstdc++/104098, libstdc++/104301,
ed322c
	libstdc++/104542, libstdc++/104859, libstdc++/105021,
ed322c
	libstdc++/105027, middle-end/104497, middle-end/105165,
ed322c
	rtl-optimization/104985, rtl-optimization/105028,
ed322c
	rtl-optimization/105211, target/80556, target/100106, target/104117,
ed322c
	target/104474, target/104853, target/104894, target/105214,
ed322c
	target/105257, tree-optimization/99121, tree-optimization/104880,
ed322c
	tree-optimization/105053, tree-optimization/105070,
ed322c
	tree-optimization/105189, tree-optimization/105198,
ed322c
	tree-optimization/105226, tree-optimization/105232,
ed322c
	tree-optimization/105235
ed322c
- fix bogus -Wuninitialized warning on va_arg with complex types on x86_64
ed322c
  (PR target/105331)
ed322c
- remove bogus assertion in std::from_chars (PR libstdc++/105324)
ed322c
ed322c
* Mon Apr  4 2022 David Malcolm <dmalcolm@redhat.com> - 11.2.1-10
ed322c
- update from releases/gcc-11-branch (#2063255)
ed322c
  - PRs ada/98724, ada/104258, ada/104767, ada/104861, c++/58646, c++/59950,
ed322c
	c++/61611, c++/95036, c++/100468, c++/101030, c++/101095, c++/101371,
ed322c
	c++/101515, c++/101767, c++/102045, c++/102123, c++/102538,
ed322c
	c++/102740, c++/102990, c++/103057, c++/103186, c++/103291,
ed322c
	c++/103299, c++/103337, c++/103711, c++/103769, c++/103968,
ed322c
	c++/104107, c++/104108, c++/104284, c++/104410, c++/104472,
ed322c
	c++/104513, c++/104568, c++/104667, c++/104806, c++/104847,
ed322c
	c++/104944, c++/104994, c++/105035, c++/105061, c/82283, c/84685,
ed322c
	c/104510, c/104711, d/104659, d/105004, debug/104337, debug/104517,
ed322c
	debug/104557, fortran/66193, fortran/99585, fortran/100337,
ed322c
	fortran/103790, fortran/104211, fortran/104311, fortran/104331,
ed322c
	fortran/104430, fortran/104619, fortran/104811, go/100537,
ed322c
	libgomp/104385, libstdc++/101231, libstdc++/102358, libstdc++/103904,
ed322c
	libstdc++/104442, lto/104237, lto/104333, lto/104617,
ed322c
	middle-end/95115, middle-end/99578, middle-end/100464,
ed322c
	middle-end/100680, middle-end/100775, middle-end/100786,
ed322c
	middle-end/104307, middle-end/104402, middle-end/104446,
ed322c
	middle-end/104786, middle-end/104971, middle-end/105032,
ed322c
	preprocessor/104147, rtl-optimization/104544, rtl-optimization/104589,
ed322c
	rtl-optimization/104777, rtl-optimization/104814, sanitizer/102656,
ed322c
	sanitizer/104449, sanitizer/105093, target/79754, target/87496,
ed322c
	target/99708, target/99754, target/100784, target/101324,
ed322c
	target/102140, target/102952, target/102957, target/103307,
ed322c
	target/103627, target/103925, target/104090, target/104208,
ed322c
	target/104219, target/104253, target/104362, target/104448,
ed322c
	target/104451, target/104453, target/104458, target/104462,
ed322c
	target/104469, target/104502, target/104674, target/104681,
ed322c
	target/104688, target/104775, target/104890, target/104910,
ed322c
	target/104923, target/104963, target/104998, target/105000,
ed322c
	target/105052, target/105058, target/105068, testsuite/103556,
ed322c
	testsuite/103586, testsuite/104730, testsuite/104759,
ed322c
	testsuite/105055, tree-optimization/45178, tree-optimization/100834,
ed322c
	tree-optimization/101636, tree-optimization/102819,
ed322c
	tree-optimization/102893, tree-optimization/103169,
ed322c
	tree-optimization/103361, tree-optimization/103489,
ed322c
	tree-optimization/103544, tree-optimization/103596,
ed322c
	tree-optimization/103641, tree-optimization/103864,
ed322c
	tree-optimization/104263, tree-optimization/104288,
ed322c
	tree-optimization/104511, tree-optimization/104601,
ed322c
	tree-optimization/104675, tree-optimization/104782,
ed322c
	tree-optimization/104931, tree-optimization/105094
ed322c
- fix x86 vector initialization expansion fallback (PR target/105123)
ed322c
- drop patch 22 (gcc11-libsanitizer-pthread.patch;
ed322c
  upstreamed as r11-9607-ga8dd74bfb921ed)
ed322c
8af166
* Thu Feb 10 2022 Marek Polacek <polacek@redhat.com> 11.2.1-9.4
8af166
- add --enable-host-bind-now, use it (#2044917)
8af166
8af166
* Tue Feb  8 2022 Marek Polacek <polacek@redhat.com> 11.2.1-9.3
8af166
- use _thread_db_sizeof_pthread to obtain struct pthread size (#2034494)
8af166
- add --enable-host-pie, build the compilers as PIE (#2044917)
8af166
8af166
* Mon Feb  7 2022 Marek Polacek <polacek@redhat.com> 11.2.1-9.2
8af166
- add support for relocation of the PCH data (pch/71934, #2044917)
8af166
- remove 30_threads/future/members/poll.cc (#2050090)
8af166
- avoid overly-greedy match in dejagnu regexp (#2050089)
8af166
8af166
* Mon Jan 31 2022 Marek Polacek <polacek@redhat.com> 11.2.1-9.1
8af166
- don't set -Wl,-rpath when building annobin (#2047356)
8af166
8af166
* Fri Jan 28 2022 Marek Polacek <polacek@redhat.com> 11.2.1-9
8af166
- update from releases/gcc-11-branch (#2047296)
8af166
  - PRs fortran/104127, fortran/104212, fortran/104227, target/101529
8af166
- fix up va-opt-6.c testcase
8af166
8af166
* Fri Jan 28 2022 Marek Polacek <polacek@redhat.com> 11.2.1-8
8af166
- update from releases/gcc-11-branch (#2047296)
8af166
  - PRs ada/103538, analyzer/101962, bootstrap/103688, c++/85846, c++/95009,
8af166
	c++/98394, c++/99911, c++/100493, c++/101715, c++/102229, c++/102933,
8af166
	c++/103012, c++/103198, c++/103480, c++/103703, c++/103714,
8af166
	c++/103758, c++/103783, c++/103831, c++/103912, c++/104055, c/97548,
8af166
	c/101289, c/101537, c/103587, c/103881, d/103604, debug/103838,
8af166
	debug/103874, fortran/67804, fortran/83079, fortran/101329,
8af166
	fortran/101762, fortran/102332, fortran/102717, fortran/102787,
8af166
	fortran/103411, fortran/103412, fortran/103418, fortran/103473,
8af166
	fortran/103505, fortran/103588, fortran/103591, fortran/103606,
8af166
	fortran/103607, fortran/103609, fortran/103610, fortran/103692,
8af166
	fortran/103717, fortran/103718, fortran/103719, fortran/103776,
8af166
	fortran/103777, fortran/103778, fortran/103782, fortran/103789,
8af166
	ipa/101354, jit/103562, libfortran/103634, libstdc++/100017,
8af166
	libstdc++/102994, libstdc++/103453, libstdc++/103501,
8af166
	libstdc++/103549, libstdc++/103877, libstdc++/103919,
8af166
	middle-end/101751, middle-end/102860, middle-end/103813, objc/103639,
8af166
	preprocessor/89971, preprocessor/102432, rtl-optimization/102478,
8af166
	rtl-optimization/103837, rtl-optimization/103860,
8af166
	rtl-optimization/103908, sanitizer/102911, target/102347,
8af166
	target/103465, target/103661, target/104172, target/104188,
8af166
	tree-optimization/101615, tree-optimization/103523,
8af166
	tree-optimization/103603, tree-optimization/103995
8af166
8af166
* Tue Jan 25 2022 Marek Polacek <polacek@redhat.com> 11.2.1-7.7
8af166
- do not undefine _hardened_build (#2044917)
8af166
8af166
* Mon Jan 24 2022 Marek Polacek <polacek@redhat.com> 11.2.1-7.6
8af166
- update annobin plugin patch (#2030667)
8af166
8af166
* Thu Jan 13 2022 Marek Polacek <polacek@redhat.com> 11.2.1-7.5
8af166
- update annobin plugin patch (#2030667)
8af166
524b32
* Fri Jan  7 2022 Marek Polacek <polacek@redhat.com> 11.2.1-7.4
524b32
- update annobin plugin patch (#2030667)
524b32
524b32
* Tue Jan  4 2022 Marek Polacek <polacek@redhat.com> 11.2.1-7.3
524b32
- fix dg-ice tests (#1996047)
524b32
524b32
* Tue Jan  4 2022 Marek Polacek <polacek@redhat.com> 11.2.1-7.2
524b32
- update annobin plugin patch (#2030667)
524b32
524b32
* Thu Dec 16 2021 Marek Polacek <polacek@redhat.com> 11.2.1-7.1
524b32
- build annobin plugin (patch by Nick Clifton) (#2030667)
524b32
524b32
* Tue Dec  7 2021 Marek Polacek <polacek@redhat.com> 11.2.1-7
524b32
- update from releases/gcc-11-branch (#1996858)
524b32
  - PRs ada/100486, c++/70796, c++/92746, c++/93286, c++/94490, c++/102642,
524b32
	c++/102786, debug/101378, debug/103046, debug/103315, fortran/87711,
524b32
	fortran/87851, fortran/97896, fortran/99061, fortran/99348,
524b32
	fortran/102521, fortran/102685, fortran/102715, fortran/102745,
524b32
	fortran/102816, fortran/102817, fortran/102917, fortran/103137,
524b32
	fortran/103138, fortran/103392, gcov-profile/100520, ipa/102714,
524b32
	ipa/102762, ipa/103052, ipa/103246, ipa/103267, libstdc++/96416,
524b32
	libstdc++/98421, libstdc++/100117, libstdc++/100153, libstdc++/100748,
524b32
	libstdc++/101571, libstdc++/101608, libstdc++/102894,
524b32
	libstdc++/103022, libstdc++/103086, libstdc++/103133,
524b32
	libstdc++/103240, libstdc++/103381, middle-end/64888,
524b32
	middle-end/101480, middle-end/102431, middle-end/102518,
524b32
	middle-end/103059, middle-end/103181, middle-end/103248,
524b32
	middle-end/103384, preprocessor/103130, rtl-optimization/102356,
524b32
	rtl-optimization/102842, target/101985, target/102976, target/102991,
524b32
	target/103205, target/103274, target/103275, testsuite/102690,
524b32
	tree-optimization/100393, tree-optimization/102139,
524b32
	tree-optimization/102505, tree-optimization/102572,
524b32
	tree-optimization/102788, tree-optimization/102789,
524b32
	tree-optimization/102798, tree-optimization/102970,
524b32
	tree-optimization/103192, tree-optimization/103204,
524b32
	tree-optimization/103237, tree-optimization/103255,
524b32
	tree-optimization/103435
524b32
- fix up #__VA_OPT__ handling (PR preprocessor/103415)
524b32
3de30f
* Mon Nov 29 2021 Marek Polacek <polacek@redhat.com> 11.2.1-6.1
3de30f
- add -Wbidi-chars patch (#2008393)
3de30f
4bc2c8
* Wed Oct 27 2021 Marek Polacek <polacek@redhat.com> 11.2.1-6
4bc2c8
- update from releases/gcc-11-branch (#1996858)
4bc2c8
- build target shared libraries with -Wl,-z,relro,-z,now
4bc2c8
- add mwaitintrin.h on x86 (#2013860)
4bc2c8
- improve generated code with extern thread_local constinit vars
4bc2c8
  with trivial dtors
4bc2c8
- add support for C++20 #__VA_OPT__
4bc2c8
- add bundled(libbacktrace) and bundled(libffi) provides (#1993932)
4bc2c8
b9880e
* Thu Aug 12 2021 Marek Polacek <polacek@redhat.com> 11.2.1-2.2
b9880e
- bootstrap with -Wl,-z,relro,-z,now, apply libgcc hardening patch (#1988450)
b9880e
- fix libsanitizer with non-constant SIGSTKSZ (#1992727)
b9880e
b9880e
* Fri Jul 30 2021 Marek Polacek <polacek@redhat.com> 11.2.1-2.1
b9880e
- enable LTO profiledbootstrap on all arches (#1986141)
b9880e
b9880e
* Thu Jul 29 2021 Florian Weimer <fweimer@redhat.com> 11.2.1-2
b9880e
- Rebuild with changed aarch64 build flags (#1984652)
b9880e
b9880e
* Wed Jul 28 2021 Marek Polacek <polacek@redhat.com> 11.2.1-1
b9880e
- update from releases/gcc-11-branch (#1986836)
b9880e
  - GCC 11.2 release
b9880e
  - PRs middle-end/101586, rtl-optimization/101562
b9880e
- enable LTO profiledbootstrap on x86_64, i?86, ppc64le and s390x for rhel9
b9880e
  (#1986141)
b9880e
b9880e
* Wed Jun 23 2021 David Malcolm <dmalcolm@redhat.com> 11.1.1-6.1
b9880e
- drop patch that retained broken std::call_once symbols
b9880e
  (#1937700, PR libstdc++/99341)
b9880e
b9880e
* Wed Jun 23 2021 Jakub Jelinek <jakub@redhat.com> 11.1.1-6
b9880e
- update from releases/gcc-11-branch
b9880e
  - PRs c++/100876, c++/100879, c++/101106, c/100619, c/100783, fortran/95501,
b9880e
	fortran/95502, fortran/100283, fortran/101123, inline-asm/100785,
b9880e
	libstdc++/91488, libstdc++/95833, libstdc++/100806, libstdc++/100940,
b9880e
	middle-end/100250, middle-end/100307, middle-end/100574,
b9880e
	middle-end/100684, middle-end/100732, middle-end/100876,
b9880e
	middle-end/101062, middle-end/101167, target/99842, target/99939,
b9880e
	target/100310, target/100777, target/100856, target/100871,
b9880e
	target/101016
b9880e
b9880e
* Thu Jun 17 2021 Jakub Jelinek <jakub@redhat.com> 11.1.1-5
b9880e
- update from releases/gcc-11-branch
b9880e
  - PRs bootstrap/100731, c++/91706, c++/91859, c++/95719, c++/100065,
b9880e
	c++/100102, c++/100580, c++/100666, c++/100796, c++/100797,
b9880e
	c++/100862, c++/100946, c++/100963, c++/101029, c++/101078, c/100902,
b9880e
	c/100920, d/100882, d/100935, d/100964, d/100967, d/100999,
b9880e
	debug/100852, fortran/82376, fortran/98301, fortran/99839,
b9880e
	fortran/100965, ipa/100791, libstdc++/98842, libstdc++/100475,
b9880e
	libstdc++/100577, libstdc++/100631, libstdc++/100639,
b9880e
	libstdc++/100676, libstdc++/100690, libstdc++/100768,
b9880e
	libstdc++/100770, libstdc++/100824, libstdc++/100833,
b9880e
	libstdc++/100889, libstdc++/100894, libstdc++/100900,
b9880e
	libstdc++/100982, libstdc++/101034, libstdc++/101055,
b9880e
	middle-end/100576, middle-end/100898, middle-end/101009,
b9880e
	preprocessor/100646, rtl-optimization/100342, rtl-optimization/100590,
b9880e
	rtl-optimization/101008, target/100333, target/100885, target/100887,
b9880e
	target/101046, testsuite/100750, tree-optimization/100934,
b9880e
	tree-optimization/100981
b9880e
b9880e
* Mon Jun 14 2021 Florian Weimer <fweimer@redhat.com> 11.1.1-4
b9880e
- NVR bump to enable rebuild in side tag
b9880e
b9880e
* Mon May 31 2021 Jakub Jelinek <jakub@redhat.com> 11.1.1-3
b9880e
- update from releases/gcc-11-branch
b9880e
  - PRs bootstrap/100552, c++/100205, c++/100261, c++/100281, c++/100367,
b9880e
	c++/100372, c++/100489, c++/100502, c++/100634, c++/100644,
b9880e
	c++/100659, c/100550, fortran/98411, fortran/100551, fortran/100602,
b9880e
	fortran/100633, fortran/100656, ipa/100513, libstdc++/100361,
b9880e
	libstdc++/100479, libstdc++/100630, middle-end/100471,
b9880e
	middle-end/100508, middle-end/100509, preprocessor/100392,
b9880e
	target/94177, target/99725, target/99960, target/99977, target/100419,
b9880e
	target/100563, target/100626, target/100767, testsuite/96488,
b9880e
	tree-optimization/100492, tree-optimization/100519
b9880e
b9880e
* Wed May 12 2021 Jakub Jelinek <jakub@redhat.com> 11.1.1-2
b9880e
- update from releases/gcc-11-branch
b9880e
  - PRs c++/98032, c++/100319, c++/100362, c/100450, fortran/100274,
b9880e
	ipa/100308, libgomp/100352, libstdc++/99006, libstdc++/99453,
b9880e
	libstdc++/100259, libstdc++/100298, libstdc++/100384,
b9880e
	rtl-optimization/84878, rtl-optimization/100225,
b9880e
	rtl-optimization/100230, rtl-optimization/100263,
b9880e
	rtl-optimization/100411, target/99988, target/100217, target/100232,
b9880e
	target/100236, target/100270, target/100305, target/100311,
b9880e
	target/100375, target/100402, tree-optimization/96513,
b9880e
	tree-optimization/100253, tree-optimization/100278,
b9880e
	tree-optimization/100329, tree-optimization/100414
b9880e
- fix build with removed linux/cyclades.h header (PR sanitizer/100379)
b9880e
- fix up mausezahn miscompilation (#1958887, PR tree-optimization/100566)
b9880e
b9880e
* Wed Apr 28 2021 Jakub Jelinek <jakub@redhat.com> 11.1.1-1
b9880e
- update from releases/gcc-11-branch
b9880e
  - GCC 11.1 release
b9880e
  - PRs c++/93383, c++/95291, c++/96380, c++/99200, c++/99683, c++/100161,
b9880e
	debug/100255, fortran/100154, fortran/100218, libstdc++/100290,
b9880e
	rtl-optimization/100254, target/98952, target/100200,
b9880e
	tree-optimization/100239
b9880e
- fix ICE in aarch64_add_offset_1_temporaries (PR target/100302)
b9880e
b9880e
* Fri Apr 23 2021 Jakub Jelinek <jakub@redhat.com> 11.0.1-0.7
b9880e
- update from trunk and releases/gcc-11 branch
b9880e
  - GCC 11.1-rc2
b9880e
  - PRs libstdc++/100179, target/100182
b9880e
b9880e
* Thu Apr 22 2021 Jakub Jelinek <jakub@redhat.com> 11.0.1-0.6
b9880e
- update from trunk and releases/gcc-11 branch
b9880e
  - GCC 11.1-rc1
b9880e
  - PRs ada/99360, c++/97536, c/100143, d/98058, d/98457, d/98494, d/98584,
b9880e
	d/99794, demangler/100177, fortran/100110, libstdc++/95983,
b9880e
	libstdc++/100146, libstdc++/100164, preprocessor/100142,
b9880e
	rtl-optimization/99927, target/100108, testsuite/100176,
b9880e
	tree-optimization/100081
b9880e
- fix a cprop -fcompare-debug bug (PR rtl-optimization/100148)
b9880e
b9880e
* Sun Apr 18 2021 Jakub Jelinek <jakub@redhat.com> 11.0.1-0.5
b9880e
- update from trunk
b9880e
  - PRs analyzer/98599, analyzer/99042, analyzer/99212, analyzer/99774,
b9880e
	analyzer/99886, analyzer/99906, analyzer/100011, c++/41723, c++/49951,
b9880e
	c++/52202, c++/52625, c++/58123, c++/80456, c++/83476, c++/88742,
b9880e
	c++/90215, c++/90479, c++/90674, c++/91241, c++/91849, c++/91933,
b9880e
	c++/92918, c++/93085, c++/93295, c++/93314, c++/93867, c++/94529,
b9880e
	c++/95317, c++/95486, c++/95870, c++/96311, c++/96673, c++/96873,
b9880e
	c++/97121, c++/97134, c++/97679, c++/97974, c++/98440, c++/98800,
b9880e
	c++/98852, c++/99008, c++/99066, c++/99118, c++/99180, c++/99201,
b9880e
	c++/99380, c++/99478, c++/99700, c++/99803, c++/99806, c++/99833,
b9880e
	c++/99844, c++/99850, c++/99859, c++/99874, c++/99885, c++/99899,
b9880e
	c++/99901, c++/99961, c++/99994, c++/100006, c++/100032, c++/100054,
b9880e
	c++/100078, c++/100079, c++/100091, c++/100101, c++/100111, c/98852,
b9880e
	c/99420, c/99972, c/99990, d/99812, d/99914, d/99917, debug/99830,
b9880e
	fortran/63797, fortran/99307, fortran/99817, fortran/100018,
b9880e
	fortran/100094, jit/100096, libfortran/78314, libgomp/99984,
b9880e
	libstdc++/96657, libstdc++/99402, libstdc++/99433, libstdc++/99805,
b9880e
	libstdc++/99985, libstdc++/99995, libstdc++/100044, libstdc++/100060,
b9880e
	lto/98599, lto/99849, lto/99857, middle-end/55288, middle-end/84877,
b9880e
	middle-end/84991, middle-end/84992, middle-end/86058,
b9880e
	middle-end/90779, middle-end/98088, middle-end/99883,
b9880e
	middle-end/99989, preprocessor/99446, rtl-optimization/98601,
b9880e
	rtl-optimization/98689, rtl-optimization/99596,
b9880e
	rtl-optimization/99905, rtl-optimization/99929,
b9880e
	rtl-optimization/100066, sanitizer/99877, sanitizer/100114,
b9880e
	target/87763, target/99246, target/99647, target/99648, target/99748,
b9880e
	target/99767, target/99781, target/99872, target/100028,
b9880e
	target/100048, target/100056, target/100067, target/100075,
b9880e
	testsuite/99955, testsuite/100071, testsuite/100073,
b9880e
	tree-optimization/82800, tree-optimization/97513,
b9880e
	tree-optimization/98736, tree-optimization/99873,
b9880e
	tree-optimization/99880, tree-optimization/99924,
b9880e
	tree-optimization/99947, tree-optimization/99954,
b9880e
	tree-optimization/100053
b9880e
- for %%{rhel} == 9, default to -march=z14 -mtune=z15 on s390x and
b9880e
  to -mcpu=power9 -mtune=power9 on ppc64le
b9880e
b9880e
* Fri Apr  9 2021 Marek Polacek <polacek@redhat.com> 11.0.1-0.3.1
b9880e
- for %%{rhel} == 9, default to -march=z14 -mtune=z15 on s390x and
b9880e
  to -mcpu=power9 -mtune=power9 on ppc64le
b9880e
b9880e
* Mon Apr  5 2021 Jakub Jelinek <jakub@redhat.com> 11.0.1-0.4
b9880e
- update from trunk
b9880e
  - PRs ada/99802, analyzer/93695, analyzer/99044, analyzer/99716,
b9880e
	analyzer/99771, bootstrap/98860, c++/90664, c++/91217, c++/91416,
b9880e
	c++/94751, c++/97900, c++/97938, c++/98352, c++/99331, c++/99445,
b9880e
	c++/99565, c++/99583, c++/99584, c++/99586, c++/99643, c++/99672,
b9880e
	c++/99705, c++/99745, c++/99790, c++/99815, c++/99831, c++/99869,
b9880e
	d/91595, d/99691, debug/99334, fortran/99369, fortran/99602,
b9880e
	fortran/99651, fortran/99818, fortran/99840, ipa/98265, ipa/99122,
b9880e
	ipa/99466, ipa/99751, libstdc++/99533, lto/99447, middle-end/65182,
b9880e
	rtl-optimization/97141, rtl-optimization/98726,
b9880e
	rtl-optimization/99863, target/96974, target/97653, target/98119,
b9880e
	target/98136, target/98209, target/99037, target/99133, target/99216,
b9880e
	target/99555, target/99718, target/99724, target/99727, target/99744,
b9880e
	target/99753, target/99766, target/99773, target/99786, target/99808,
b9880e
	target/99813, target/99820, target/99822, testsuite/98125,
b9880e
	tree-optimization/48483, tree-optimization/55060,
b9880e
	tree-optimization/59970, tree-optimization/61112,
b9880e
	tree-optimization/61677, tree-optimization/61869,
b9880e
	tree-optimization/96573, tree-optimization/96974,
b9880e
	tree-optimization/97009, tree-optimization/98268,
b9880e
	tree-optimization/99726, tree-optimization/99746,
b9880e
	tree-optimization/99777, tree-optimization/99807,
b9880e
	tree-optimization/99824, tree-optimization/99825,
b9880e
	tree-optimization/99856, tree-optimization/99863,
b9880e
	tree-optimization/99882
b9880e
b9880e
* Wed Mar 24 2021 Jakub Jelinek <jakub@redhat.com> 11.0.1-0.3
b9880e
- update from trunk
b9880e
  - PRs analyzer/99614, c++/99239, c++/99283, c++/99318, c++/99425, c++/99456,
b9880e
	c++/99480, c++/99687, c/99588, fortran/93660, fortran/99688,
b9880e
	rtl-optimization/99680, target/97252, target/97926, target/98914,
b9880e
	target/99540, target/99581, target/99652, target/99660, target/99661,
b9880e
	target/99663, target/99679, target/99702, target/99704, target/99733,
b9880e
	tree-optimization/99296, tree-optimization/99656,
b9880e
	tree-optimization/99694, tree-optimization/99721
b9880e
b9880e
* Fri Mar 19 2021 Jakub Jelinek <jakub@redhat.com> 11.0.1-0.2
b9880e
- update from trunk
b9880e
  - PRs c++/90448, c++/96268, c++/96749, c++/97973, c++/98480, c++/98704,
b9880e
	c++/99047, c++/99108, c++/99238, c++/99248, c++/99285, c++/99423,
b9880e
	c++/99436, c++/99459, c++/99472, c++/99496, c++/99500, c++/99507,
b9880e
	c++/99508, c++/99509, c++/99528, c++/99601, c++/99613, c++/99617,
b9880e
	fortran/49278, fortran/96983, fortran/97927, fortran/98858,
b9880e
	fortran/99125, fortran/99205, fortran/99345, fortran/99514,
b9880e
	fortran/99545, ipa/99517, libstdc++/99172, libstdc++/99341,
b9880e
	libstdc++/99413, libstdc++/99536, libstdc++/99537, middle-end/97631,
b9880e
	middle-end/98266, middle-end/99502, middle-end/99641, objc++/49070,
b9880e
	sanitizer/98920, target/98092, target/98959, target/99070,
b9880e
	target/99094, target/99102, target/99422, target/99437, target/99454,
b9880e
	target/99463, target/99464, target/99492, target/99504, target/99542,
b9880e
	target/99563, target/99592, target/99600, testsuite/97680,
b9880e
	testsuite/98245, testsuite/99292, testsuite/99498, testsuite/99626,
b9880e
	testsuite/99636, tree-optimization/98834, tree-optimization/99305,
b9880e
	tree-optimization/99489, tree-optimization/99510,
b9880e
	tree-optimization/99523, tree-optimization/99544
b9880e
  - fix ARM ICE in neon_output_shift_immediate (#1922599, PR target/99593)
b9880e
- avoid false positive aarch64 -Wpsabi notes in some cases (PR target/91710)
b9880e
- fix a -fcompare-debug failure caused by C FE bug (PR debug/99230)
b9880e
- fix up -gdwarf-5 -gsplit-dwarf ranges handling (PR debug/99490)
b9880e
- fix up handling of > 64 bit constants in dwarf2out (PR debug/99562,
b9880e
  PR debug/66728)
b9880e
- reject invalid C++ structured bindings that need reference to void
b9880e
  (PR c++/99650)
b9880e
- include private isl 0.18 in the package instead of relying on old
b9880e
  distro version
b9880e
b9880e
* Sun Mar  7 2021 Jakub Jelinek <jakub@redhat.com> 11.0.1-0.1
b9880e
- update from trunk
b9880e
  - PRs ada/98996, ada/99020, ada/99095, ada/99264, analyzer/96374,
b9880e
	analyzer/99193, bootstrap/92002, bootstrap/98590, c++/82959,
b9880e
	c++/88146, c++/90333, c++/94521, c++/95451, c++/95615, c++/95616,
b9880e
	c++/95675, c++/95822, c++/96078, c++/96330, c++/96443, c++/96474,
b9880e
	c++/96960, c++/97034, c++/97587, c++/98118, c++/98318, c++/98810,
b9880e
	c++/98990, c++/99009, c++/99103, c++/99120, c++/99166, c++/99170,
b9880e
	c++/99176, c++/99213, c++/99245, c++/99251, c++/99287, c++/99294,
b9880e
	c++/99344, c++/99362, c++/99365, c++/99374, c++/99377, c++/99389,
b9880e
	c/99137, c/99275, c/99304, c/99323, c/99324, c/99325, c/99363,
b9880e
	d/99337, debug/66668, debug/99090, debug/99319, fortran/57871,
b9880e
	fortran/99300, fortran/99303, fortran/99355, gcov-profile/97461,
b9880e
	gcov-profile/99105, gcov-profile/99385, gcov-profile/99406, ipa/98078,
b9880e
	ipa/98338, libbacktrace/98818, libfortran/81986, libfortran/99218,
b9880e
	libgomp/98738, libstdc++/99265, libstdc++/99270, libstdc++/99301,
b9880e
	libstdc++/99382, libstdc++/99396, middle-end/93235, middle-end/94655,
b9880e
	middle-end/95757, middle-end/96963, middle-end/97172,
b9880e
	middle-end/97855, middle-end/99276, middle-end/99281,
b9880e
	middle-end/99295, middle-end/99322, other/99288,
b9880e
	rtl-optimization/99376, target/44107, target/48097, target/95798,
b9880e
	target/98996, target/99085, target/99234, target/99271, target/99279,
b9880e
	target/99313, target/99321, target/99381, testsuite/99233,
b9880e
	tree-optimization/80635, tree-optimization/99253
b9880e
- fix debug info for __fp16 constants (PR debug/99388)
b9880e
b9880e
* Thu Feb 25 2021 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.20
b9880e
- update from trunk
b9880e
  - PRs analyzer/94596, analyzer/98969, analyzer/99196, c++/94034, c++/94546,
b9880e
	c++/95468, c++/95888, c++/96251, c++/96926, c++/97246, c++/97582,
b9880e
	c++/97742, c++/98718, c++/98741, c++/98988, c++/99023, c++/99030,
b9880e
	c++/99031, c++/99033, c++/99035, c++/99039, c++/99040, c++/99062,
b9880e
	c++/99063, c++/99071, c++/99072, c++/99074, c++/99116, c++/99132,
b9880e
	c++/99150, c++/99153, c++/99174, c++/99208, c/97172, c/99055, c/99136,
b9880e
	c/99224, debug/96997, debug/98755, fortran/98342, fortran/98686,
b9880e
	fortran/98897, fortran/98979, fortran/99010, fortran/99027,
b9880e
	fortran/99043, fortran/99060, fortran/99111, fortran/99124,
b9880e
	fortran/99146, fortran/99171, fortran/99206, fortran/99226,
b9880e
	inline-asm/98096, inline-asm/99123, ipa/97346, ipa/99003, ipa/99029,
b9880e
	ipa/99034, jit/99126, libfortran/95647, libfortran/98825,
b9880e
	libgcc/99236, libstdc++/88881, libstdc++/97549, libstdc++/98389,
b9880e
	libstdc++/99058, libstdc++/99077, libstdc++/99096, libstdc++/99181,
b9880e
	libstdc++/99261, middle-end/38474, middle-end/99007, middle-end/99109,
b9880e
	middle-end/99122, preprocessor/96391, rtl-optimization/96264,
b9880e
	rtl-optimization/98439, rtl-optimization/98791,
b9880e
	rtl-optimization/98872, rtl-optimization/99054, sanitizer/99106,
b9880e
	sanitizer/99168, target/85074, target/96166, target/97417,
b9880e
	target/98491, target/98657, target/98931, target/98998, target/99025,
b9880e
	target/99041, target/99100, target/99104, target/99113, target/99134,
b9880e
	target/99157, testsuite/99173, translation/99167,
b9880e
	tree-optimization/38474, tree-optimization/92879,
b9880e
	tree-optimization/98772, tree-optimization/99002,
b9880e
	tree-optimization/99024, tree-optimization/99026,
b9880e
	tree-optimization/99079, tree-optimization/99142,
b9880e
	tree-optimization/99149, tree-optimization/99165,
b9880e
	tree-optimization/99204, tree-optimization/99220,
b9880e
	tree-optimization/99225
b9880e
b9880e
* Wed Feb 10 2021 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.19
b9880e
- update from trunk
b9880e
  - PRs analyzer/93355, analyzer/96374, analyzer/98575, analyzer/98918,
b9880e
	c++/20408, c++/84494, c++/90926, c++/95192, c++/96199, c++/96462,
b9880e
	c++/96905, c++/97804, c++/97878, c++/98295, c++/98326, c++/98355,
b9880e
	c++/98531, c++/98570, c++/98717, c++/98802, c++/98835, c++/98899,
b9880e
	c++/98926, c++/98929, c++/98944, c++/98947, c++/98951, c++/98994,
b9880e
	c/97882, c/97932, d/98910, d/98921, debug/98656, driver/98943,
b9880e
	fortran/91862, fortran/98913, libstdc++/70303, libstdc++/99021,
b9880e
	lto/96591, lto/98912, lto/98971, middle-end/97172, middle-end/97487,
b9880e
	middle-end/97971, middle-end/98465, middle-end/98974,
b9880e
	middle-end/99004, preprocessor/98882, rtl-optimization/96015,
b9880e
	target/97510, target/98172, target/98537, target/98743, target/98957,
b9880e
	testsuite/98243, testsuite/98325, tree-optimization/97960,
b9880e
	tree-optimization/98287, tree-optimization/98499,
b9880e
	tree-optimization/98848, tree-optimization/98855,
b9880e
	tree-optimization/98863, tree-optimization/98928,
b9880e
	tree-optimization/98937, tree-optimization/99017
b9880e
b9880e
* Sat Jan 30 2021 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.18
b9880e
- update from trunk
b9880e
  - PRs ada/98228, bootstrap/98839, c++/33661, c++/88548, c++/94775,
b9880e
	c++/96137, c++/97474, c++/97566, c++/97874, c++/98463, c++/98646,
b9880e
	c++/98770, c++/98841, c++/98843, c++/98847, d/98806, debug/98331,
b9880e
	debug/98811, fortran/67539, fortran/70070, fortran/86470,
b9880e
	fortran/93924, fortran/93925, fortran/96843, fortran/98472,
b9880e
	fortran/98517, libstdc++/66414, lto/85574, middle-end/98726,
b9880e
	middle-end/98807, rtl-optimization/80960, rtl-optimization/97684,
b9880e
	rtl-optimization/98144, rtl-optimization/98863, sanitizer/98828,
b9880e
	target/97701, target/98730, target/98799, target/98827, target/98833,
b9880e
	target/98849, target/98853, testsuite/98771, testsuite/98870,
b9880e
	tree-optimization/97260, tree-optimization/97627,
b9880e
	tree-optimization/98854, tree-optimization/98866
b9880e
b9880e
* Sat Jan 23 2021 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.17
b9880e
- update from trunk
b9880e
  - PRs ada/98740, c++/41437, c++/58993, c++/71879, c++/82613, c++/95434,
b9880e
	c++/96623, c++/97399, c++/97966, c++/98333, c++/98530, c++/98545,
b9880e
	c++/98624, c++/98659, c++/98744, fortran/96320, fortran/98476,
b9880e
	fortran/98565, fortran/98757, fortran/98763, gcov-profile/98739,
b9880e
	ipa/97673, ipa/98330, ipa/98690, middle-end/98664, middle-end/98773,
b9880e
	middle-end/98793, rtl-optimization/92294, rtl-optimization/98694,
b9880e
	rtl-optimization/98722, rtl-optimization/98777, sanitizer/95693,
b9880e
	target/79251, target/96372, target/96891, target/98065, target/98093,
b9880e
	target/98348, target/98636, testsuite/97301, testsuite/98241,
b9880e
	testsuite/98795, tree-optimization/47059, tree-optimization/90248,
b9880e
	tree-optimization/96674, tree-optimization/98255,
b9880e
	tree-optimization/98535, tree-optimization/98758,
b9880e
	tree-optimization/98766, tree-optimization/98786
b9880e
  - ensure for empty CUs -gdwarf-5 emits at least the required 0th directory
b9880e
    and filename entry in the .debug_line section (#1919243, PR debug/98796)
b9880e
- fix aarch64 bug where emitted ubfix insn can't be assembled
b9880e
  (PR target/98681)
b9880e
b9880e
* Wed Jan 20 2021 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.16
b9880e
- fix DWARF5 -g -flto -ffat-lto-objects, so that LTO sections can be stripped
b9880e
  off later (PR debug/98765)
b9880e
- fix GOMP_task caller stack corruption on s390x
b9880e
- libgccjit DWARF5 fixes (PR debug/98751)
b9880e
b9880e
* Tue Jan 19 2021 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.15
b9880e
- update from trunk
b9880e
  - PRs debug/98708, debug/98716, ipa/98222, libstdc++/98725, target/97847,
b9880e
	testsuite/97299, testsuite/97494, testsuite/97987,
b9880e
	tree-optimization/96271
b9880e
  - fix miscompilation of portable signed multiplication overflow check
b9880e
    (#1916576, PR tree-optimization/98727)
b9880e
  - switch to DWARF 5 by default
b9880e
- fix PRs c++/98672, c++/98687, c++/98742, middle-end/98638,
b9880e
	  tree-optimization/98721
b9880e
b9880e
* Sat Jan 16 2021 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.14
b9880e
- update from trunk
b9880e
  - PRs ada/98595, analyzer/98679, bootstrap/98696, c++/63707, c++/98231,
b9880e
	c++/98372, c++/98538, c++/98591, c++/98626, c++/98642, fortran/98661,
b9880e
	ipa/98652, jit/98586, libgomp/65099, libstdc++/98466, libstdc++/98471,
b9880e
	preprocessor/95253, target/70454, target/71233, target/88836,
b9880e
	target/95905, target/96938, target/98667, target/98671, target/98676,
b9880e
	testsuite/96098, testsuite/96147, tree-optimization/92645,
b9880e
	tree-optimization/96376, tree-optimization/96669,
b9880e
	tree-optimization/96681, tree-optimization/96688,
b9880e
	tree-optimization/96691, tree-optimization/98455,
b9880e
	tree-optimization/98597, tree-optimization/98640,
b9880e
	tree-optimization/98674, tree-optimization/98685
b9880e
  - fix up pmovzx permutation SSE4.1 patterns (#1916240, PR target/98670)
b9880e
b9880e
* Wed Jan 13 2021 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.13
b9880e
- update from trunk
b9880e
  - PRs analyzer/98628, c++/97284, c++/98481, c++/98556, c++/98611, c++/98620,
b9880e
	c/98592, debug/97714, jit/98615, libstdc++/98613,
b9880e
	rtl-optimization/98603, target/97875, target/97969, target/98612,
b9880e
	testsuite/98225, testsuite/98602, tree-optimization/91403,
b9880e
	tree-optimization/95731, tree-optimization/95852,
b9880e
	tree-optimization/95867, tree-optimization/98526,
b9880e
	tree-optimization/98550, tree-optimization/98629
b9880e
  - fix ICEs in print_mem_ref (#1915400, #1915437, #1915781, PR c/98597)
b9880e
b9880e
* Sat Jan  9 2021 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.12
b9880e
- update from trunk
b9880e
  - PRs analyzer/97072, analyzer/97074, analyzer/98073, analyzer/98223,
b9880e
	analyzer/98293, analyzer/98564, analyzer/98580, bootstrap/98324,
b9880e
	bootstrap/98506, c++/82099, c++/95768, c++/96045, c++/96504,
b9880e
	c++/97597, c++/98206, c++/98305, c++/98316, c++/98329, c++/98332,
b9880e
	c++/98353, c++/98413, c++/98441, c++/98469, c++/98515, c++/98551,
b9880e
	c/98029, d/98427, fortran/83118, fortran/93701, fortran/93794,
b9880e
	fortran/93833, fortran/97612, fortran/97694, fortran/97723,
b9880e
	fortran/98022, fortran/98458, libstdc++/98384, middle-end/98160,
b9880e
	middle-end/98578, other/98437, rtl-optimization/97144,
b9880e
	rtl-optimization/97978, rtl-optimization/98214,
b9880e
	rtl-optimization/98334, rtl-optimization/98403, target/89057,
b9880e
	target/96793, target/97269, target/98461, target/98482, target/98495,
b9880e
	target/98521, target/98522, target/98567, target/98585,
b9880e
	testsuite/98489, testsuite/98566, tree-optimization/56719,
b9880e
	tree-optimization/94785, tree-optimization/94802,
b9880e
	tree-optimization/94994, tree-optimization/95401,
b9880e
	tree-optimization/95582, tree-optimization/95771,
b9880e
	tree-optimization/96239, tree-optimization/96782,
b9880e
	tree-optimization/96928, tree-optimization/96930,
b9880e
	tree-optimization/98282, tree-optimization/98291,
b9880e
	tree-optimization/98302, tree-optimization/98308,
b9880e
	tree-optimization/98371, tree-optimization/98381,
b9880e
	tree-optimization/98393, tree-optimization/98428,
b9880e
	tree-optimization/98464, tree-optimization/98474,
b9880e
	tree-optimization/98513, tree-optimization/98514,
b9880e
	tree-optimization/98516, tree-optimization/98544,
b9880e
	tree-optimization/98560, tree-optimization/98568
b9880e
b9880e
* Wed Dec 23 2020 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.11
b9880e
- update from trunk
b9880e
  - PRs bootstrap/98300, bootstrap/98380, bootstrap/98412, c++/67343,
b9880e
	c++/93480, c++/96840, c++/98340, c++/98343, c++/98353, c++/98383,
b9880e
	c/98047, c/98260, d/98067, fortran/83118, fortran/92587,
b9880e
	fortran/96012, fortran/98284, fortran/98307, go/98402,
b9880e
	libstdc++/46447, libstdc++/93151, libstdc++/96083, libstdc++/98319,
b9880e
	libstdc++/98344, libstdc++/98370, libstdc++/98374, libstdc++/98377,
b9880e
	middle-end/98366, other/98400, other/98409, rtl-optimization/98271,
b9880e
	rtl-optimization/98276, rtl-optimization/98289,
b9880e
	rtl-optimization/98347, sanitizer/97868, target/96793, target/98146,
b9880e
	target/98177, target/98280, tree-optimization/96239,
b9880e
	tree-optimization/97750, tree-optimization/98272,
b9880e
	tree-optimization/98279, tree-optimization/98378,
b9880e
	tree-optimization/98407
b9880e
b9880e
* Thu Dec 17 2020 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.10
b9880e
- apply workaround for profiledbootstrap x86_64 failure
b9880e
- put g++-mapper-server into the right directory
b9880e
b9880e
* Wed Dec 16 2020 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.8
b9880e
- update from trunk
b9880e
  - PRs ada/98230, bootstrap/98188, c++/57111, c++/59238, c++/68451,
b9880e
	c++/78173, c++/91506, c++/93083, c++/96299, c++/97093, c++/97517,
b9880e
	c++/98043, c++/98103, c++/98122, c++/98126, c++/98130, c++/98187,
b9880e
	c++/98193, c/97981, c/98200, d/98277, fortran/90207, fortran/98016,
b9880e
	fortran/98022, gcov-profile/98273, libstdc++/98108, libstdc++/98226,
b9880e
	lto/98275, middle-end/94600, middle-end/98160, middle-end/98166,
b9880e
	middle-end/98183, middle-end/98190, middle-end/98205,
b9880e
	middle-end/98264, rtl-optimization/97092, rtl-optimization/97421,
b9880e
	rtl-optimization/98212, rtl-optimization/98229, sanitizer/98204,
b9880e
	target/58901, target/66791, target/92469, target/94440, target/95294,
b9880e
	target/96226, target/96470, target/97865, target/97872, target/98100,
b9880e
	target/98147, target/98152, target/98161, target/98162, target/98219,
b9880e
	target/98274, testsuite/95900, testsuite/98123, testsuite/98156,
b9880e
	testsuite/98239, testsuite/98240, testsuite/98242, testsuite/98244,
b9880e
	tree-optimization/95582, tree-optimization/96094,
b9880e
	tree-optimization/96232, tree-optimization/96272,
b9880e
	tree-optimization/96344, tree-optimization/96685,
b9880e
	tree-optimization/97559, tree-optimization/97929,
b9880e
	tree-optimization/98069, tree-optimization/98113,
b9880e
	tree-optimization/98117, tree-optimization/98137,
b9880e
	tree-optimization/98169, tree-optimization/98174,
b9880e
	tree-optimization/98180, tree-optimization/98182,
b9880e
	tree-optimization/98191, tree-optimization/98192,
b9880e
	tree-optimization/98199, tree-optimization/98211,
b9880e
	tree-optimization/98213, tree-optimization/98235,
b9880e
	tree-optimization/98256
b9880e
  - C++20 modules support
b9880e
  - fix up __patchable_function_entries handling when gcc is configured
b9880e
    against recent binutils (#1907945)
b9880e
- fix up handling of non-memory VIEW_CONVERT_EXPRs in PRE
b9880e
  (PR tree-optimization/98282)
b9880e
b9880e
* Fri Dec  4 2020 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.7
b9880e
- update from trunk
b9880e
  - PRs bootstrap/97983, c++/80780, c++/90629, c++/93093, c++/97187,
b9880e
	c++/97947, c++/97975, c++/97993, c++/98019, c++/98054, c++/98072,
b9880e
	c++/98104, c++/98107, c++/98115, c++/98116, c/65455, c/92935, c/97880,
b9880e
	c/98087, d/87788, d/87818, d/98025, debug/97989, fortran/95342,
b9880e
	fortran/98010, fortran/98011, fortran/98013, ipa/88702, ipa/98057,
b9880e
	ipa/98075, jit/97867, libgcc/97543, libgcc/97643, libstdc++/65480,
b9880e
	libstdc++/68735, libstdc++/93121, libstdc++/98001, libstdc++/98003,
b9880e
	middle-end/89428, middle-end/92936, middle-end/92940,
b9880e
	middle-end/93195, middle-end/93197, middle-end/94527,
b9880e
	middle-end/97373, middle-end/97595, middle-end/98070,
b9880e
	middle-end/98082, middle-end/98099, other/98027, plugins/98059,
b9880e
	preprocessor/97602, rtl-optimization/97459, rtl-optimization/97777,
b9880e
	rtl-optimization/97954, rtl-optimization/98037, target/96607,
b9880e
	target/96906, target/97642, target/97770, target/97939, target/98063,
b9880e
	target/98079, target/98086, testsuite/98002, testsuite/98036,
b9880e
	testsuite/98085, tree-optimization/14799, tree-optimization/88702,
b9880e
	tree-optimization/96679, tree-optimization/96708,
b9880e
	tree-optimization/97630, tree-optimization/97953,
b9880e
	tree-optimization/97979, tree-optimization/97997,
b9880e
	tree-optimization/98024, tree-optimization/98048,
b9880e
	tree-optimization/98064, tree-optimization/98066,
b9880e
	tree-optimization/98084
b9880e
b9880e
* Thu Nov 26 2020 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.6
b9880e
- update from trunk
b9880e
  - PRs bootstrap/94982, bootstrap/97622, bootstrap/97933, c++/97899, c/97958,
b9880e
	fortran/85796, libstdc++/67791, libstdc++/97935, libstdc++/97936,
b9880e
	libstdc++/97944, middle-end/97943, middle-end/97956,
b9880e
	rtl-optimization/95862, target/91816, target/97534, target/97950,
b9880e
	tree-optimization/96929, tree-optimization/97849,
b9880e
	tree-optimization/97964
b9880e
b9880e
* Tue Nov 24 2020 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.5
b9880e
- update from trunk
b9880e
  - PRs c++/94695, c++/97427, c++/97839, c++/97846, c++/97881, c++/97904,
b9880e
	c/95630, d/97889, libstdc++/97948, tree-optimization/95853
b9880e
b9880e
* Sat Nov 21 2020 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.4
b9880e
- update from trunk
b9880e
  - PRs ada/97805, ada/97859, analyzer/97668, analyzer/97893, bootstrap/57076,
b9880e
	bootstrap/97666, bootstrap/97857, c++/25814, c++/52830, c++/63287,
b9880e
	c++/67453, c++/78209, c++/81660, c++/87765, c++/88115, c++/88982,
b9880e
	c++/89565, c++/90799, c++/91318, c++/93107, c++/93907, c++/95808,
b9880e
	c++/97388, c++/97412, c++/97453, c++/97479, c++/97518, c++/97523,
b9880e
	c++/97632, c++/97663, c++/97670, c++/97675, c++/97762, c++/97790,
b9880e
	c++/97871, c++/97877, c++/97895, c++/97905, c++/97918, c/90628,
b9880e
	c/97748, c/97860, d/97644, d/97842, d/97843, debug/97060, debug/97599,
b9880e
	debug/97718, driver/97574, fortran/90111, fortran/92793,
b9880e
	fortran/94358, fortran/95847, fortran/97652, fortran/97655,
b9880e
	fortran/97768, fortran/97782, ipa/97578, ipa/97660, ipa/97695,
b9880e
	ipa/97698, ipa/97816, jit/87291, libstdc++/55394, libstdc++/66146,
b9880e
	libstdc++/83938, libstdc++/84323, libstdc++/88101, libstdc++/92285,
b9880e
	libstdc++/92546, libstdc++/93421, libstdc++/93456, libstdc++/94971,
b9880e
	libstdc++/95989, libstdc++/96269, libstdc++/96958, libstdc++/97415,
b9880e
	libstdc++/97600, libstdc++/97613, libstdc++/97719, libstdc++/97729,
b9880e
	libstdc++/97731, libstdc++/97758, libstdc++/97798, libstdc++/97828,
b9880e
	libstdc++/97869, lto/97290, lto/97508, middle-end/85811,
b9880e
	middle-end/95673, middle-end/97267, middle-end/97556,
b9880e
	middle-end/97579, middle-end/97840, middle-end/97862,
b9880e
	middle-end/97879, objc/77404, objc/90707, objc/97854, other/97911,
b9880e
	pch/86674, pch/97593, preprocessor/97858, rtl-optimization/92180,
b9880e
	rtl-optimization/97705, sanitizer/95634, target/31799, target/85486,
b9880e
	target/91489, target/93449, target/96307, target/96770, target/96791,
b9880e
	target/96933, target/96967, target/96998, target/97140, target/97194,
b9880e
	target/97205, target/97326, target/97528, target/97532, target/97540,
b9880e
	target/97638, target/97682, target/97685, target/97715, target/97726,
b9880e
	target/97727, target/97730, target/97870, target/97873,
b9880e
	testsuite/80219, testsuite/85303, testsuite/97117, testsuite/97688,
b9880e
	testsuite/97788, testsuite/97797, testsuite/97803,
b9880e
	tree-optimization/80928, tree-optimization/83072,
b9880e
	tree-optimization/91029, tree-optimization/93781,
b9880e
	tree-optimization/94406, tree-optimization/96671,
b9880e
	tree-optimization/96789, tree-optimization/97223,
b9880e
	tree-optimization/97424, tree-optimization/97558,
b9880e
	tree-optimization/97609, tree-optimization/97623,
b9880e
	tree-optimization/97626, tree-optimization/97633,
b9880e
	tree-optimization/97650, tree-optimization/97678,
b9880e
	tree-optimization/97690, tree-optimization/97693,
b9880e
	tree-optimization/97706, tree-optimization/97709,
b9880e
	tree-optimization/97721, tree-optimization/97725,
b9880e
	tree-optimization/97732, tree-optimization/97733,
b9880e
	tree-optimization/97736, tree-optimization/97737,
b9880e
	tree-optimization/97741, tree-optimization/97746,
b9880e
	tree-optimization/97753, tree-optimization/97760,
b9880e
	tree-optimization/97761, tree-optimization/97764,
b9880e
	tree-optimization/97765, tree-optimization/97767,
b9880e
	tree-optimization/97769, tree-optimization/97780,
b9880e
	tree-optimization/97806, tree-optimization/97812,
b9880e
	tree-optimization/97830, tree-optimization/97835,
b9880e
	tree-optimization/97838, tree-optimization/97886,
b9880e
	tree-optimization/97888, tree-optimization/97897,
b9880e
	tree-optimization/97901
b9880e
- add BuildRequires: make and Requires: make, the latter for -flto reasons
b9880e
b9880e
* Thu Oct 29 2020 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.3
b9880e
- update from trunk
b9880e
  - PRs ada/97504, analyzer/96608, analyzer/97489, analyzer/97514,
b9880e
	analyzer/97568, analyzer/97608, bootstrap/97451, c++/82239, c++/86773,
b9880e
	c++/91741, c++/94799, c++/95132, c++/96241, c++/96575, c++/96675,
b9880e
	c++/96742, c++/97328, c++/97438, c++/97511, c++/97573, c/94722,
b9880e
	c/97463, fortran/45516, fortran/97454, gcov-profile/97461, ipa/97445,
b9880e
	ipa/97576, ipa/97586, libstdc++/94268, libstdc++/95592,
b9880e
	libstdc++/95609, libstdc++/95917, libstdc++/96713, libstdc++/97512,
b9880e
	libstdc++/97570, lto/96680, lto/97524, middle-end/92942,
b9880e
	middle-end/97521, middle-end/97552, rtl-optimization/97249,
b9880e
	rtl-optimization/97439, rtl-optimization/97497, sanitizer/97414,
b9880e
	target/87767, target/95151, target/95458, target/97360, target/97502,
b9880e
	target/97506, target/97535, testsuite/81690, testsuite/97590,
b9880e
	tree-optimization/66552, tree-optimization/97164,
b9880e
	tree-optimization/97360, tree-optimization/97456,
b9880e
	tree-optimization/97457, tree-optimization/97466,
b9880e
	tree-optimization/97467, tree-optimization/97486,
b9880e
	tree-optimization/97488, tree-optimization/97496,
b9880e
	tree-optimization/97500, tree-optimization/97501,
b9880e
	tree-optimization/97503, tree-optimization/97505,
b9880e
	tree-optimization/97515, tree-optimization/97520,
b9880e
	tree-optimization/97538, tree-optimization/97539,
b9880e
	tree-optimization/97546, tree-optimization/97555,
b9880e
	tree-optimization/97560, tree-optimization/97567,
b9880e
	tree-optimization/97615
b9880e
- for ELN default to -march=x86-64-v2 for x86 64-bit compilation and
b9880e
  for s390x to -march=z13 -mtune=arch13
b9880e
b9880e
* Mon Oct 19 2020 Jakub Jelinek <jakub@redhat.com> 11.0.0-0.2
b9880e
- new package