--- gcc5.spec	2016-02-10 11:42:50.189256125 +0100
+++ gcc5.minimal.spec	2016-02-10 11:47:58.435107923 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package gcc5
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -14,80 +14,21 @@
 
 # Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
-# icecream 0
 
 
-# Ada currently fails to build on a few platforms, enable it only
-# on those that work
-%if %{suse_version} >= 1310
-%define ada_arch %ix86 x86_64 ppc ppc64 s390 ia64
-%else
-%define ada_arch %ix86 x86_64 ppc s390 ia64
-%endif
-
-%ifarch %ada_arch
-%define build_ada !0%{?building_libjava:1}%{?building_libffi:1}
-%else
-%define build_ada 0
-%endif
-
 %define quadmath_arch %ix86 x86_64 ia64
 %define tsan_arch x86_64
-%define asan_arch x86_64 %ix86 ppc ppc64 ppc64le %sparc %arm aarch64
-%define itm_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc
-%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %sparc m68k ia64
+%define asan_arch x86_64 %ix86 ppc ppc64 ppc64le %{sparc} %arm aarch64
+%define itm_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %{sparc}
+%define atomic_arch x86_64 %ix86 %arm aarch64 ppc ppc64 ppc64le s390 s390x %{sparc} m68k ia64
 %define lsan_arch x86_64
 %define ubsan_arch x86_64 %ix86 ppc ppc64 ppc64le %arm aarch64
-%if 0%{?build_libvtv:1}
-%define vtv_arch x86_64 %ix86
-%endif
 %define cilkrts_arch x86_64 %ix86
-%if %{suse_version} >= 1310
-%define mpx_arch x86_64 %ix86
-%endif
-
-# We don't want to build java
-%ifarch mips
-%define build_java 0
-%define build_libjava 0
-%else
-%define build_java 1
-%define build_libjava 0%{?building_libjava:1}%{?building_libffi:1}%{?building_testsuite:1}
-%endif
-
 %define build_cp 1
 %define build_fortran !0%{?building_libjava:1}%{?building_libffi:1}
 %define build_objc !0%{?building_libjava:1}%{?building_libffi:1}
 %define build_objcp !0%{?building_libjava:1}%{?building_libffi:1}
 %define build_go !0%{?building_libjava:1}%{?building_libffi:1}
-
-%if %{build_objcp}
-%define build_cp 1
-%define build_objc 1
-%endif
-
-%if %{build_libjava}
-%define build_cp 1
-%endif
-
-# For optional compilers only build C, C++, Fortran, Ada and Go
-%if 0%{?build_optional_compiler_languages:1}
-%define build_java 0
-%define build_libjava 0
-%define build_objc 0
-%define build_objcp 0
-%endif
-
-# Shared library SONAME versions
-%ifarch hppa
-%define libgcc_s 4
-%else
-%ifarch m68k
-%define libgcc_s 2
-%else
-%define libgcc_s 1
-%endif
-%endif
 %define libgcj_sover 16
 %define libgcj_bc_sover 1
 %define libffi_sover 4
@@ -107,7 +48,6 @@
 %define libgo_sover 7
 %define libmpx_sover 0
 %define libmpxwrappers_sover 0
-
 # Shared library package suffix
 # This is used for the "non-standard" set of libraries, the standard
 # being defined by %product_libs_gcc_ver, the GCC version that should
@@ -117,14 +57,12 @@
 # Individual shared libraries can be directed to be built from individual
 # gcc versions by defining %product_libs_gcc_ver_libgcc_s1 for example,
 # generally %product_libs_gcc_ver_%name%sover, similarly.
-
 %define itsme5 1
 %define plv_ %{!?product_libs_gcc_ver:5}%{?product_libs_gcc_ver}
 %define plv() %{expand:%%{!?itsme%{expand:%%{!?product_libs_gcc_ver_%{1}%{2}:%%{plv_}}%%{?product_libs_gcc_ver_%{1}%{2}}}:-gcc5}}
-
 %define libgcc_s_suffix %{plv libgcc_s %{libgcc_s}}
 # libgcj SONAME changes with every GCC version
-%define libgcj_suffix %nil
+%define libgcj_suffix %{nil}
 %define libgcj_bc_suffix %{plv libgcj_bc %{libgcj_bc_sover}}
 %define libffi_suffix %{plv libffi %{libffi_sover}}
 %define libgomp_suffix %{plv libgomp %{libgomp_sover}}
@@ -143,38 +81,75 @@
 %define libgo_suffix %{plv libgo %{libgo_sover}}
 %define libmpx_suffix %{plv libmpx %{libmpx_sover}}
 %define libmpxwrappers_suffix %{plv libmpxwrappers %{libmpx_sover}}
-
 # libFOO-devel package suffix
 %define libdevel_suffix -gcc5
-
-%if %{suse_version} >= 1220
-%define selfconflict() %1
+%define separate_bi32 0
+%define separate_bi64 0
+# Define two macros to trigger -32bit or -64bit package variants
+%define separate_biarch 0
+%define biarch_libjava 0
+%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
+%define gcc_version %(echo %{version} | sed 's/+.*//')
+%define gcc_dir_version %(echo %{gcc_version} | cut -d '.' -f 1)
+%define gcc_snapshot_revision %(echo %{version} | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
+%define binsuffix -5
+# Ada currently fails to build on a few platforms, enable it only
+# on those that work
+%if 0%{?suse_version} >= 1310
+%define ada_arch %ix86 x86_64 ppc ppc64 s390 ia64
 %else
-%define selfconflict() otherproviders(%1)
+%define ada_arch %ix86 x86_64 ppc s390 ia64
 %endif
-
-Name:           gcc5
-# With generated files in src we could drop the following
-BuildRequires:  bison
-BuildRequires:  flex
-BuildRequires:  gettext-devel
-%if %{suse_version} > 1220
-BuildRequires:  makeinfo
+%ifarch %{ada_arch}
+%define build_ada !0%{?building_libjava:1}%{?building_libffi:1}
 %else
-BuildRequires:  texinfo
+%define build_ada 0
 %endif
-# until here, but at least renaming and patching info files breaks this
-BuildRequires:  gcc-c++
-BuildRequires:  glibc-devel-32bit
-BuildRequires:  mpc-devel
-BuildRequires:  mpfr-devel
-BuildRequires:  perl
-BuildRequires:  zlib-devel
-%if %{suse_version} >= 1230
-BuildRequires:  isl-devel
+%if 0%{?build_libvtv:1}
+%define vtv_arch x86_64 %ix86
+%endif
+%if 0%{?suse_version} >= 1310
+%define mpx_arch x86_64 %ix86
+%endif
+# We don't want to build java
+%ifarch mips
+%define build_java 0
+%define build_libjava 0
+%else
+%define build_java 1
+%define build_libjava 0%{?building_libjava:1}%{?building_libffi:1}%{?building_testsuite:1}
+%endif
+%if %{build_objcp}
+%define build_cp 1
+%define build_objc 1
+%endif
+%if %{build_libjava}
+%define build_cp 1
+%endif
+# For optional compilers only build C, C++, Fortran, Ada and Go
+%if 0%{?build_optional_compiler_languages:1}
+%define build_java 0
+%define build_libjava 0
+%define build_objc 0
+%define build_objcp 0
+%endif
+# Shared library SONAME versions
+%ifarch hppa
+%define libgcc_s 4
+%else
+%ifarch m68k
+%define libgcc_s 2
+%else
+%define libgcc_s 1
+%endif
+%endif
+%if 0%{?suse_version} >= 1220
+%define selfconflict() %{1}
+%else
+%define selfconflict() otherproviders(%{1})
 %endif
 %if %{build_ada}
-%if %{suse_version} > 1330
+%if 0%{?suse_version} > 1330
 %define hostsuffix %{binsuffix}
 BuildRequires:  gcc5-ada
 %else
@@ -182,26 +157,6 @@
 BuildRequires:  gcc-ada
 %endif
 %endif
-%if 0%{?building_libjava:1}%{?building_testsuite:1}
-BuildRequires:  fastjar
-# For building the libstdc++ API reference
-BuildRequires:  doxygen
-BuildRequires:  graphviz
-%endif
-%if 0%{?building_libffi:1}
-BuildRequires:  pkg-config
-%endif
-%ifarch ia64
-BuildRequires:  libunwind-devel
-%endif
-%if 0%{?run_tests:1}
-BuildRequires:  dejagnu
-BuildRequires:  expect
-BuildRequires:  gdb
-%endif
-
-%define separate_bi32 0
-%define separate_bi64 0
 %ifarch ppc sparcv9
 # Beware, this does _not_ separate libgcj, as for that one multilibing
 # is inactive for the time being
@@ -210,9 +165,6 @@
 %ifarch x86_64 s390x ppc64 sparc64
 %define separate_bi32 1
 %endif
-
-# Define two macros to trigger -32bit or -64bit package variants
-%define separate_biarch 0
 %if %{separate_bi32}
 %define separate_biarch 1
 %define separate_biarch_suffix -32bit
@@ -221,64 +173,20 @@
 %define separate_biarch 1
 %define separate_biarch_suffix -64bit
 %endif
-
 %ifarch x86_64 ia64 s390x alpha ppc64 sparc64
 # 64-bit is primary build target
 %define build_primary_64bit 1
 %else
 %define build_primary_64bit 0
 %endif
-
-%define biarch_libjava 0
-
-%define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
-
-Url:            http://gcc.gnu.org/
+Name:           gcc5
 Version:        5.3.1+r231346
 Release:        0
-%define gcc_version %(echo %version | sed 's/+.*//')
-%define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
-%define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' | sed 's/+/-/')
-%define binsuffix -5
-
-%if !0%{?building_libjava:1}%{?building_libffi:1}%{?building_testsuite:1}
-Requires:       binutils
-Requires:       cpp5 = %{version}-%{release}
-Requires:       glibc-devel
-Requires:       libgcc_s%{libgcc_s} >= %{version}-%{release}
-Requires:       libgomp%{libgomp_sover} >= %{version}-%{release}
-%ifarch %asan_arch
-Requires:       libasan%{libasan_sover} >= %{version}-%{release}
-%endif
-%ifarch %tsan_arch
-Requires:       libtsan%{libtsan_sover} >= %{version}-%{release}
-%endif
-%ifarch %atomic_arch
-Requires:       libatomic%{libatomic_sover} >= %{version}-%{release}
-%endif
-%ifarch %itm_arch
-Requires:       libitm%{libitm_sover} >= %{version}-%{release}
-%endif
-%ifarch %cilkrts_arch
-Requires:       libcilkrts%{libcilkrts_sover} >= %{version}-%{release}
-%endif
-%ifarch %lsan_arch
-Requires:       liblsan%{liblsan_sover} >= %{version}-%{release}
-%endif
-%ifarch %ubsan_arch
-Requires:       libubsan%{libubsan_sover} >= %{version}-%{release}
-%endif
-%ifarch %vtv_arch
-Requires:       libvtv%{libvtv_sover} >= %{version}-%{release}
-%endif
-%ifarch %mpx_arch
-Requires:       libmpx%{libmpx_sover} >= %{version}-%{release}
-Requires:       libmpxwrappers%{libmpxwrappers_sover} >= %{version}-%{release}
-%endif
-Suggests:       gcc5-info gcc5-locale
-%endif
-
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
+#testpatch end
+Summary:        The GNU C Compiler and Support Files
+License:        GPL-3.0+
+Group:          Development/Languages/C and C++
+Url:            http://gcc.gnu.org/
 Source:         gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
 Source1:        change_spec
 Source2:        libffi-gcc5-rpmlintrc
@@ -287,9 +195,7 @@
 Source5:        README.First-for.SuSE.packagers
 Source6:        baselibs.conf
 Source7:        libgcj-gcc5-rpmlintrc
-
 #testpatch begin
-
 Patch1:         gcc-dir-version.patch
 Patch2:         gcc-add-defaultsspec.diff
 Patch3:         Wunprototyped-calls.diff
@@ -308,12 +214,80 @@
 Patch61:        gcc44-rename-info-files.patch
 # Some libgo patches
 Patch70:        gcc5-libgo-fix-certificates-lookup.patch
-
-#testpatch end
-
-Summary:        The GNU C Compiler and Support Files
-License:        GPL-3.0+
-Group:          Development/Languages/C and C++
+# With generated files in src we could drop the following
+BuildRequires:  bison
+BuildRequires:  flex
+# until here, but at least renaming and patching info files breaks this
+BuildRequires:  gcc-c++
+BuildRequires:  gettext-devel
+BuildRequires:  glibc-devel-32bit
+BuildRequires:  mpc-devel
+BuildRequires:  mpfr-devel
+BuildRequires:  perl
+BuildRequires:  zlib-devel
+BuildRoot:      %{_tmppath}/%{name}-%{version}-build
+%if 0%{?suse_version} > 1220
+BuildRequires:  makeinfo
+%else
+BuildRequires:  texinfo
+%endif
+%if 0%{?suse_version} >= 1230
+BuildRequires:  isl-devel
+%endif
+%if 0%{?building_libjava:1}%{?building_testsuite:1}
+# For building the libstdc++ API reference
+BuildRequires:  doxygen
+BuildRequires:  fastjar
+BuildRequires:  graphviz
+%endif
+%if 0%{?building_libffi:1}
+BuildRequires:  pkg-config
+%endif
+%ifarch ia64
+BuildRequires:  libunwind-devel
+%endif
+%if 0%{?run_tests:1}
+BuildRequires:  dejagnu
+BuildRequires:  expect
+BuildRequires:  gdb
+%endif
+%if !0%{?building_libjava:1}%{?building_libffi:1}%{?building_testsuite:1}
+Requires:       binutils
+Requires:       cpp5 = %{version}-%{release}
+Requires:       glibc-devel
+Requires:       libgcc_s%{libgcc_s} >= %{version}-%{release}
+Requires:       libgomp%{libgomp_sover} >= %{version}-%{release}
+Suggests:       gcc5-info
+Suggests:       gcc5-locale
+%ifarch %{asan_arch}
+Requires:       libasan%{libasan_sover} >= %{version}-%{release}
+%endif
+%ifarch %{tsan_arch}
+Requires:       libtsan%{libtsan_sover} >= %{version}-%{release}
+%endif
+%ifarch %{atomic_arch}
+Requires:       libatomic%{libatomic_sover} >= %{version}-%{release}
+%endif
+%ifarch %{itm_arch}
+Requires:       libitm%{libitm_sover} >= %{version}-%{release}
+%endif
+%ifarch %{cilkrts_arch}
+Requires:       libcilkrts%{libcilkrts_sover} >= %{version}-%{release}
+%endif
+%ifarch %{lsan_arch}
+Requires:       liblsan%{liblsan_sover} >= %{version}-%{release}
+%endif
+%ifarch %{ubsan_arch}
+Requires:       libubsan%{libubsan_sover} >= %{version}-%{release}
+%endif
+%ifarch %{vtv_arch}
+Requires:       libvtv%{libvtv_sover} >= %{version}-%{release}
+%endif
+%ifarch %{mpx_arch}
+Requires:       libmpx%{libmpx_sover} >= %{version}-%{release}
+Requires:       libmpxwrappers%{libmpxwrappers_sover} >= %{version}-%{release}
+%endif
+%endif
 
 %description
 Core package for the GNU Compiler Collection, including the C language
@@ -323,52 +297,50 @@
 namely gcc-ada, gcc-c++, gcc-fortran, gcc-java, gcc-objc and
 gcc-obj-c++.
 
-
-
 %package -n gcc5-32bit
 Summary:        The GNU C Compiler 32bit support
 License:        GPL-3.0+
 Group:          Development/Languages/C and C++
 Requires:       gcc5 = %{version}-%{release}
+Requires:       glibc-devel-32bit
 Requires:       libgcc_s%{libgcc_s}-32bit >= %{version}-%{release}
 Requires:       libgomp%{libgomp_sover}-32bit >= %{version}-%{release}
-%ifarch %asan_arch
+%ifarch %{asan_arch}
 Requires:       libasan%{libasan_sover}-32bit >= %{version}-%{release}
 %endif
-%ifarch %tsan_arch
+%ifarch %{tsan_arch}
 # tsan on x86_64 has no multilib
 %ifarch x86_64
 %else
 Requires:       libtsan%{libtsan_sover}-32bit >= %{version}-%{release}
 %endif
 %endif
-%ifarch %atomic_arch
+%ifarch %{atomic_arch}
 Requires:       libatomic%{libatomic_sover}-32bit >= %{version}-%{release}
 %endif
-%ifarch %itm_arch
+%ifarch %{itm_arch}
 Requires:       libitm%{libitm_sover}-32bit >= %{version}-%{release}
 %endif
-%ifarch %cilkrts_arch
+%ifarch %{cilkrts_arch}
 Requires:       libcilkrts%{libcilkrts_sover}-32bit >= %{version}-%{release}
 %endif
 # lsan on x86_64 has no multilib
 %ifarch x86_64
 %else
-%ifarch %lsan_arch
+%ifarch %{lsan_arch}
 Requires:       liblsan%{liblsan_sover} >= %{version}-%{release}
 %endif
 %endif
-%ifarch %ubsan_arch
+%ifarch %{ubsan_arch}
 Requires:       libubsan%{libubsan_sover}-32bit >= %{version}-%{release}
 %endif
-%ifarch %vtv_arch
+%ifarch %{vtv_arch}
 Requires:       libvtv%{libvtv_sover}-32bit >= %{version}-%{release}
 %endif
-%ifarch %mpx_arch
+%ifarch %{mpx_arch}
 Requires:       libmpx%{libmpx_sover}-32bit >= %{version}-%{release}
 Requires:       libmpxwrappers%{libmpxwrappers_sover}-32bit >= %{version}-%{release}
 %endif
-Requires:       glibc-devel-32bit
 
 %description -n gcc5-32bit
 This package contains 32bit support for the GNU Compiler Collection.
@@ -378,42 +350,41 @@
 License:        GPL-3.0+
 Group:          Development/Languages/C and C++
 Requires:       gcc5 = %{version}-%{release}
+Requires:       glibc-devel-64bit
 Requires:       libgcc_s%{libgcc_s}-64bit >= %{version}-%{release}
 Requires:       libgomp%{libgomp_sover}-64bit >= %{version}-%{release}
-%ifarch %asan_arch
+%ifarch %{asan_arch}
 Requires:       libasan%{libasan_sover}-64bit >= %{version}-%{release}
 %endif
-%ifarch %tsan_arch
+%ifarch %{tsan_arch}
 Requires:       libtsan%{libtsan_sover}-64bit >= %{version}-%{release}
 %endif
-%ifarch %atomic_arch
+%ifarch %{atomic_arch}
 Requires:       libatomic%{libatomic_sover}-64bit >= %{version}-%{release}
 %endif
-%ifarch %itm_arch
+%ifarch %{itm_arch}
 Requires:       libitm%{libitm_sover}-64bit >= %{version}-%{release}
 %endif
-%ifarch %cilkrts_arch
+%ifarch %{cilkrts_arch}
 Requires:       libcilkrts%{libcilkrts_sover}-64bit >= %{version}-%{release}
 %endif
-%ifarch %lsan_arch
+%ifarch %{lsan_arch}
 Requires:       liblsan%{liblsan_sover}-64bit >= %{version}-%{release}
 %endif
-%ifarch %ubsan_arch
+%ifarch %{ubsan_arch}
 Requires:       libubsan%{libubsan_sover}-64bit >= %{version}-%{release}
 %endif
-%ifarch %vtv_arch
+%ifarch %{vtv_arch}
 Requires:       libvtv%{libvtv_sover}-64bit >= %{version}-%{release}
 %endif
-%ifarch %mpx_arch
+%ifarch %{mpx_arch}
 Requires:       libmpx%{libmpx_sover}-64bit >= %{version}-%{release}
 Requires:       libmpxwrappers%{libmpxwrappers_sover}-64bit >= %{version}-%{release}
 %endif
-Requires:       glibc-devel-64bit
 
 %description -n gcc5-64bit
 This package contains 64bit support for the GNU Compiler Collection.
 
-
 %package locale
 Summary:        Locale Data for the GNU Compiler Collection
 License:        GPL-3.0+
@@ -424,7 +395,6 @@
 Locale data for the GNU Compiler Collection (GCC) to give error message
 in the current locale.
 
-
 %package c++
 Summary:        The GNU C++ Compiler
 License:        GPL-3.0+
@@ -435,6 +405,7 @@
 
 %description c++
 This package contains the GNU compiler for C++.
+
 %package c++-32bit
 Summary:        The GNU C++ Compiler
 License:        GPL-3.0+
@@ -445,6 +416,7 @@
 
 %description c++-32bit
 This package contains the GNU compiler for C++.
+
 %package c++-64bit
 Summary:        The GNU C++ Compiler
 License:        GPL-3.0+
@@ -456,7 +428,6 @@
 %description c++-64bit
 This package contains the GNU compiler for C++.
 
-
 %package -n libstdc++%{libstdcxx_sover}-devel%{libdevel_suffix}
 Summary:        Include Files and Libraries mandatory for Development
 License:        GPL-3.0-with-GCC-exception
@@ -471,6 +442,7 @@
 %description -n libstdc++%{libstdcxx_sover}-devel%{libdevel_suffix}
 This package contains all the headers and libraries of the standard C++
 library. It is needed for compiling C++ code.
+
 %package -n libstdc++%{libstdcxx_sover}-devel%{libdevel_suffix}-32bit
 Summary:        Include Files and Libraries mandatory for Development
 License:        GPL-3.0-with-GCC-exception
@@ -485,6 +457,7 @@
 %description -n libstdc++%{libstdcxx_sover}-devel%{libdevel_suffix}-32bit
 This package contains all the headers and libraries of the standard C++
 library. It is needed for compiling C++ code.
+
 %package -n libstdc++%{libstdcxx_sover}-devel%{libdevel_suffix}-64bit
 Summary:        Include Files and Libraries mandatory for Development
 License:        GPL-3.0-with-GCC-exception
@@ -500,15 +473,14 @@
 This package contains all the headers and libraries of the standard C++
 library. It is needed for compiling C++ code.
 
-
 %package -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}
 Summary:        C compiler runtime library
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Base
-Provides:       libgcc_s%{libgcc_s} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgcc_s%{libgcc_s}
+Provides:       libgcc_s%{libgcc_s} = %{version}-%{release}
 
 %description -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}
 Libgcc is needed for dynamically linked C programs.
@@ -516,14 +488,15 @@
 %post -n libgcc_s%{libgcc_s}%{libgcc_s_suffix} -p /sbin/ldconfig
 
 %postun -n libgcc_s%{libgcc_s}%{libgcc_s_suffix} -p /sbin/ldconfig
+
 %package -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-32bit
 Summary:        C compiler runtime library
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Base
-Provides:       libgcc_s%{libgcc_s}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgcc_s%{libgcc_s}-32bit
+Provides:       libgcc_s%{libgcc_s}-32bit = %{version}-%{release}
 
 %description -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-32bit
 Libgcc is needed for dynamically linked C programs.
@@ -531,14 +504,15 @@
 %post -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-64bit
 Summary:        C compiler runtime library
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Base
-Provides:       libgcc_s%{libgcc_s}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgcc_s%{libgcc_s}-64bit
+Provides:       libgcc_s%{libgcc_s}-64bit = %{version}-%{release}
 
 %description -n libgcc_s%{libgcc_s}%{libgcc_s_suffix}-64bit
 Libgcc is needed for dynamically linked C programs.
@@ -551,10 +525,10 @@
 Summary:        The GNU compiler collection OpenMP runtime library
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Base
-Provides:       libgomp%{libgomp_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgomp%{libgomp_sover}
+Provides:       libgomp%{libgomp_sover} = %{version}-%{release}
 
 %description -n libgomp%{libgomp_sover}%{libgomp_suffix}
 This is the OpenMP runtime library needed by OpenMP enabled programs
@@ -562,18 +536,18 @@
 were auto-parallelized via the -ftree-parallelize-loops compiler
 option.
 
-
 %post -n libgomp%{libgomp_sover}%{libgomp_suffix} -p /sbin/ldconfig
 
 %postun -n libgomp%{libgomp_sover}%{libgomp_suffix} -p /sbin/ldconfig
+
 %package -n libgomp%{libgomp_sover}%{libgomp_suffix}-32bit
 Summary:        The GNU compiler collection OpenMP runtime library
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Base
-Provides:       libgomp%{libgomp_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgomp%{libgomp_sover}-32bit
+Provides:       libgomp%{libgomp_sover}-32bit = %{version}-%{release}
 
 %description -n libgomp%{libgomp_sover}%{libgomp_suffix}-32bit
 This is the OpenMP runtime library needed by OpenMP enabled programs
@@ -581,18 +555,18 @@
 were auto-parallelized via the -ftree-parallelize-loops compiler
 option.
 
-
 %post -n libgomp%{libgomp_sover}%{libgomp_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libgomp%{libgomp_sover}%{libgomp_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libgomp%{libgomp_sover}%{libgomp_suffix}-64bit
 Summary:        The GNU compiler collection OpenMP runtime library
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Base
-Provides:       libgomp%{libgomp_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgomp%{libgomp_sover}-64bit
+Provides:       libgomp%{libgomp_sover}-64bit = %{version}-%{release}
 
 %description -n libgomp%{libgomp_sover}%{libgomp_suffix}-64bit
 This is the OpenMP runtime library needed by OpenMP enabled programs
@@ -600,7 +574,6 @@
 were auto-parallelized via the -ftree-parallelize-loops compiler
 option.
 
-
 %post -n libgomp%{libgomp_sover}%{libgomp_suffix}-64bit -p /sbin/ldconfig
 
 %postun -n libgomp%{libgomp_sover}%{libgomp_suffix}-64bit -p /sbin/ldconfig
@@ -610,49 +583,48 @@
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Libraries
 Suggests:       libstdc++%{libstdcxx_sover}-locale
-Provides:       libstdc++%{libstdcxx_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libstdc++%{libstdcxx_sover}
+Provides:       libstdc++%{libstdcxx_sover} = %{version}-%{release}
 
 %description -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}
 The standard C++ library, needed for dynamically linked C++ programs.
 
-
 %post -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix} -p /sbin/ldconfig
 
 %postun -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix} -p /sbin/ldconfig
+
 %package -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-32bit
 Summary:        The standard C++ shared library
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Libraries
 Suggests:       libstdc++%{libstdcxx_sover}-locale
-Provides:       libstdc++%{libstdcxx_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libstdc++%{libstdcxx_sover}-32bit
+Provides:       libstdc++%{libstdcxx_sover}-32bit = %{version}-%{release}
 
 %description -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-32bit
 The standard C++ library, needed for dynamically linked C++ programs.
 
-
 %post -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-64bit
 Summary:        The standard C++ shared library
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Libraries
 Suggests:       libstdc++%{libstdcxx_sover}-locale
-Provides:       libstdc++%{libstdcxx_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libstdc++%{libstdcxx_sover}-64bit
+Provides:       libstdc++%{libstdcxx_sover}-64bit = %{version}-%{release}
 
 %description -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-64bit
 The standard C++ library, needed for dynamically linked C++ programs.
 
-
 %post -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-64bit -p /sbin/ldconfig
 
 %postun -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-64bit -p /sbin/ldconfig
@@ -661,15 +633,14 @@
 Summary:        Locale Data for the standard C++ shared library
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Libraries
-Provides:       libstdc++%{libstdcxx_sover}-locale = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libstdc++%{libstdcxx_sover}-locale
+Provides:       libstdc++%{libstdcxx_sover}-locale = %{version}-%{release}
 
 %description -n libstdc++%{libstdcxx_sover}%{libstdcxx_suffix}-locale
 The standard C++ library locale data.
 
-
 %package info
 Summary:        Documentation for the GNU compiler collection
 License:        GFDL-1.2
@@ -683,7 +654,6 @@
 GNU info-pages for the GNU compiler collection covering both user-level
 and internals documentation.
 
-
 %package objc
 Summary:        GNU Objective C Compiler
 License:        GPL-3.0+
@@ -696,6 +666,7 @@
 This package contains the GNU Objective C compiler. Objective C is an
 object oriented language, created by Next Inc. and used in their
 Nextstep OS. The source code is available in the gcc package.
+
 %package objc-32bit
 Summary:        GNU Objective C Compiler
 License:        GPL-3.0+
@@ -708,6 +679,7 @@
 This package contains the GNU Objective C compiler. Objective C is an
 object oriented language, created by Next Inc. and used in their
 Nextstep OS. The source code is available in the gcc package.
+
 %package objc-64bit
 Summary:        GNU Objective C Compiler
 License:        GPL-3.0+
@@ -725,10 +697,10 @@
 Summary:        Library for the GNU Objective C Compiler
 License:        GPL-3.0-with-GCC-exception
 Group:          Development/Libraries/Other
-Provides:       libobjc%{libobjc_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libobjc%{libobjc_sover}
+Provides:       libobjc%{libobjc_sover} = %{version}-%{release}
 
 %description -n libobjc%{libobjc_sover}%{libobjc_suffix}
 The library for the GNU Objective C compiler.
@@ -736,14 +708,15 @@
 %post -n libobjc%{libobjc_sover}%{libobjc_suffix} -p /sbin/ldconfig
 
 %postun -n libobjc%{libobjc_sover}%{libobjc_suffix} -p /sbin/ldconfig
+
 %package -n libobjc%{libobjc_sover}%{libobjc_suffix}-32bit
 Summary:        Library for the GNU Objective C Compiler
 License:        GPL-3.0-with-GCC-exception
 Group:          Development/Libraries/Other
-Provides:       libobjc%{libobjc_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libobjc%{libobjc_sover}-32bit
+Provides:       libobjc%{libobjc_sover}-32bit = %{version}-%{release}
 
 %description -n libobjc%{libobjc_sover}%{libobjc_suffix}-32bit
 The library for the GNU Objective C compiler.
@@ -751,14 +724,15 @@
 %post -n libobjc%{libobjc_sover}%{libobjc_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libobjc%{libobjc_sover}%{libobjc_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libobjc%{libobjc_sover}%{libobjc_suffix}-64bit
 Summary:        Library for the GNU Objective C Compiler
 License:        GPL-3.0-with-GCC-exception
 Group:          Development/Libraries/Other
-Provides:       libobjc%{libobjc_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libobjc%{libobjc_sover}-64bit
+Provides:       libobjc%{libobjc_sover}-64bit = %{version}-%{release}
 
 %description -n libobjc%{libobjc_sover}%{libobjc_suffix}-64bit
 The library for the GNU Objective C compiler.
@@ -779,6 +753,7 @@
 This package contains the GNU Objective C++ compiler. Objective C++ is an
 object oriented language, created by Next Inc. and used in their
 Nextstep OS. The source code is available in the gcc package.
+
 %package obj-c++-32bit
 Summary:        GNU Objective C++ Compiler
 License:        GPL-3.0+
@@ -791,6 +766,7 @@
 This package contains the GNU Objective C++ compiler. Objective C++ is an
 object oriented language, created by Next Inc. and used in their
 Nextstep OS. The source code is available in the gcc package.
+
 %package obj-c++-64bit
 Summary:        GNU Objective C++ Compiler
 License:        GPL-3.0+
@@ -804,7 +780,6 @@
 object oriented language, created by Next Inc. and used in their
 Nextstep OS. The source code is available in the gcc package.
 
-
 %package -n cpp5
 Summary:        The GCC Preprocessor
 License:        GPL-3.0+
@@ -814,7 +789,6 @@
 This Package contains just the preprocessor that is used by the X11
 packages.
 
-
 %package ada
 Summary:        GNU Ada95 Compiler Based on GCC (GNAT)
 License:        GPL-3.0+
@@ -828,6 +802,7 @@
 tools based on the GNU GCC technology. Ada95 is the object oriented
 successor of the Ada83 language. To build this package from source you
 must have installed a binary version to bootstrap the compiler.
+
 %package ada-32bit
 Summary:        GNU Ada95 Compiler Based on GCC (GNAT)
 License:        GPL-3.0+
@@ -841,6 +816,7 @@
 tools based on the GNU GCC technology. Ada95 is the object oriented
 successor of the Ada83 language. To build this package from source you
 must have installed a binary version to bootstrap the compiler.
+
 %package ada-64bit
 Summary:        GNU Ada95 Compiler Based on GCC (GNAT)
 License:        GPL-3.0+
@@ -859,10 +835,10 @@
 Summary:        GNU Ada Runtime Libraries
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Libraries
-Provides:       libgnarl-5 = %{version}-%{release}
 Conflicts:      %selfconflict libgnarl-5
-Provides:       libgnat-5 = %{version}-%{release}
 Conflicts:      %selfconflict libgnat-5
+Provides:       libgnarl-5 = %{version}-%{release}
+Provides:       libgnat-5 = %{version}-%{release}
 
 %description -n libada5
 This package contains the shared libraries required to run programs
@@ -875,14 +851,15 @@
 %post -n libada5 -p /sbin/ldconfig
 
 %postun -n libada5 -p /sbin/ldconfig
+
 %package -n libada5-32bit
 Summary:        GNU Ada Runtime Libraries
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Libraries
-Provides:       libgnarl-5-32bit = %{version}-%{release}
 Conflicts:      %selfconflict libgnarl-5-32bit
-Provides:       libgnat-5-32bit = %{version}-%{release}
 Conflicts:      %selfconflict libgnat-5-32bit
+Provides:       libgnarl-5-32bit = %{version}-%{release}
+Provides:       libgnat-5-32bit = %{version}-%{release}
 
 %description -n libada5-32bit
 This package contains the shared libraries required to run programs
@@ -895,14 +872,15 @@
 %post -n libada5-32bit -p /sbin/ldconfig
 
 %postun -n libada5-32bit -p /sbin/ldconfig
+
 %package -n libada5-64bit
 Summary:        GNU Ada Runtime Libraries
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Libraries
-Provides:       libgnarl-5-64bit = %{version}-%{release}
 Conflicts:      %selfconflict libgnarl-5-64bit
-Provides:       libgnat-5-64bit = %{version}-%{release}
 Conflicts:      %selfconflict libgnat-5-64bit
+Provides:       libgnarl-5-64bit = %{version}-%{release}
+Provides:       libgnat-5-64bit = %{version}-%{release}
 
 %description -n libada5-64bit
 This package contains the shared libraries required to run programs
@@ -923,12 +901,13 @@
 Requires:       gcc5 = %{version}-%{release}
 Requires:       gcc5-fortran = %{version}-%{release}
 Requires:       libgfortran%{libgfortran_sover} >= %{version}-%{release}
-%ifarch %quadmath_arch
+%ifarch %{quadmath_arch}
 Requires:       libquadmath%{libquadmath_sover} >= %{version}-%{release}
 %endif
 
 %description fortran
 This is the Fortran compiler of the GNU Compiler Collection (GCC).
+
 %package fortran-32bit
 Summary:        The GNU Fortran Compiler and Support Files
 License:        GPL-3.0+
@@ -936,12 +915,13 @@
 Requires:       gcc5-32bit = %{version}-%{release}
 Requires:       gcc5-fortran = %{version}-%{release}
 Requires:       libgfortran%{libgfortran_sover}-32bit >= %{version}-%{release}
-%ifarch %quadmath_arch
+%ifarch %{quadmath_arch}
 Requires:       libquadmath%{libquadmath_sover}-32bit >= %{version}-%{release}
 %endif
 
 %description fortran-32bit
 This is the Fortran compiler of the GNU Compiler Collection (GCC).
+
 %package fortran-64bit
 Summary:        The GNU Fortran Compiler and Support Files
 License:        GPL-3.0+
@@ -949,7 +929,7 @@
 Requires:       gcc5-64bit = %{version}-%{release}
 Requires:       gcc5-fortran = %{version}-%{release}
 Requires:       libgfortran%{libgfortran_sover}-64bit >= %{version}-%{release}
-%ifarch %quadmath_arch
+%ifarch %{quadmath_arch}
 Requires:       libquadmath%{libquadmath_sover}-64bit >= %{version}-%{release}
 %endif
 
@@ -960,13 +940,13 @@
 Summary:        The GNU Fortran Compiler Runtime Library
 License:        GPL-3.0-with-GCC-exception
 Group:          Development/Languages/Fortran
-%ifarch %quadmath_arch
-Requires:       libquadmath%{libquadmath_sover} >= %{version}-%{release}
-%endif
-Provides:       libgfortran%{libgfortran_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgfortran%{libgfortran_sover}
+Provides:       libgfortran%{libgfortran_sover} = %{version}-%{release}
+%ifarch %{quadmath_arch}
+Requires:       libquadmath%{libquadmath_sover} >= %{version}-%{release}
+%endif
 
 %description -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}
 The runtime library needed to run programs compiled with the Fortran compiler
@@ -975,17 +955,18 @@
 %post -n libgfortran%{libgfortran_sover}%{libgfortran_suffix} -p /sbin/ldconfig
 
 %postun -n libgfortran%{libgfortran_sover}%{libgfortran_suffix} -p /sbin/ldconfig
+
 %package -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-32bit
 Summary:        The GNU Fortran Compiler Runtime Library
 License:        GPL-3.0-with-GCC-exception
 Group:          Development/Languages/Fortran
-%ifarch %quadmath_arch
-Requires:       libquadmath%{libquadmath_sover}-32bit >= %{version}-%{release}
-%endif
-Provides:       libgfortran%{libgfortran_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgfortran%{libgfortran_sover}-32bit
+Provides:       libgfortran%{libgfortran_sover}-32bit = %{version}-%{release}
+%ifarch %{quadmath_arch}
+Requires:       libquadmath%{libquadmath_sover}-32bit >= %{version}-%{release}
+%endif
 
 %description -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-32bit
 The runtime library needed to run programs compiled with the Fortran compiler
@@ -994,17 +975,18 @@
 %post -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-64bit
 Summary:        The GNU Fortran Compiler Runtime Library
 License:        GPL-3.0-with-GCC-exception
 Group:          Development/Languages/Fortran
-%ifarch %quadmath_arch
-Requires:       libquadmath%{libquadmath_sover}-64bit >= %{version}-%{release}
-%endif
-Provides:       libgfortran%{libgfortran_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgfortran%{libgfortran_sover}-64bit
+Provides:       libgfortran%{libgfortran_sover}-64bit = %{version}-%{release}
+%ifarch %{quadmath_arch}
+Requires:       libquadmath%{libquadmath_sover}-64bit >= %{version}-%{release}
+%endif
 
 %description -n libgfortran%{libgfortran_sover}%{libgfortran_suffix}-64bit
 The runtime library needed to run programs compiled with the Fortran compiler
@@ -1018,10 +1000,10 @@
 Summary:        The GNU Fortran Compiler Quadmath Runtime Library
 License:        LGPL-2.1
 Group:          Development/Languages/Fortran
-Provides:       libquadmath%{libquadmath_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libquadmath%{libquadmath_sover}
+Provides:       libquadmath%{libquadmath_sover} = %{version}-%{release}
 
 %description -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}
 The runtime library needed to run programs compiled with the Fortran compiler
@@ -1031,14 +1013,15 @@
 %post -n libquadmath%{libquadmath_sover}%{libquadmath_suffix} -p /sbin/ldconfig
 
 %postun -n libquadmath%{libquadmath_sover}%{libquadmath_suffix} -p /sbin/ldconfig
+
 %package -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-32bit
 Summary:        The GNU Fortran Compiler Quadmath Runtime Library
 License:        LGPL-2.1
 Group:          Development/Languages/Fortran
-Provides:       libquadmath%{libquadmath_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libquadmath%{libquadmath_sover}-32bit
+Provides:       libquadmath%{libquadmath_sover}-32bit = %{version}-%{release}
 
 %description -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-32bit
 The runtime library needed to run programs compiled with the Fortran compiler
@@ -1048,14 +1031,15 @@
 %post -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-64bit
 Summary:        The GNU Fortran Compiler Quadmath Runtime Library
 License:        LGPL-2.1
 Group:          Development/Languages/Fortran
-Provides:       libquadmath%{libquadmath_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libquadmath%{libquadmath_sover}-64bit
+Provides:       libquadmath%{libquadmath_sover}-64bit = %{version}-%{release}
 
 %description -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}-64bit
 The runtime library needed to run programs compiled with the Fortran compiler
@@ -1070,10 +1054,10 @@
 Summary:        The GNU Compiler Transactional Memory Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libitm%{libitm_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libitm%{libitm_sover}
+Provides:       libitm%{libitm_sover} = %{version}-%{release}
 
 %description -n libitm%{libitm_sover}%{libitm_suffix}
 The runtime library needed to run programs compiled with the
@@ -1082,14 +1066,15 @@
 %post -n libitm%{libitm_sover}%{libitm_suffix} -p /sbin/ldconfig
 
 %postun -n libitm%{libitm_sover}%{libitm_suffix} -p /sbin/ldconfig
+
 %package -n libitm%{libitm_sover}%{libitm_suffix}-32bit
 Summary:        The GNU Compiler Transactional Memory Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libitm%{libitm_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libitm%{libitm_sover}-32bit
+Provides:       libitm%{libitm_sover}-32bit = %{version}-%{release}
 
 %description -n libitm%{libitm_sover}%{libitm_suffix}-32bit
 The runtime library needed to run programs compiled with the
@@ -1098,14 +1083,15 @@
 %post -n libitm%{libitm_sover}%{libitm_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libitm%{libitm_sover}%{libitm_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libitm%{libitm_sover}%{libitm_suffix}-64bit
 Summary:        The GNU Compiler Transactional Memory Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libitm%{libitm_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libitm%{libitm_sover}-64bit
+Provides:       libitm%{libitm_sover}-64bit = %{version}-%{release}
 
 %description -n libitm%{libitm_sover}%{libitm_suffix}-64bit
 The runtime library needed to run programs compiled with the
@@ -1119,10 +1105,10 @@
 Summary:        The GNU Compiler Address Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libasan%{libasan_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libasan%{libasan_sover}
+Provides:       libasan%{libasan_sover} = %{version}-%{release}
 
 %description -n libasan%{libasan_sover}%{libasan_suffix}
 The runtime library needed to run programs compiled with the
@@ -1131,14 +1117,15 @@
 %post -n libasan%{libasan_sover}%{libasan_suffix} -p /sbin/ldconfig
 
 %postun -n libasan%{libasan_sover}%{libasan_suffix} -p /sbin/ldconfig
+
 %package -n libasan%{libasan_sover}%{libasan_suffix}-32bit
 Summary:        The GNU Compiler Address Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libasan%{libasan_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libasan%{libasan_sover}-32bit
+Provides:       libasan%{libasan_sover}-32bit = %{version}-%{release}
 
 %description -n libasan%{libasan_sover}%{libasan_suffix}-32bit
 The runtime library needed to run programs compiled with the
@@ -1147,14 +1134,15 @@
 %post -n libasan%{libasan_sover}%{libasan_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libasan%{libasan_sover}%{libasan_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libasan%{libasan_sover}%{libasan_suffix}-64bit
 Summary:        The GNU Compiler Address Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libasan%{libasan_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libasan%{libasan_sover}-64bit
+Provides:       libasan%{libasan_sover}-64bit = %{version}-%{release}
 
 %description -n libasan%{libasan_sover}%{libasan_suffix}-64bit
 The runtime library needed to run programs compiled with the
@@ -1168,10 +1156,10 @@
 Summary:        The GNU Compiler Thread Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libtsan%{libtsan_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libtsan%{libtsan_sover}
+Provides:       libtsan%{libtsan_sover} = %{version}-%{release}
 
 %description -n libtsan%{libtsan_sover}%{libtsan_suffix}
 The runtime library needed to run programs compiled with the
@@ -1180,14 +1168,15 @@
 %post -n libtsan%{libtsan_sover}%{libtsan_suffix} -p /sbin/ldconfig
 
 %postun -n libtsan%{libtsan_sover}%{libtsan_suffix} -p /sbin/ldconfig
+
 %package -n libtsan%{libtsan_sover}%{libtsan_suffix}-32bit
 Summary:        The GNU Compiler Thread Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libtsan%{libtsan_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libtsan%{libtsan_sover}-32bit
+Provides:       libtsan%{libtsan_sover}-32bit = %{version}-%{release}
 
 %description -n libtsan%{libtsan_sover}%{libtsan_suffix}-32bit
 The runtime library needed to run programs compiled with the
@@ -1196,14 +1185,15 @@
 %post -n libtsan%{libtsan_sover}%{libtsan_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libtsan%{libtsan_sover}%{libtsan_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libtsan%{libtsan_sover}%{libtsan_suffix}-64bit
 Summary:        The GNU Compiler Thread Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libtsan%{libtsan_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libtsan%{libtsan_sover}-64bit
+Provides:       libtsan%{libtsan_sover}-64bit = %{version}-%{release}
 
 %description -n libtsan%{libtsan_sover}%{libtsan_suffix}-64bit
 The runtime library needed to run programs compiled with the
@@ -1217,10 +1207,10 @@
 Summary:        The GNU Compiler Atomic Operations Runtime Library
 License:        GPL-3.0-with-GCC-exception
 Group:          Development/Languages/C and C++
-Provides:       libatomic%{libatomic_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libatomic%{libatomic_sover}
+Provides:       libatomic%{libatomic_sover} = %{version}-%{release}
 
 %description -n libatomic%{libatomic_sover}%{libatomic_suffix}
 The runtime library for atomic operations of the GNU Compiler Collection (GCC).
@@ -1228,14 +1218,15 @@
 %post -n libatomic%{libatomic_sover}%{libatomic_suffix} -p /sbin/ldconfig
 
 %postun -n libatomic%{libatomic_sover}%{libatomic_suffix} -p /sbin/ldconfig
+
 %package -n libatomic%{libatomic_sover}%{libatomic_suffix}-32bit
 Summary:        The GNU Compiler Atomic Operations Runtime Library
 License:        GPL-3.0-with-GCC-exception
 Group:          Development/Languages/C and C++
-Provides:       libatomic%{libatomic_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libatomic%{libatomic_sover}-32bit
+Provides:       libatomic%{libatomic_sover}-32bit = %{version}-%{release}
 
 %description -n libatomic%{libatomic_sover}%{libatomic_suffix}-32bit
 The runtime library for atomic operations of the GNU Compiler Collection (GCC).
@@ -1243,14 +1234,15 @@
 %post -n libatomic%{libatomic_sover}%{libatomic_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libatomic%{libatomic_sover}%{libatomic_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libatomic%{libatomic_sover}%{libatomic_suffix}-64bit
 Summary:        The GNU Compiler Atomic Operations Runtime Library
 License:        GPL-3.0-with-GCC-exception
 Group:          Development/Languages/C and C++
-Provides:       libatomic%{libatomic_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libatomic%{libatomic_sover}-64bit
+Provides:       libatomic%{libatomic_sover}-64bit = %{version}-%{release}
 
 %description -n libatomic%{libatomic_sover}%{libatomic_suffix}-64bit
 The runtime library for atomic operations of the GNU Compiler Collection (GCC).
@@ -1263,10 +1255,10 @@
 Summary:        The GNU Compiler Cilk+ Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libcilkrts%{libcilkrts_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libcilkrts%{libcilkrts_sover}
+Provides:       libcilkrts%{libcilkrts_sover} = %{version}-%{release}
 
 %description -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}
 The runtime library needed to run programs compiled with the
@@ -1275,14 +1267,15 @@
 %post -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix} -p /sbin/ldconfig
 
 %postun -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix} -p /sbin/ldconfig
+
 %package -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-32bit
 Summary:        The GNU Compiler Cilk+ Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libcilkrts%{libcilkrts_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libcilkrts%{libcilkrts_sover}-32bit
+Provides:       libcilkrts%{libcilkrts_sover}-32bit = %{version}-%{release}
 
 %description -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-32bit
 The runtime library needed to run programs compiled with the
@@ -1291,14 +1284,15 @@
 %post -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-64bit
 Summary:        The GNU Compiler Cilk+ Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libcilkrts%{libcilkrts_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libcilkrts%{libcilkrts_sover}-64bit
+Provides:       libcilkrts%{libcilkrts_sover}-64bit = %{version}-%{release}
 
 %description -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}-64bit
 The runtime library needed to run programs compiled with the
@@ -1312,10 +1306,10 @@
 Summary:        The GNU Compiler Leak Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       liblsan%{liblsan_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict liblsan%{liblsan_sover}
+Provides:       liblsan%{liblsan_sover} = %{version}-%{release}
 
 %description -n liblsan%{liblsan_sover}%{liblsan_suffix}
 The runtime library needed to run programs compiled with the
@@ -1324,14 +1318,15 @@
 %post -n liblsan%{liblsan_sover}%{liblsan_suffix} -p /sbin/ldconfig
 
 %postun -n liblsan%{liblsan_sover}%{liblsan_suffix} -p /sbin/ldconfig
+
 %package -n liblsan%{liblsan_sover}%{liblsan_suffix}-32bit
 Summary:        The GNU Compiler Leak Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       liblsan%{liblsan_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict liblsan%{liblsan_sover}-32bit
+Provides:       liblsan%{liblsan_sover}-32bit = %{version}-%{release}
 
 %description -n liblsan%{liblsan_sover}%{liblsan_suffix}-32bit
 The runtime library needed to run programs compiled with the
@@ -1340,14 +1335,15 @@
 %post -n liblsan%{liblsan_sover}%{liblsan_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n liblsan%{liblsan_sover}%{liblsan_suffix}-32bit -p /sbin/ldconfig
+
 %package -n liblsan%{liblsan_sover}%{liblsan_suffix}-64bit
 Summary:        The GNU Compiler Leak Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       liblsan%{liblsan_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict liblsan%{liblsan_sover}-64bit
+Provides:       liblsan%{liblsan_sover}-64bit = %{version}-%{release}
 
 %description -n liblsan%{liblsan_sover}%{liblsan_suffix}-64bit
 The runtime library needed to run programs compiled with the
@@ -1361,10 +1357,10 @@
 Summary:        The GNU Compiler Undefined Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libubsan%{libubsan_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libubsan%{libubsan_sover}
+Provides:       libubsan%{libubsan_sover} = %{version}-%{release}
 
 %description -n libubsan%{libubsan_sover}%{libubsan_suffix}
 The runtime library needed to run programs compiled with the
@@ -1373,14 +1369,15 @@
 %post -n libubsan%{libubsan_sover}%{libubsan_suffix} -p /sbin/ldconfig
 
 %postun -n libubsan%{libubsan_sover}%{libubsan_suffix} -p /sbin/ldconfig
+
 %package -n libubsan%{libubsan_sover}%{libubsan_suffix}-32bit
 Summary:        The GNU Compiler Undefined Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libubsan%{libubsan_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libubsan%{libubsan_sover}-32bit
+Provides:       libubsan%{libubsan_sover}-32bit = %{version}-%{release}
 
 %description -n libubsan%{libubsan_sover}%{libubsan_suffix}-32bit
 The runtime library needed to run programs compiled with the
@@ -1389,14 +1386,15 @@
 %post -n libubsan%{libubsan_sover}%{libubsan_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libubsan%{libubsan_sover}%{libubsan_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libubsan%{libubsan_sover}%{libubsan_suffix}-64bit
 Summary:        The GNU Compiler Undefined Sanitizer Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libubsan%{libubsan_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libubsan%{libubsan_sover}-64bit
+Provides:       libubsan%{libubsan_sover}-64bit = %{version}-%{release}
 
 %description -n libubsan%{libubsan_sover}%{libubsan_suffix}-64bit
 The runtime library needed to run programs compiled with the
@@ -1410,10 +1408,10 @@
 Summary:        The GNU Compiler Vtable Verifier Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libvtv%{libvtv_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libvtv%{libvtv_sover}
+Provides:       libvtv%{libvtv_sover} = %{version}-%{release}
 
 %description -n libvtv%{libvtv_sover}%{libvtv_suffix}
 The runtime library needed to run programs compiled with the
@@ -1422,14 +1420,15 @@
 %post -n libvtv%{libvtv_sover}%{libvtv_suffix} -p /sbin/ldconfig
 
 %postun -n libvtv%{libvtv_sover}%{libvtv_suffix} -p /sbin/ldconfig
+
 %package -n libvtv%{libvtv_sover}%{libvtv_suffix}-32bit
 Summary:        The GNU Compiler Vtable Verifier Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libvtv%{libvtv_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libvtv%{libvtv_sover}-32bit
+Provides:       libvtv%{libvtv_sover}-32bit = %{version}-%{release}
 
 %description -n libvtv%{libvtv_sover}%{libvtv_suffix}-32bit
 The runtime library needed to run programs compiled with the
@@ -1438,14 +1437,15 @@
 %post -n libvtv%{libvtv_sover}%{libvtv_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libvtv%{libvtv_sover}%{libvtv_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libvtv%{libvtv_sover}%{libvtv_suffix}-64bit
 Summary:        The GNU Compiler Vtable Verifier Runtime Library
 License:        MIT
 Group:          Development/Languages/C and C++
-Provides:       libvtv%{libvtv_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libvtv%{libvtv_sover}-64bit
+Provides:       libvtv%{libvtv_sover}-64bit = %{version}-%{release}
 
 %description -n libvtv%{libvtv_sover}%{libvtv_suffix}-64bit
 The runtime library needed to run programs compiled with the
@@ -1459,10 +1459,10 @@
 Summary:        The GNU Compiler MPX Runtime Library
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
-Provides:       libmpx%{libmpx_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libmpx%{libmpx_sover}
+Provides:       libmpx%{libmpx_sover} = %{version}-%{release}
 
 %description -n libmpx%{libmpx_sover}%{libmpx_suffix}
 The runtime library needed to run programs compiled with the
@@ -1471,14 +1471,15 @@
 %post -n libmpx%{libmpx_sover}%{libmpx_suffix} -p /sbin/ldconfig
 
 %postun -n libmpx%{libmpx_sover}%{libmpx_suffix} -p /sbin/ldconfig
+
 %package -n libmpx%{libmpx_sover}%{libmpx_suffix}-32bit
 Summary:        The GNU Compiler MPX Runtime Library
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
-Provides:       libmpx%{libmpx_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libmpx%{libmpx_sover}-32bit
+Provides:       libmpx%{libmpx_sover}-32bit = %{version}-%{release}
 
 %description -n libmpx%{libmpx_sover}%{libmpx_suffix}-32bit
 The runtime library needed to run programs compiled with the
@@ -1487,14 +1488,15 @@
 %post -n libmpx%{libmpx_sover}%{libmpx_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libmpx%{libmpx_sover}%{libmpx_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libmpx%{libmpx_sover}%{libmpx_suffix}-64bit
 Summary:        The GNU Compiler MPX Runtime Library
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
-Provides:       libmpx%{libmpx_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libmpx%{libmpx_sover}-64bit
+Provides:       libmpx%{libmpx_sover}-64bit = %{version}-%{release}
 
 %description -n libmpx%{libmpx_sover}%{libmpx_suffix}-64bit
 The runtime library needed to run programs compiled with the
@@ -1508,10 +1510,10 @@
 Summary:        The GNU Compiler MPX Runtime Library
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
-Provides:       libmpxwrappers%{libmpxwrappers_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libmpxwrappers%{libmpxwrappers_sover}
+Provides:       libmpxwrappers%{libmpxwrappers_sover} = %{version}-%{release}
 
 %description -n libmpxwrappers%{libmpxwrappers_sover}%{libmpxwrappers_suffix}
 The runtime library needed to run programs compiled with the
@@ -1520,14 +1522,15 @@
 %post -n libmpxwrappers%{libmpxwrappers_sover}%{libmpxwrappers_suffix} -p /sbin/ldconfig
 
 %postun -n libmpxwrappers%{libmpxwrappers_sover}%{libmpxwrappers_suffix} -p /sbin/ldconfig
+
 %package -n libmpxwrappers%{libmpxwrappers_sover}%{libmpxwrappers_suffix}-32bit
 Summary:        The GNU Compiler MPX Runtime Library
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
-Provides:       libmpxwrappers%{libmpxwrappers_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libmpxwrappers%{libmpxwrappers_sover}-32bit
+Provides:       libmpxwrappers%{libmpxwrappers_sover}-32bit = %{version}-%{release}
 
 %description -n libmpxwrappers%{libmpxwrappers_sover}%{libmpxwrappers_suffix}-32bit
 The runtime library needed to run programs compiled with the
@@ -1536,14 +1539,15 @@
 %post -n libmpxwrappers%{libmpxwrappers_sover}%{libmpxwrappers_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libmpxwrappers%{libmpxwrappers_sover}%{libmpxwrappers_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libmpxwrappers%{libmpxwrappers_sover}%{libmpxwrappers_suffix}-64bit
 Summary:        The GNU Compiler MPX Runtime Library
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
-Provides:       libmpxwrappers%{libmpxwrappers_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libmpxwrappers%{libmpxwrappers_sover}-64bit
+Provides:       libmpxwrappers%{libmpxwrappers_sover}-64bit = %{version}-%{release}
 
 %description -n libmpxwrappers%{libmpxwrappers_sover}%{libmpxwrappers_suffix}-64bit
 The runtime library needed to run programs compiled with the
@@ -1557,15 +1561,15 @@
 Summary:        Java Runtime Library for gcc
 License:        GPL-2.0-with-classpath-exception
 Group:          System/Libraries
-%if 0%{suse_version} > 1000
-Recommends:     libgcj-jar%{libdevel_suffix} = %{version}-%{release}
-%endif
-Provides:       libgcj%{libgcj_sover} = %{version}-%{release}
 Conflicts:      %selfconflict libgcj%{libgcj_sover}
-Provides:       libgij%{libgcj_sover} = %{version}-%{release}
+Conflicts:      %selfconflict libgcj-tools%{libgcj_sover}
 Conflicts:      %selfconflict libgij%{libgcj_sover}
+Provides:       libgcj%{libgcj_sover} = %{version}-%{release}
+Provides:       libgij%{libgcj_sover} = %{version}-%{release}
 Provides:       libgcj-tools%{libgcj_sover} = %{version}-%{release}
-Conflicts:      %selfconflict libgcj-tools%{libgcj_sover}
+%if 0%{?suse_version} > 1000
+Recommends:     libgcj-jar%{libdevel_suffix} = %{version}-%{release}
+%endif
 
 %description -n libgcj%{libdevel_suffix}
 This library is needed if you want to use the GNU Java compiler, gcj.
@@ -1585,7 +1589,6 @@
 %description -n gcc5-java
 The Java compiler from the GCC-tools-suite.
 
-
 %package -n libgcj_bc%{libgcj_bc_sover}%{libgcj_bc_suffix}
 Summary:        Fake library for BC-ABI compatibility.
 License:        GPL-2.0-with-classpath-exception
@@ -1594,15 +1597,15 @@
 # a proper libgcj version.  So require that library and add
 # provides for the shlib version as created at link time
 Requires:       libgcj%{libgcj_sover} >= %{version}-%{release}
+# Only one package may provide this - allows multiple gcc versions
+# to co-exist without an overly large list of provides/obsoletes
+Conflicts:      %selfconflict libgcj_bc%{libgcj_bc_sover}
+Provides:       libgcj_bc%{libgcj_bc_sover} = %{version}-%{release}
 %ifarch x86_64 ia64 ppc64 s390x sparc64 aarch64
 Provides:       libgcj_bc.so.%{libgcj_bc_sover}()(64bit)
 %else
 Provides:       libgcj_bc.so.%{libgcj_bc_sover}
 %endif
-Provides:       libgcj_bc%{libgcj_bc_sover} = %{version}-%{release}
-# Only one package may provide this - allows multiple gcc versions
-# to co-exist without an overly large list of provides/obsoletes
-Conflicts:      %selfconflict libgcj_bc%{libgcj_bc_sover}
 
 %description -n libgcj_bc%{libgcj_bc_sover}%{libgcj_bc_suffix}
 A fake library that is used at link time only. It ensures that
@@ -1610,7 +1613,6 @@
 This way, BC-ABI binaries continue to work if the SONAME underlying
 libgcj.so changes.
 
-
 %package -n libgcj-jar%{libdevel_suffix}
 Summary:        Java runtime library (jar files).
 License:        GPL-2.0-with-classpath-exception
@@ -1620,7 +1622,6 @@
 %description -n libgcj-jar%{libdevel_suffix}
 These are the jar files that go along with the gcj front end to gcc.
 
-
 %package -n libgcj-devel%{libdevel_suffix}
 Summary:        Include Files and Libraries mandatory for Development.
 License:        GPL-2.0-with-classpath-exception
@@ -1634,7 +1635,6 @@
 This package contains all necessary include files and libraries needed
 to develop applications that require these.
 
-
 %package -n gcc5-gij
 Summary:        Java Bytecode Interpreter for gcc
 License:        GPL-2.0-with-classpath-exception
@@ -1644,7 +1644,6 @@
 %description -n gcc5-gij
 This package contains the java bytecode interpreter gij and related tools.
 
-
 %package -n libstdc++%{libstdcxx_sover}%{libdevel_suffix}-doc
 Summary:        Documentation for the GNU C++ standard library
 License:        GPL-3.0+
@@ -1656,15 +1655,14 @@
 %description -n libstdc++%{libstdcxx_sover}%{libdevel_suffix}-doc
 Extensive HTML documentation for the GNU C++ standard library.
 
-
 %package -n libffi%{libffi_sover}%{libffi_suffix}
 Summary:        Foreign Function Interface library
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
-Provides:       libffi%{libffi_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libffi%{libffi_sover}
+Provides:       libffi%{libffi_sover} = %{version}-%{release}
 
 %description -n libffi%{libffi_sover}%{libffi_suffix}
 A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
@@ -1672,14 +1670,15 @@
 %post -n libffi%{libffi_sover}%{libffi_suffix} -p /sbin/ldconfig
 
 %postun -n libffi%{libffi_sover}%{libffi_suffix} -p /sbin/ldconfig
+
 %package -n libffi%{libffi_sover}%{libffi_suffix}-32bit
 Summary:        Foreign Function Interface library
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
-Provides:       libffi%{libffi_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libffi%{libffi_sover}-32bit
+Provides:       libffi%{libffi_sover}-32bit = %{version}-%{release}
 
 %description -n libffi%{libffi_sover}%{libffi_suffix}-32bit
 A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
@@ -1687,14 +1686,15 @@
 %post -n libffi%{libffi_sover}%{libffi_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libffi%{libffi_sover}%{libffi_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libffi%{libffi_sover}%{libffi_suffix}-64bit
 Summary:        Foreign Function Interface library
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
-Provides:       libffi%{libffi_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libffi%{libffi_sover}-64bit
+Provides:       libffi%{libffi_sover}-64bit = %{version}-%{release}
 
 %description -n libffi%{libffi_sover}%{libffi_suffix}-64bit
 A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
@@ -1708,30 +1708,32 @@
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
 Requires:       libffi%{libffi_sover} >= %{version}-%{release}
-Provides:       libffi-devel = %{version}-%{release}
 Conflicts:      %selfconflict libffi-devel
+Provides:       libffi-devel = %{version}-%{release}
 Obsoletes:      libffi5-devel < %{version}-%{release}
 
 %description -n libffi-devel%{libdevel_suffix}
 A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
+
 %package -n libffi-devel%{libdevel_suffix}-32bit
 Summary:        Foreign Function Interface library development files
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
 Requires:       libffi%{libffi_sover}-32bit >= %{version}-%{release}
-Provides:       libffi-devel-32bit = %{version}-%{release}
 Conflicts:      %selfconflict libffi-devel-32bit
+Provides:       libffi-devel-32bit = %{version}-%{release}
 Obsoletes:      libffi5-devel-32bit < %{version}-%{release}
 
 %description -n libffi-devel%{libdevel_suffix}-32bit
 A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
+
 %package -n libffi-devel%{libdevel_suffix}-64bit
 Summary:        Foreign Function Interface library development files
 License:        BSD-3-Clause
 Group:          Development/Languages/C and C++
 Requires:       libffi%{libffi_sover}-64bit >= %{version}-%{release}
-Provides:       libffi-devel-64bit = %{version}-%{release}
 Conflicts:      %selfconflict libffi-devel-64bit
+Provides:       libffi-devel-64bit = %{version}-%{release}
 Obsoletes:      libffi5-devel-64bit < %{version}-%{release}
 
 %description -n libffi-devel%{libdevel_suffix}-64bit
@@ -1748,6 +1750,7 @@
 %description go
 This package contains a Go compiler and associated development
 files based on the GNU GCC technology.
+
 %package go-32bit
 Summary:        GNU Go Compiler
 License:        GPL-3.0+
@@ -1759,6 +1762,7 @@
 %description go-32bit
 This package contains a Go compiler and associated development
 files based on the GNU GCC technology.
+
 %package go-64bit
 Summary:        GNU Go Compiler
 License:        GPL-3.0+
@@ -1775,10 +1779,10 @@
 Summary:        GNU Go compiler runtime library
 License:        BSD-3-Clause
 Group:          Development/Languages/Other
-Provides:       libgo%{libgo_sover} = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgo%{libgo_sover}
+Provides:       libgo%{libgo_sover} = %{version}-%{release}
 
 %description -n libgo%{libgo_sover}%{libgo_suffix}
 A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
@@ -1786,14 +1790,15 @@
 %post -n libgo%{libgo_sover}%{libgo_suffix} -p /sbin/ldconfig
 
 %postun -n libgo%{libgo_sover}%{libgo_suffix} -p /sbin/ldconfig
+
 %package -n libgo%{libgo_sover}%{libgo_suffix}-32bit
 Summary:        GNU Go compiler runtime library
 License:        BSD-3-Clause
 Group:          Development/Languages/Other
-Provides:       libgo%{libgo_sover}-32bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgo%{libgo_sover}-32bit
+Provides:       libgo%{libgo_sover}-32bit = %{version}-%{release}
 
 %description -n libgo%{libgo_sover}%{libgo_suffix}-32bit
 A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
@@ -1801,14 +1806,15 @@
 %post -n libgo%{libgo_sover}%{libgo_suffix}-32bit -p /sbin/ldconfig
 
 %postun -n libgo%{libgo_sover}%{libgo_suffix}-32bit -p /sbin/ldconfig
+
 %package -n libgo%{libgo_sover}%{libgo_suffix}-64bit
 Summary:        GNU Go compiler runtime library
 License:        BSD-3-Clause
 Group:          Development/Languages/Other
-Provides:       libgo%{libgo_sover}-64bit = %{version}-%{release}
 # Only one package may provide this - allows multiple gcc versions
 # to co-exist without an overly large list of provides/obsoletes
 Conflicts:      %selfconflict libgo%{libgo_sover}-64bit
+Provides:       libgo%{libgo_sover}-64bit = %{version}-%{release}
 
 %description -n libgo%{libgo_sover}%{libgo_suffix}-64bit
 A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.
@@ -1825,9 +1831,6 @@
 %description -n gcc5-testresults
 Results from running the gcc and target library testsuites.
 
-
-
-
 # Define the canonical target and host architecture
 #   %gcc_target_arch  is supposed to be the full target triple
 #   %cross_arch       is supposed to be the rpm target variant arch
@@ -1838,13 +1841,33 @@
 %else
 %define TARGET_ARCH %(echo %{_target_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
 %endif
-%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
 
+%define biarch %(case " %{biarch_targets} " in (*" %{TARGET_ARCH} "*) echo 1;; (*) echo 0;; esac)
 %define HOST_ARCH %(echo %{_host_cpu} | sed -e "s/i.86/i586/;s/ppc/powerpc/;s/sparc64.*/sparc64/;s/sparcv.*/sparc/;")
+%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
+%define gxxinclude %{_includedir}/c++/%{gcc_dir_version}
+# Versionspecific directories
+%define versmainlibdir %{libsubdir}
+%define versmainlibdirbi32 %{libsubdir}/32
+%define versmainlibdirbi64 %{libsubdir}/64
+%define mainlibdir %{_libdir}
+%define mainlibdirbi32 %{_prefix}/lib
+%define mainlibdirbi64 %{_prefix}/lib64
+# Now define a few macros that make it easy to package libs and
+# related files just to the right package, without caring for the
+# exact path the files are in.
+#   %mainlib  package X from all dirs that belong to the main package
+#   %biarchlib   package X from all dirs that belong to the -32/64bit package
+%define mainlib() %{mainlibdir}/%{1}\
+%{nil}
+%define biarchlib() %{nil}
+%define versmainlib() %{versmainlibdir}/%{1}\
+%{nil}
+%define versbiarchlib() %{nil}
 %ifarch ppc
 %define GCCDIST powerpc64-suse-linux
 %else
-%ifarch %sparc
+%ifarch %{sparc}
 %define GCCDIST sparc64-suse-linux
 %else
 %ifarch %arm
@@ -1854,14 +1877,6 @@
 %endif
 %endif
 %endif
-
-%define libsubdir %{_libdir}/gcc/%{GCCDIST}/%{gcc_dir_version}
-%define gxxinclude %{_prefix}/include/c++/%{gcc_dir_version}
-
-# Versionspecific directories
-%define versmainlibdir %{libsubdir}
-%define versmainlibdirbi32 %{libsubdir}/32
-%define versmainlibdirbi64 %{libsubdir}/64
 %ifarch ppc
 %define versmainlibdirbi32 %{libsubdir}
 %define versmainlibdirbi64 %{libsubdir}/64
@@ -1871,45 +1886,28 @@
 %else
 %define versmainlibdirbi %{versmainlibdirbi64}
 %endif
-
-%define mainlibdir %{_libdir}
-%define mainlibdirbi32 %{_prefix}/lib
-%define mainlibdirbi64 %{_prefix}/lib64
 %if %{build_primary_64bit}
 %define mainlibdirbi %{mainlibdirbi32}
 %else
 %define mainlibdirbi %{mainlibdirbi64}
 %endif
-
-# Now define a few macros that make it easy to package libs and
-# related files just to the right package, without caring for the
-# exact path the files are in.
-#   %mainlib  package X from all dirs that belong to the main package
-#   %biarchlib   package X from all dirs that belong to the -32/64bit package
-%define mainlib() %{mainlibdir}/%1\
-%{nil}
-%define biarchlib() %{nil}
 %if %{biarch}
 %if !%{separate_biarch}
-%define mainlib() %{mainlibdir}/%1\
-%{mainlibdirbi}/%1\
+%define mainlib() %{mainlibdir}/%{1}\
+%{mainlibdirbi}/%{1}\
 %{nil}
 %else
-%define biarchlib() %{mainlibdirbi}/%1\
+%define biarchlib() %{mainlibdirbi}/%{1}\
 %{nil}
 %endif
 %endif
-
-%define versmainlib() %{versmainlibdir}/%1\
-%{nil}
-%define versbiarchlib() %{nil}
 %if %{biarch}
 %if !%{separate_biarch}
-%define versmainlib() %{versmainlibdir}/%1\
-%{versmainlibdirbi}/%1\
+%define versmainlib() %{versmainlibdir}/%{1}\
+%{versmainlibdirbi}/%{1}\
 %{nil}
 %else
-%define versbiarchlib() %{versmainlibdirbi}/%1\
+%define versbiarchlib() %{versmainlibdirbi}/%{1}\
 %{nil}
 %endif
 %endif
@@ -1927,7 +1925,7 @@
 %patch6
 %patch7
 %patch8
-%if %{suse_version} < 1310
+%if 0%{?suse_version} < 1310
 %patch9
 %endif
 %patch10
@@ -1963,33 +1961,33 @@
 cat gcc/FULL-VER | cut -d '.' -f 1 > gcc/BASE-VER
 
 # SLE11 does not allow empty rpms
-%if %{suse_version} < 1310
+%if 0%{?suse_version} < 1310
 echo "This is a dummy package to provide a dependency." > README
 %endif
 
 rm -rf obj-%{GCCDIST}
 mkdir obj-%{GCCDIST}
 cd obj-%{GCCDIST}
-RPM_OPT_FLAGS="$RPM_OPT_FLAGS -U_FORTIFY_SOURCE"
-RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
+RPM_OPT_FLAGS="%{optflags} -U_FORTIFY_SOURCE"
+RPM_OPT_FLAGS=`echo %{optflags}|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g' -e 's/-Wmissing-format-attribute//g' -e 's/-fstack-protector[^ ]*//g' -e 's/-ffortify=.//g' -e 's/-Wall//g' -e 's/-m32//g' -e 's/-m64//g'`
 %ifarch %ix86
 # -mcpu is superceded by -mtune but -mtune is not supported by
 # our bootstrap compiler.  -mcpu gives a warning that stops
 # the build process, so remove it for now.  Also remove all other
 # -march and -mtune flags.  They are superseeded by proper
 # default compiler settings now.
-RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
+RPM_OPT_FLAGS=`echo %{optflags}|sed -e 's/-mcpu=i.86//g' -e 's/-march=i.86//g' -e 's/-mtune=i.86//g'`
 %endif
 %ifarch s390 s390x
-RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fsigned-char//g'`
-RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-O1/-O2/g'`
+RPM_OPT_FLAGS=`echo %{optflags}|sed -e 's/-fsigned-char//g'`
+RPM_OPT_FLAGS=`echo %{optflags}|sed -e 's/-O1/-O2/g'`
 %endif
 %if 0%{?gcc_target_arch:1}
 # Kill all -march/tune/cpu because that screws building the target libs
-RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
+RPM_OPT_FLAGS=`echo %{optflags}|sed -e 's/-m\(arch\|tune\|cpu\)=[^ ]*//g'`
 %endif
 # Replace 2 spaces by one finally
-RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/  / /g'`
+RPM_OPT_FLAGS=`echo %{optflags}|sed -e 's/  / /g'`
 
 languages=c
 %if %{build_cp}
@@ -2014,7 +2012,7 @@
 languages=$languages,go
 %endif
 
-J=%{?jobs:%jobs}
+J=%{?jobs:%{jobs}}
 if test -z "$J"; then
   J=$(getconf _NPROCESSORS_CONF)
   JL=$(($J * 2))
@@ -2053,11 +2051,11 @@
 # doesn't work due to PR33857, so an un-suffixed gnatmake has to be
 # available
 mkdir -p host-tools/bin
-cp -a /usr/bin/gnatmake%{hostsuffix} host-tools/bin/gnatmake
-cp -a /usr/bin/gnatlink%{hostsuffix} host-tools/bin/gnatlink
-cp -a /usr/bin/gnatbind%{hostsuffix} host-tools/bin/gnatbind
-cp -a /usr/bin/gcc%{hostsuffix} host-tools/bin/gcc
-ln -sf /usr/%{_lib} host-tools/%{_lib}
+cp -a %{_bindir}/gnatmake%{hostsuffix} host-tools/bin/gnatmake
+cp -a %{_bindir}/gnatlink%{hostsuffix} host-tools/bin/gnatlink
+cp -a %{_bindir}/gnatbind%{hostsuffix} host-tools/bin/gnatbind
+cp -a %{_bindir}/gcc%{hostsuffix} host-tools/bin/gcc
+ln -sf %{_libdir} host-tools/%{_lib}
 export PATH="`pwd`/host-tools/bin:$PATH"
 %endif
 #%if 0%{?gcc_target_arch:1}
@@ -2069,8 +2067,8 @@
 # temporary workaround for a miscompilation of hash functions in java code
 GCJ_EXTRA_FLAGS="-marm"
 %endif
-CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" XCFLAGS="$RPM_OPT_FLAGS" \
-TCFLAGS="$RPM_OPT_FLAGS" GCJFLAGS="$RPM_OPT_FLAGS $GCJ_EXTRA_FLAGS" \
+CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" XCFLAGS="%{optflags}" \
+TCFLAGS="%{optflags}" GCJFLAGS="%{optflags} $GCJ_EXTRA_FLAGS" \
 ../configure \
 	--prefix=%{_prefix} \
 	--infodir=%{_infodir} \
@@ -2079,13 +2077,13 @@
 	--libexecdir=%{_libdir} \
 	--enable-languages=$languages \
 	$ENABLE_CHECKING \
-	--with-gxx-include-dir=%{_prefix}/include/c++/%{gcc_dir_version} \
+	--with-gxx-include-dir=%{_includedir}/c++/%{gcc_dir_version} \
 	--enable-ssp \
 	--disable-libssp \
 %if 0%{!?build_libvtv:1}
 	--disable-libvtv \
 %endif
-%ifarch %mpx_arch
+%ifarch %{mpx_arch}
 	--enable-libmpx \
 %endif
 	--disable-plugin \
@@ -2106,11 +2104,11 @@
 	--enable-__cxa_atexit \
 	--enable-libstdcxx-allocator=new \
 	--disable-libstdcxx-pch \
-%if 0%{suse_version} <= 1320
+%if 0%{?suse_version} <= 1320
 	--with-default-libstdcxx-abi=gcc4-compatible \
 %endif
 	--enable-version-specific-runtime-libs \
-%if 0%{suse_version} > 1100
+%if 0%{?suse_version} > 1100
 	--enable-linker-build-id \
 %endif
 	--enable-linux-futex \
@@ -2127,7 +2125,7 @@
 	--target=%{gcc_target_arch} \
 	--disable-nls \
 %if 0%{?sysroot:1}
-	--with-sysroot=%sysroot \
+	--with-sysroot=%{sysroot} \
 %else
 	--with-sysroot=%{_prefix}/%{gcc_target_arch} \
 %endif
@@ -2141,10 +2139,10 @@
 %endif
 %endif
 %if 0%{?binutils_os:1}
-	--with-build-time-tools=/usr/%{binutils_os}/bin \
+	--with-build-time-tools=%{_prefix}/%{binutils_os}/bin \
 %endif
 %if "%{TARGET_ARCH}" == "spu"
-	--with-gxx-include-dir=%sysroot/include/c++/%{gcc_dir_version} \
+	--with-gxx-include-dir=%{sysroot}/include/c++/%{gcc_dir_version} \
 	--with-newlib \
 %endif
 %endif
@@ -2176,7 +2174,7 @@
         --with-cpu=default32 \
 %endif
 %if "%{TARGET_ARCH}" == "powerpc64le"
-%if %{suse_version} >= 1315 && %{suse_version} != 1320
+%if 0%{?suse_version} >= 1315 && 0%{?suse_version} != 1320
 	--with-cpu=power8 \
 	--with-tune=power8 \
 %else
@@ -2211,7 +2209,7 @@
 	--with-tune=generic \
 %endif
 %if "%{TARGET_ARCH}" == "s390"
-%if %{suse_version} >= 1310
+%if 0%{?suse_version} >= 1310
         --with-tune=zEC12 --with-arch=z196 \
 %else
 	--with-tune=z9-109 --with-arch=z900 \
@@ -2220,7 +2218,7 @@
 	--enable-decimal-float \
 %endif
 %if "%{TARGET_ARCH}" == "s390x"
-%if %{suse_version} >= 1310
+%if 0%{?suse_version} >= 1310
         --with-tune=zEC12 --with-arch=z196 \
 %else
 	--with-tune=z9-109 --with-arch=z900 \
@@ -2243,7 +2241,7 @@
 #%ifarch x86_64 ppc64le s390x
 #make profiledbootstrap STAGE1_CFLAGS="$STAGE1_FLAGS" BOOT_CFLAGS="$RPM_OPT_FLAGS" $PARALLEL
 #%else
-make STAGE1_CFLAGS="$STAGE1_FLAGS" BOOT_CFLAGS="$RPM_OPT_FLAGS" $PARALLEL
+make STAGE1_CFLAGS="$STAGE1_FLAGS" BOOT_CFLAGS="%{optflags}" $PARALLEL
 #%endif
 make info
 %if 0%{?building_libjava:1}
@@ -2267,54 +2265,54 @@
 cd obj-%{GCCDIST}
 # Work around tail/head -1 changes
 export _POSIX2_VERSION=199209
-export LIBRARY_PATH=$RPM_BUILD_ROOT%{libsubdir}:$RPM_BUILD_ROOT%{mainlibdirbi}
+export LIBRARY_PATH=%{buildroot}%{libsubdir}:%{buildroot}%{mainlibdirbi}
 %if 0%{?building_libffi:1}
-make -C %{GCCDIST}/libffi install DESTDIR=$RPM_BUILD_ROOT
+make -C %{GCCDIST}/libffi install DESTDIR=%{buildroot}
 # re-install the includes from the main multilib
-make -C %{GCCDIST}/libffi/include install DESTDIR=$RPM_BUILD_ROOT
+make -C %{GCCDIST}/libffi/include install DESTDIR=%{buildroot}
 %else
 %if 0%{?building_libjava:1}
-make -C %{GCCDIST}/libjava install DESTDIR=$RPM_BUILD_ROOT
-make -C gcc java.install-man DESTDIR=$RPM_BUILD_ROOT
-make -C gcc java.install-common DESTDIR=$RPM_BUILD_ROOT
-make -C gcc install-common DESTDIR=$RPM_BUILD_ROOT COMPILERS='jc1$(exeext) jvgenmain$(exeext)'
+make -C %{GCCDIST}/libjava install DESTDIR=%{buildroot}
+make -C gcc java.install-man DESTDIR=%{buildroot}
+make -C gcc java.install-common DESTDIR=%{buildroot}
+make -C gcc install-common DESTDIR=%{buildroot} COMPILERS='jc1$(exeext) jvgenmain$(exeext)'
 # copy the libstdc++ API reference
 cp -r %{GCCDIST}/libstdc++-v3/doc/doxygen/html ../libstdc++-v3/doc/html/api
 # install-common also installs collect2, gcov and the g++ and gfortran driver
 %if %{build_cp}
-rm $RPM_BUILD_ROOT%{_prefix}/bin/g++%{binsuffix}
+rm %{buildroot}%{_bindir}/g++%{binsuffix}
 %endif
 %if %{build_fortran}
-rm $RPM_BUILD_ROOT%{_prefix}/bin/gfortran%{binsuffix}
+rm %{buildroot}%{_bindir}/gfortran%{binsuffix}
 %endif
-rm $RPM_BUILD_ROOT%{_prefix}/bin/gcov%{binsuffix}
-rm $RPM_BUILD_ROOT%{_prefix}/bin/gcov-tool%{binsuffix}
-rm $RPM_BUILD_ROOT%{libsubdir}/collect2
+rm %{buildroot}%{_bindir}/gcov%{binsuffix}
+rm %{buildroot}%{_bindir}/gcov-tool%{binsuffix}
+rm %{buildroot}%{libsubdir}/collect2
 %else
-make install DESTDIR=$RPM_BUILD_ROOT
+make install DESTDIR=%{buildroot}
 %if %{build_java}
-make -C gcc java.uninstall DESTDIR=$RPM_BUILD_ROOT
-make -C gcc java.install-info DESTDIR=$RPM_BUILD_ROOT
-rm $RPM_BUILD_ROOT%{_prefix}/bin/jcf-dump%{binsuffix}
-rm $RPM_BUILD_ROOT%{_mandir}/man1/jcf-dump%{binsuffix}.1
-rm $RPM_BUILD_ROOT%{libsubdir}/jc1
-rm $RPM_BUILD_ROOT%{libsubdir}/jvgenmain
+make -C gcc java.uninstall DESTDIR=%{buildroot}
+make -C gcc java.install-info DESTDIR=%{buildroot}
+rm %{buildroot}%{_bindir}/jcf-dump%{binsuffix}
+rm %{buildroot}%{_mandir}/man1/jcf-dump%{binsuffix}.1
+rm %{buildroot}%{libsubdir}/jc1
+rm %{buildroot}%{libsubdir}/jvgenmain
 %endif
 %endif
 %endif
 
 # Remove libffi installed files if we did not want to build it
 %if !0%{?building_libffi:1}
-rm -f $RPM_BUILD_ROOT%{mainlibdir}/libffi.*
+rm -f %{buildroot}%{mainlibdir}/libffi.*
 %if %{biarch}
-  rm -f $RPM_BUILD_ROOT%{mainlibdirbi}/libffi.*
+  rm -f %{buildroot}%{mainlibdirbi}/libffi.*
 %endif
-rm -f $RPM_BUILD_ROOT%{libsubdir}/include/ffi.h
-rm -f $RPM_BUILD_ROOT%{libsubdir}/include/ffitarget.h
-rm -f $RPM_BUILD_ROOT%{_mandir}/man3/ffi%{binsuffix}.3*
-rm -f $RPM_BUILD_ROOT%{_mandir}/man3/ffi_call%{binsuffix}.3*
-rm -f $RPM_BUILD_ROOT%{_mandir}/man3/ffi_prep_cif%{binsuffix}.3*
-rm -f $RPM_BUILD_ROOT%{_mandir}/man3/ffi_prep_cif_var%{binsuffix}.3*
+rm -f %{buildroot}%{libsubdir}/include/ffi.h
+rm -f %{buildroot}%{libsubdir}/include/ffitarget.h
+rm -f %{buildroot}%{_mandir}/man3/ffi%{binsuffix}.3*
+rm -f %{buildroot}%{_mandir}/man3/ffi_call%{binsuffix}.3*
+rm -f %{buildroot}%{_mandir}/man3/ffi_prep_cif%{binsuffix}.3*
+rm -f %{buildroot}%{_mandir}/man3/ffi_prep_cif_var%{binsuffix}.3*
 %endif
 
 # Remove some useless .la files
@@ -2322,18 +2320,18 @@
     libgomp libstdc++ libsupc++ libgcj-tools libgij libgo \
     libasan libatomic libitm libtsan libcilkrts liblsan libubsan libvtv \
     libgomp-plugin-host_nonshm libmpx libmpxwrappers libstdc++fs; do
-  rm -f $RPM_BUILD_ROOT%{versmainlibdir}/$lib.la
+  rm -f %{buildroot}%{versmainlibdir}/$lib.la
 %if %{biarch}
-  rm -f $RPM_BUILD_ROOT%{versmainlibdirbi}/$lib.la
+  rm -f %{buildroot}%{versmainlibdirbi}/$lib.la
 %endif
 done
 
-mkdir -p $RPM_BUILD_ROOT%{_libdir}
+mkdir -p %{buildroot}%{_libdir}
 %if %{biarch}
 %if %{build_primary_64bit}
-mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib
+mkdir -p %{buildroot}%{_prefix}/lib
 %else
-mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib64
+mkdir -p %{buildroot}%{_prefix}/lib64
 %endif
 %endif
 
@@ -2363,7 +2361,7 @@
       exit 1
     fi
 
-    cat > $RPM_BUILD_ROOT%{_prefix}/include/c++/%{gcc_dir_version}/%{GCCDIST}/bits/c++config.h <<EOF
+    cat > %{buildroot}%{_includedir}/c++/%{gcc_dir_version}/%{GCCDIST}/bits/c++config.h <<EOF
 #ifndef _CPP_CPPCONFIG_WRAPPER
 #define _CPP_CPPCONFIG_WRAPPER 1
 #include <bits/wordsize.h>
@@ -2377,9 +2375,9 @@
     break
   fi
 done
-rm -rf $RPM_BUILD_ROOT%{_prefix}/include/c++/%{gcc_dir_version}/%{GCCDIST}/[36]*
+rm -rf %{buildroot}%{_includedir}/c++/%{gcc_dir_version}/%{GCCDIST}/[36]*
 if ! test -z "$dir_ml"; then
-  ln -s . $RPM_BUILD_ROOT%{_prefix}/include/c++/%{gcc_dir_version}/%{GCCDIST}/$dir_ml
+  ln -s . %{buildroot}%{_includedir}/c++/%{gcc_dir_version}/%{GCCDIST}/$dir_ml
 fi
 %endif
 
@@ -2390,7 +2388,7 @@
 %else
 %if %{build_fortran}
   libgfortran \
-%ifarch %quadmath_arch
+%ifarch %{quadmath_arch}
   libquadmath \
 %endif
 %endif
@@ -2404,73 +2402,73 @@
   libgo \
 %endif
   libgomp \
-%ifarch %atomic_arch
+%ifarch %{atomic_arch}
   libatomic \
 %endif
-%ifarch %itm_arch
+%ifarch %{itm_arch}
   libitm \
 %endif
-%ifarch %asan_arch
+%ifarch %{asan_arch}
   libasan \
 %endif
-%ifarch %tsan_arch
+%ifarch %{tsan_arch}
   libtsan \
 %endif
-%ifarch %cilkrts_arch
+%ifarch %{cilkrts_arch}
   libcilkrts \
 %endif
-%ifarch %lsan_arch
+%ifarch %{lsan_arch}
   liblsan \
 %endif
-%ifarch %ubsan_arch
+%ifarch %{ubsan_arch}
   libubsan \
 %endif
-%ifarch %vtv_arch
+%ifarch %{vtv_arch}
   libvtv \
 %endif
-%ifarch %mpx_arch
+%ifarch %{mpx_arch}
   libmpx libmpxwrappers \
 %endif
 %endif
     ; do
-  for lib in `find $RPM_BUILD_ROOT%{versmainlibdir} -maxdepth 1 -name $libname.so.*`; do
-    mv $lib $RPM_BUILD_ROOT%{mainlibdir}/
+  for lib in `find %{buildroot}%{versmainlibdir} -maxdepth 1 -name $libname.so.*`; do
+    mv $lib %{buildroot}%{mainlibdir}/
   done
-  ln -sf %{mainlibdir}/`readlink $RPM_BUILD_ROOT%{versmainlibdir}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'`  \
-         $RPM_BUILD_ROOT%{versmainlibdir}/$libname.so
+  ln -sf %{mainlibdir}/`readlink %{buildroot}%{versmainlibdir}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'`  \
+         %{buildroot}%{versmainlibdir}/$libname.so
 %if %{biarch}
-  if test -d $RPM_BUILD_ROOT%{versmainlibdirbi}; then
-    for lib in `find $RPM_BUILD_ROOT%{versmainlibdirbi} -maxdepth 1 -name "$libname.so.*"`; do
-      mv $lib $RPM_BUILD_ROOT%{mainlibdirbi}/
+  if test -d %{buildroot}%{versmainlibdirbi}; then
+    for lib in `find %{buildroot}%{versmainlibdirbi} -maxdepth 1 -name "$libname.so.*"`; do
+      mv $lib %{buildroot}%{mainlibdirbi}/
     done
-    ln -sf %{mainlibdirbi}/`readlink $RPM_BUILD_ROOT%{versmainlibdirbi}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'`  \
-         $RPM_BUILD_ROOT%{versmainlibdirbi}/$libname.so
+    ln -sf %{mainlibdirbi}/`readlink %{buildroot}%{versmainlibdirbi}/$libname.so | sed -e 's/\(.*\.so\.[^\.]*\).*/\1/'`  \
+         %{buildroot}%{versmainlibdirbi}/$libname.so
   fi
 %endif
 done
 # FIXME, tsan and lsan are not multilib
-%ifarch %tsan_arch
+%ifarch %{tsan_arch}
 %if %{biarch}
-rm -f $RPM_BUILD_ROOT%{versmainlibdirbi}/libtsan.so
+rm -f %{buildroot}%{versmainlibdirbi}/libtsan.so
 %endif
 %endif
-%ifarch %lsan_arch
+%ifarch %{lsan_arch}
 %if %{biarch}
-rm -f $RPM_BUILD_ROOT%{versmainlibdirbi}/liblsan.so
+rm -f %{buildroot}%{versmainlibdirbi}/liblsan.so
 %endif
 %endif
 %if %{build_cp}
 %if !0%{?building_libjava:1}
 # And we want to move the shlib gdb pretty printers to a more sane
 # place so ldconfig does not complain
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdir}
-mv $RPM_BUILD_ROOT%{mainlibdir}/libstdc++.so.*-gdb.py $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdir}/
-sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdir}/libstdc++.so.*-gdb.py
+mkdir -p %{buildroot}%{_datadir}/gdb/auto-load%{mainlibdir}
+mv %{buildroot}%{mainlibdir}/libstdc++.so.*-gdb.py %{buildroot}%{_datadir}/gdb/auto-load%{mainlibdir}/
+sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' %{buildroot}%{_datadir}/gdb/auto-load%{mainlibdir}/libstdc++.so.*-gdb.py
 %if %{biarch}
-  if test -d $RPM_BUILD_ROOT%{versmainlibdirbi}; then
-    mkdir -p $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdirbi}
-    mv $RPM_BUILD_ROOT%{mainlibdirbi}/libstdc++.so.*-gdb.py $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdirbi}/
-    sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' $RPM_BUILD_ROOT%{_datadir}/gdb/auto-load%{mainlibdirbi}/libstdc++.so.*-gdb.py
+  if test -d %{buildroot}%{versmainlibdirbi}; then
+    mkdir -p %{buildroot}%{_datadir}/gdb/auto-load%{mainlibdirbi}
+    mv %{buildroot}%{mainlibdirbi}/libstdc++.so.*-gdb.py %{buildroot}%{_datadir}/gdb/auto-load%{mainlibdirbi}/
+    sed -i -e '/^libdir/s/\/gcc\/%{GCCDIST}\/%{gcc_dir_version}//g' %{buildroot}%{_datadir}/gdb/auto-load%{mainlibdirbi}/libstdc++.so.*-gdb.py
   fi
 %endif
 %endif
@@ -2479,67 +2477,67 @@
 # libgcj_bc is special as the .so file is actually a different
 # library as the library refered to by the SONAME which should
 # be a simple link to our libgcj.
-for lib in `find $RPM_BUILD_ROOT%{versmainlibdir} -maxdepth 1 -name libgcj_bc.so.*`; do
+for lib in `find %{buildroot}%{versmainlibdir} -maxdepth 1 -name libgcj_bc.so.*`; do
   rm $lib
 done
-ln -s libgcj.so.%{libgcj_sover} $RPM_BUILD_ROOT%{mainlibdir}/libgcj_bc.so.%{libgcj_bc_sover}
+ln -s libgcj.so.%{libgcj_sover} %{buildroot}%{mainlibdir}/libgcj_bc.so.%{libgcj_bc_sover}
 %if %{biarch_libjava}
-for lib in `find $RPM_BUILD_ROOT%{versmainlibdirbi} -maxdepth 1 -name libgcj_bc.so.*`; do
+for lib in `find %{buildroot}%{versmainlibdirbi} -maxdepth 1 -name libgcj_bc.so.*`; do
   rm $lib
 done
-ln -s libgcj.so.%{libgcj_sover} $RPM_BUILD_ROOT%{mainlibdirbi}/libgcj_bc.so.%{libgcj_bc_sover}
+ln -s libgcj.so.%{libgcj_sover} %{buildroot}%{mainlibdirbi}/libgcj_bc.so.%{libgcj_bc_sover}
 %endif
-mv $RPM_BUILD_ROOT%{libsubdir}/pkgconfig $RPM_BUILD_ROOT%{_libdir}/
+mv %{buildroot}%{libsubdir}/pkgconfig %{buildroot}%{_libdir}/
 %endif
 
 # Move libgcc_s around
-if test -L $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so; then
-  rm -f $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so
-  ln -sf /%{_lib}/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdir}/libgcc_s.so
+if test -L %{buildroot}/%{_lib}/libgcc_s.so; then
+  rm -f %{buildroot}/%{_lib}/libgcc_s.so
+  ln -sf /%{_lib}/libgcc_s.so.%{libgcc_s} %{buildroot}%{versmainlibdir}/libgcc_s.so
 else
-  mv $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdir}/
+  mv %{buildroot}/%{_lib}/libgcc_s.so %{buildroot}%{versmainlibdir}/
 fi
-chmod a+x $RPM_BUILD_ROOT/%{_lib}/libgcc_s.so.%{libgcc_s}
+chmod a+x %{buildroot}/%{_lib}/libgcc_s.so.%{libgcc_s}
 %if %{biarch}
 %if %{build_primary_64bit}
-if test -L $RPM_BUILD_ROOT/lib/libgcc_s.so; then
-  rm -f $RPM_BUILD_ROOT/lib/libgcc_s.so
-  ln -sf /lib/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi32}/libgcc_s.so
+if test -L %{buildroot}/lib/libgcc_s.so; then
+  rm -f %{buildroot}/lib/libgcc_s.so
+  ln -sf /lib/libgcc_s.so.%{libgcc_s} %{buildroot}%{versmainlibdirbi32}/libgcc_s.so
 else
-  mv $RPM_BUILD_ROOT/lib/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi32}/
+  mv %{buildroot}/lib/libgcc_s.so %{buildroot}%{versmainlibdirbi32}/
 fi
-ln -sf %{versmainlibdirbi32}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi32}/libgcc_s_32.so
-chmod a+x $RPM_BUILD_ROOT/lib/libgcc_s.so.%{libgcc_s}
+ln -sf %{versmainlibdirbi32}/libgcc_s.so %{buildroot}%{versmainlibdirbi32}/libgcc_s_32.so
+chmod a+x %{buildroot}/lib/libgcc_s.so.%{libgcc_s}
 %else
 # 32-bit biarch systems
-if test -L $RPM_BUILD_ROOT/lib64/libgcc_s.so; then
-  rm -f $RPM_BUILD_ROOT/lib64/libgcc_s.so
-  ln -sf /lib64/libgcc_s.so.%{libgcc_s} $RPM_BUILD_ROOT%{versmainlibdirbi64}/libgcc_s.so
+if test -L %{buildroot}/lib64/libgcc_s.so; then
+  rm -f %{buildroot}/lib64/libgcc_s.so
+  ln -sf /lib64/libgcc_s.so.%{libgcc_s} %{buildroot}%{versmainlibdirbi64}/libgcc_s.so
 else
-  mv $RPM_BUILD_ROOT/lib64/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi64}/
+  mv %{buildroot}/lib64/libgcc_s.so %{buildroot}%{versmainlibdirbi64}/
 fi
-ln -sf %{versmainlibdirbi64}/libgcc_s.so $RPM_BUILD_ROOT%{versmainlibdirbi64}/libgcc_s_64.so
-chmod a+x $RPM_BUILD_ROOT/lib64/libgcc_s.so.%{libgcc_s}
+ln -sf %{versmainlibdirbi64}/libgcc_s.so %{buildroot}%{versmainlibdirbi64}/libgcc_s_64.so
+chmod a+x %{buildroot}/lib64/libgcc_s.so.%{libgcc_s}
 %endif
 %endif
 
 %if %{build_ada}
-mv $RPM_BUILD_ROOT%{libsubdir}/adalib/lib*-*.so $RPM_BUILD_ROOT%{_libdir}
-ln -sf %{_libdir}/libgnarl%{binsuffix}.so $RPM_BUILD_ROOT%{libsubdir}/adalib/libgnarl.so
-ln -sf %{_libdir}/libgnat%{binsuffix}.so $RPM_BUILD_ROOT%{libsubdir}/adalib/libgnat.so
-chmod a+x $RPM_BUILD_ROOT%{_libdir}/libgna*-*.so
+mv %{buildroot}%{libsubdir}/adalib/lib*-*.so %{buildroot}%{_libdir}
+ln -sf %{_libdir}/libgnarl%{binsuffix}.so %{buildroot}%{libsubdir}/adalib/libgnarl.so
+ln -sf %{_libdir}/libgnat%{binsuffix}.so %{buildroot}%{libsubdir}/adalib/libgnat.so
+chmod a+x %{buildroot}%{_libdir}/libgna*-*.so
 %if %{biarch}
-mv $RPM_BUILD_ROOT%{versmainlibdirbi}/adalib/lib*-*.so $RPM_BUILD_ROOT%{mainlibdirbi}/
-ln -sf %{mainlibdirbi}/libgnarl%{binsuffix}.so $RPM_BUILD_ROOT%{versmainlibdirbi}/adalib/libgnarl.so
-ln -sf %{mainlibdirbi}/libgnat%{binsuffix}.so $RPM_BUILD_ROOT%{versmainlibdirbi}/adalib/libgnarl.so
-chmod a+x $RPM_BUILD_ROOT%{mainlibdirbi}/libgna*-*.so
+mv %{buildroot}%{versmainlibdirbi}/adalib/lib*-*.so %{buildroot}%{mainlibdirbi}/
+ln -sf %{mainlibdirbi}/libgnarl%{binsuffix}.so %{buildroot}%{versmainlibdirbi}/adalib/libgnarl.so
+ln -sf %{mainlibdirbi}/libgnat%{binsuffix}.so %{buildroot}%{versmainlibdirbi}/adalib/libgnarl.so
+chmod a+x %{buildroot}%{mainlibdirbi}/libgna*-*.so
 %endif
 %endif
 
-rm -f $RPM_BUILD_ROOT%{_prefix}/bin/c++%{binsuffix}
+rm -f %{buildroot}%{_bindir}/c++%{binsuffix}
 
 # Remove some crap from the .la files:
-for l in `find $RPM_BUILD_ROOT -name '*.la'`; do
+for l in `find %{buildroot} -name '*.la'`; do
   echo "changing $l"
 # -e '/^dependency_libs/s|%{libsubdir}/\([^.]*\)\.la |%{_libdir}/\1\.la |g'
   sed -e '/^dependency_libs/s| -L%{_builddir}/[^ ]*||g' \
@@ -2558,121 +2556,121 @@
   mv $l.new $l
 done
 
-%if 0%{?run_tests:1} 
+%if 0%{?run_tests:1}
 cp `find . -name "*.sum"` ../testresults/
 cp `find . -name "*.log"  \! -name "config.log" | grep -v 'acats.\?/tests' ` ../testresults/
 chmod 644 ../testresults/*
 %endif
 %if %{build_cp}
 # Find C++ and Java headers
-find $RPM_BUILD_ROOT%{_prefix}/include/c++ \
+find %{buildroot}%{_includedir}/c++ \
   -regex ".*/\(org\|gcj\|gnu\|java\|javax\)" -prune \
   -o \( -type d -printf "%%%%dir " , \
-        -printf "%{_prefix}/include/c++/%%P\n" \) > ../c++-headers
+        -printf "%{_includedir}/c++/%%P\n" \) > ../c++-headers
 %endif
 # Remove files that we do not need to clean up filelist
-rm -f $RPM_BUILD_ROOT%{_prefix}/bin/%{GCCDIST}-*
-rm -rf $RPM_BUILD_ROOT%{libsubdir}/install-tools
+rm -f %{buildroot}%{_bindir}/%{GCCDIST}-*
+rm -rf %{buildroot}%{libsubdir}/install-tools
 #rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig/libgcj%{binsuffix}.pc
-rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/zutil.h
-rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/linux/a.out.h
-rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/linux/vt.h
-rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/asm-generic/socket.h
-rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/bits/mathdef.h
-rm -f $RPM_BUILD_ROOT%{libsubdir}/include-fixed/sys/ucontext.h
+rm -f %{buildroot}%{libsubdir}/include-fixed/zutil.h
+rm -f %{buildroot}%{libsubdir}/include-fixed/linux/a.out.h
+rm -f %{buildroot}%{libsubdir}/include-fixed/linux/vt.h
+rm -f %{buildroot}%{libsubdir}/include-fixed/asm-generic/socket.h
+rm -f %{buildroot}%{libsubdir}/include-fixed/bits/mathdef.h
+rm -f %{buildroot}%{libsubdir}/include-fixed/sys/ucontext.h
 # no plugins
-rm -rf $RPM_BUILD_ROOT%{libsubdir}/plugin
-rm -f  $RPM_BUILD_ROOT%{_infodir}/dir
+rm -rf %{buildroot}%{libsubdir}/plugin
+rm -f  %{buildroot}%{_infodir}/dir
 
 %if 0%{?building_libjava:1}
 # gcj -static doesn't work properly anyway, unless using --whole-archive
 # let's save the space instead.
-find $RPM_BUILD_ROOT -name libgcj.a \
+find %{buildroot} -name libgcj.a \
 	-o -name libgcj-tools.a \
 	-o -name libgij.a \
 	-o -name libjvm.a \
 	-o -name libgcj_bc.a \
   | xargs rm -f
 
-find $RPM_BUILD_ROOT -name libgcj.spec | xargs \
+find %{buildroot} -name libgcj.spec | xargs \
   sed -i -e 's/lib: /&%%{static:%%eJava programs cannot be linked statically}/'
 
 # security files have broken install locations, also they cause conflicts
 # between libgcj versions.  Simply delete them here, libgcj will use its
 # defaults in this case (which is what these files contain anyway).
-rm -f $RPM_BUILD_ROOT%{libsubdir}/logging.properties
-rm -r $RPM_BUILD_ROOT%{libsubdir}/security
+rm -f %{buildroot}%{libsubdir}/logging.properties
+rm -r %{buildroot}%{libsubdir}/security
 %endif
 
 %if 0%{?building_libffi:1}
 # Move libffi headers, remove empty libffi libtool file
-mkdir -p $RPM_BUILD_ROOT%{_prefix}/include
-mv $RPM_BUILD_ROOT%{libsubdir}/include/ffitarget.h $RPM_BUILD_ROOT%{_prefix}/include/
-mv $RPM_BUILD_ROOT%{libsubdir}/include/ffi.h $RPM_BUILD_ROOT%{_prefix}/include/
-rm -f $RPM_BUILD_ROOT%{mainlibdir}/libffi.la
+mkdir -p %{buildroot}%{_prefix}/include
+mv %{buildroot}%{libsubdir}/include/ffitarget.h %{buildroot}%{_includedir}/
+mv %{buildroot}%{libsubdir}/include/ffi.h %{buildroot}%{_includedir}/
+rm -f %{buildroot}%{mainlibdir}/libffi.la
 %if %{biarch}
-rm -f $RPM_BUILD_ROOT%{mainlibdirbi}/libffi.la
+rm -f %{buildroot}%{mainlibdirbi}/libffi.la
 %endif
 # Generate a simple pkg-config file
-mkdir -p $RPM_BUILD_ROOT%{_libdir}/pkgconfig
-echo -e 'Name: libffi\nVersion: 3.0.9\nDescription: libffi\nLibs: -lffi' > $RPM_BUILD_ROOT%{_libdir}/pkgconfig/libffi.pc
+mkdir -p %{buildroot}%{_libdir}/pkgconfig
+echo -e 'Name: libffi\nVersion: 3.0.9\nDescription: libffi\nLibs: -lffi' > %{buildroot}%{_libdir}/pkgconfig/libffi.pc
 %endif
 
 %if %{build_java}
 %if !%{build_libjava}
-rm $RPM_BUILD_ROOT%{_mandir}/man1/jv-convert%{binsuffix}.1
-rm $RPM_BUILD_ROOT%{_mandir}/man1/gcj-dbtool%{binsuffix}.1
-rm $RPM_BUILD_ROOT%{_mandir}/man1/gij%{binsuffix}.1
-rm $RPM_BUILD_ROOT%{_mandir}/man1/grmic%{binsuffix}.1
-rm $RPM_BUILD_ROOT%{_mandir}/man1/gc-analyze%{binsuffix}.1
-rm $RPM_BUILD_ROOT%{_mandir}/man1/aot-compile%{binsuffix}.1
-rm $RPM_BUILD_ROOT%{_mandir}/man1/rebuild-gcj-db%{binsuffix}.1
-%endif
-rm -f $RPM_BUILD_ROOT%{_datadir}/gcc%{binsuffix}/python/libjava/aotcompile.py
-rm -f $RPM_BUILD_ROOT%{_datadir}/gcc%{binsuffix}/python/libjava/classfile.py
-%endif
-rm -f $RPM_BUILD_ROOT%{_mandir}/man7/fsf-funding.7
-rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gfdl.7
-rm -f $RPM_BUILD_ROOT%{_mandir}/man7/gpl.7
-rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
+rm %{buildroot}%{_mandir}/man1/jv-convert%{binsuffix}.1
+rm %{buildroot}%{_mandir}/man1/gcj-dbtool%{binsuffix}.1
+rm %{buildroot}%{_mandir}/man1/gij%{binsuffix}.1
+rm %{buildroot}%{_mandir}/man1/grmic%{binsuffix}.1
+rm %{buildroot}%{_mandir}/man1/gc-analyze%{binsuffix}.1
+rm %{buildroot}%{_mandir}/man1/aot-compile%{binsuffix}.1
+rm %{buildroot}%{_mandir}/man1/rebuild-gcj-db%{binsuffix}.1
+%endif
+rm -f %{buildroot}%{_datadir}/gcc%{binsuffix}/python/libjava/aotcompile.py
+rm -f %{buildroot}%{_datadir}/gcc%{binsuffix}/python/libjava/classfile.py
+%endif
+rm -f %{buildroot}%{_mandir}/man7/fsf-funding.7
+rm -f %{buildroot}%{_mandir}/man7/gfdl.7
+rm -f %{buildroot}%{_mandir}/man7/gpl.7
+rm -f %{buildroot}%{_libdir}/libiberty.a
 %if %{biarch}
 %if %{build_primary_64bit}
-rm -f $RPM_BUILD_ROOT%{_prefix}/lib/libiberty.a
+rm -f %{buildroot}%{_prefix}/lib/libiberty.a
 %else
-rm -f $RPM_BUILD_ROOT%{_prefix}/lib64/libiberty.a
+rm -f %{buildroot}%{_libdir}/libiberty.a
 %endif
 %endif
-rm -f $RPM_BUILD_ROOT%{libsubdir}/liblto_plugin.a
-rm -f $RPM_BUILD_ROOT%{libsubdir}/liblto_plugin.la
+rm -f %{buildroot}%{libsubdir}/liblto_plugin.a
+rm -f %{buildroot}%{libsubdir}/liblto_plugin.la
 %if %{build_go}
 # gccgo.info isn't properly versioned
-rm $RPM_BUILD_ROOT%{_infodir}/gccgo.info*
+rm %{buildroot}%{_infodir}/gccgo.info*
 %endif
 
 %if 0%{?building_libjava:1}
 # For building libjava only we need to delete other info docs
-rm $RPM_BUILD_ROOT%{_infodir}/cp-tools.info*
+rm %{buildroot}%{_infodir}/cp-tools.info*
 # Remove stale manpages for binaries we do not build
-rm $RPM_BUILD_ROOT%{_mandir}/man1/gjdoc%{binsuffix}.1
+rm %{buildroot}%{_mandir}/man1/gjdoc%{binsuffix}.1
 # For building the java frontend we need to copy the ecj jar
-mkdir -p $RPM_BUILD_ROOT%{libsubdir}
-cp $RPM_SOURCE_DIR/ecj.jar $RPM_BUILD_ROOT%{libsubdir}
+mkdir -p %{buildroot}%{libsubdir}
+cp $RPM_SOURCE_DIR/ecj.jar %{buildroot}%{libsubdir}
 %else
 # For regular build, some info files do not get renamed properly.
 # Do so here.
-mv $RPM_BUILD_ROOT%{_infodir}/libgomp.info $RPM_BUILD_ROOT%{_infodir}/libgomp%{binsuffix}.info
-%ifarch %itm_arch
-mv $RPM_BUILD_ROOT%{_infodir}/libitm.info $RPM_BUILD_ROOT%{_infodir}/libitm%{binsuffix}.info
-%endif
-%if %{build_fortran} 
-%ifarch %quadmath_arch
-mv $RPM_BUILD_ROOT%{_infodir}/libquadmath.info $RPM_BUILD_ROOT%{_infodir}/libquadmath%{binsuffix}.info
+mv %{buildroot}%{_infodir}/libgomp.info %{buildroot}%{_infodir}/libgomp%{binsuffix}.info
+%ifarch %{itm_arch}
+mv %{buildroot}%{_infodir}/libitm.info %{buildroot}%{_infodir}/libitm%{binsuffix}.info
+%endif
+%if %{build_fortran}
+%ifarch %{quadmath_arch}
+mv %{buildroot}%{_infodir}/libquadmath.info %{buildroot}%{_infodir}/libquadmath%{binsuffix}.info
 %endif
 %endif
 %if %{build_ada}
-mv $RPM_BUILD_ROOT%{_infodir}/gnat-style.info $RPM_BUILD_ROOT%{_infodir}/gnat-style%{binsuffix}.info
-mv $RPM_BUILD_ROOT%{_infodir}/gnat_rm.info $RPM_BUILD_ROOT%{_infodir}/gnat_rm%{binsuffix}.info
-mv $RPM_BUILD_ROOT%{_infodir}/gnat_ugn.info $RPM_BUILD_ROOT%{_infodir}/gnat_ugn%{binsuffix}.info
+mv %{buildroot}%{_infodir}/gnat-style.info %{buildroot}%{_infodir}/gnat-style%{binsuffix}.info
+mv %{buildroot}%{_infodir}/gnat_rm.info %{buildroot}%{_infodir}/gnat_rm%{binsuffix}.info
+mv %{buildroot}%{_infodir}/gnat_ugn.info %{buildroot}%{_infodir}/gnat_ugn%{binsuffix}.info
 %endif
 %endif
 
@@ -2689,9 +2687,9 @@
 %install_info --info-dir=%{_infodir} %{_infodir}/gccint%{binsuffix}.info.gz
 %install_info --info-dir=%{_infodir} %{_infodir}/gccinstall%{binsuffix}.info.gz
 %install_info --info-dir=%{_infodir} %{_infodir}/libgomp%{binsuffix}.info.gz
-%if %{build_fortran} 
+%if %{build_fortran}
 %install_info --info-dir=%{_infodir} %{_infodir}/gfortran%{binsuffix}.info.gz
-%ifarch %quadmath_arch
+%ifarch %{quadmath_arch}
 %install_info --info-dir=%{_infodir} %{_infodir}/libquadmath%{binsuffix}.info.gz
 %endif
 %endif
@@ -2713,7 +2711,7 @@
 %install_info_delete --info-dir=%{_infodir} %{_infodir}/libgomp%{binsuffix}.info.gz
 %if %{build_fortran}
 %install_info_delete --info-dir=%{_infodir} %{_infodir}/gfortran%{binsuffix}.info.gz
-%ifarch %quadmath_arch
+%ifarch %{quadmath_arch}
 %install_info_delete --info-dir=%{_infodir} %{_infodir}/libquadmath%{binsuffix}.info.gz
 %endif
 %endif
@@ -2740,12 +2738,12 @@
 %dir %{libsubdir}/64
 %endif
 %endif
-%{_prefix}/bin/gcc%{binsuffix}
-%{_prefix}/bin/gcov%{binsuffix}
-%{_prefix}/bin/gcov-tool%{binsuffix}
-%{_prefix}/bin/gcc-ar%{binsuffix}
-%{_prefix}/bin/gcc-nm%{binsuffix}
-%{_prefix}/bin/gcc-ranlib%{binsuffix}
+%{_bindir}/gcc%{binsuffix}
+%{_bindir}/gcov%{binsuffix}
+%{_bindir}/gcov-tool%{binsuffix}
+%{_bindir}/gcc-ar%{binsuffix}
+%{_bindir}/gcc-nm%{binsuffix}
+%{_bindir}/gcc-ranlib%{binsuffix}
 %{libsubdir}/collect2
 %{libsubdir}/lto1
 %{libsubdir}/lto-wrapper
@@ -2753,7 +2751,7 @@
 %{libsubdir}/include-fixed/README
 %{libsubdir}/include-fixed/limits.h
 %{libsubdir}/include-fixed/syslimits.h
-%if %{suse_version} < 1030
+%if 0%{?suse_version} < 1030
 %{libsubdir}/include-fixed/wchar.h
 %endif
 %{libsubdir}/include/omp.h
@@ -2771,7 +2769,7 @@
 %{libsubdir}/include/stdalign.h
 %{libsubdir}/include/stdatomic.h
 %{libsubdir}/include/openacc.h
-%ifarch %sparc
+%ifarch %{sparc}
 %{libsubdir}/include/visintrin.h
 %endif
 %ifarch ppc ppc64 ppc64le
@@ -2865,10 +2863,10 @@
 %ifarch m68k
 %{libsubdir}/include/math-68881.h
 %endif
-%ifarch %cilkrts_arch
+%ifarch %{cilkrts_arch}
 %{libsubdir}/include/cilk
 %endif
-%ifarch %asan_arch
+%ifarch %{asan_arch}
 %{libsubdir}/include/sanitizer
 %endif
 %versmainlib *crt*.o
@@ -2881,53 +2879,53 @@
 %versmainlib libgomp-plugin-host_nonshm.so
 %versmainlib libgomp-plugin-host_nonshm.so.1
 %versmainlib libgomp-plugin-host_nonshm.so.1.0.0
-%ifarch %itm_arch
+%ifarch %{itm_arch}
 %versmainlib libitm.so
 %versmainlib libitm.a
 %versmainlib libitm.spec
 %endif
-%ifarch %atomic_arch
+%ifarch %{atomic_arch}
 %versmainlib libatomic.so
 %versmainlib libatomic.a
 %endif
-%ifarch %asan_arch
+%ifarch %{asan_arch}
 %versmainlib libasan.so
 %versmainlib libasan.a
 %versmainlib libasan_preinit.o
 %endif
-%ifarch %tsan_arch
+%ifarch %{tsan_arch}
 %versmainlib libtsan.so
 %versmainlib libtsan.a
 %endif
-%ifarch %cilkrts_arch
+%ifarch %{cilkrts_arch}
 %versmainlib libcilkrts.so
 %versmainlib libcilkrts.a
 %versmainlib libcilkrts.spec
 %endif
-%ifarch %lsan_arch
+%ifarch %{lsan_arch}
 %versmainlib liblsan.so
 %versmainlib liblsan.a
 %endif
-%ifarch %ubsan_arch
+%ifarch %{ubsan_arch}
 %versmainlib libubsan.so
 %versmainlib libubsan.a
 %endif
-%ifarch %asan_arch %ubsan_arch %tsan_arch %lsan_arch
+%ifarch %{asan_arch} %{ubsan_arch} %{tsan_arch} %{lsan_arch}
 %versmainlib libsanitizer.spec
 %endif
-%ifarch %vtv_arch
+%ifarch %{vtv_arch}
 %versmainlib libvtv.so
 %versmainlib libvtv.a
 %endif
-%ifarch %mpx_arch
+%ifarch %{mpx_arch}
 %versmainlib libmpx.so
 %versmainlib libmpx.a
 %versmainlib libmpxwrappers.so
 %versmainlib libmpxwrappers.a
 %versmainlib libmpx.spec
 %endif
-%doc %{_mandir}/man1/gcc%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gcov%{binsuffix}.1.gz
+%{_mandir}/man1/gcc%{binsuffix}.1.gz
+%{_mandir}/man1/gcov%{binsuffix}.1.gz
 
 %if %{separate_biarch}
 %files -n gcc5%{separate_biarch_suffix}
@@ -2942,47 +2940,47 @@
 %versbiarchlib libgomp-plugin-host_nonshm.so
 %versbiarchlib libgomp-plugin-host_nonshm.so.1
 %versbiarchlib libgomp-plugin-host_nonshm.so.1.0.0
-%ifarch %itm_arch
+%ifarch %{itm_arch}
 %versbiarchlib libitm.so
 %versbiarchlib libitm.a
 %versbiarchlib libitm.spec
 %endif
-%ifarch %atomic_arch
+%ifarch %{atomic_arch}
 %versbiarchlib libatomic.a
 %versbiarchlib libatomic.so
 %endif
-%ifarch %asan_arch
+%ifarch %{asan_arch}
 %versbiarchlib libasan.a
 %versbiarchlib libasan.so
 %versbiarchlib libasan_preinit.o
 %endif
-%ifarch %ubsan_arch
+%ifarch %{ubsan_arch}
 %versbiarchlib libubsan.a
 %versbiarchlib libubsan.so
 %endif
-%ifarch %cilkrts_arch
+%ifarch %{cilkrts_arch}
 %versbiarchlib libcilkrts.a
 %versbiarchlib libcilkrts.so
 %versbiarchlib libcilkrts.spec
 %endif
 %if 0
-%ifarch %tsan_arch
+%ifarch %{tsan_arch}
 %versbiarchlib libtsan.a
 %versbiarchlib libtsan.so
 %endif
-%ifarch %lsan_arch
+%ifarch %{lsan_arch}
 %versbiarchlib liblsan.a
 %versbiarchlib liblsan.so
 %endif
 %endif
-%ifarch %asan_arch %ubsan_arch %tsan_arch %lsan_arch
+%ifarch %{asan_arch} %{ubsan_arch} %{tsan_arch} %{lsan_arch}
 %versbiarchlib libsanitizer.spec
 %endif
-%ifarch %vtv_arch
+%ifarch %{vtv_arch}
 %versbiarchlib libvtv.a
 %versbiarchlib libvtv.so
 %endif
-%ifarch %mpx_arch
+%ifarch %{mpx_arch}
 %versbiarchlib libmpx.so
 %versbiarchlib libmpx.a
 %versbiarchlib libmpxwrappers.so
@@ -3001,15 +2999,15 @@
 %dir %{_libdir}/gcc
 %dir %{_libdir}/gcc/%{GCCDIST}
 %dir %{libsubdir}
-%{_prefix}/bin/g++%{binsuffix}
-%doc %{_mandir}/man1/g++%{binsuffix}.1.gz
+%{_bindir}/g++%{binsuffix}
+%{_mandir}/man1/g++%{binsuffix}.1.gz
 %{libsubdir}/cc1plus
 
 %if %{separate_biarch}
 %files c++%{separate_biarch_suffix}
 %defattr(-,root,root)
 # empty - only for the dependency
-%if %{suse_version} < 1310
+%if 0%{?suse_version} < 1310
 %doc README
 %endif
 %endif
@@ -3086,7 +3084,7 @@
 %biarchlib libgomp.so.%{libgomp_sover}*
 %endif
 
-%ifarch %asan_arch
+%ifarch %{asan_arch}
 %files -n libasan%{libasan_sover}%{libasan_suffix}
 %defattr(-,root,root)
 %mainlib libasan.so.%{libasan_sover}*
@@ -3098,7 +3096,7 @@
 %endif
 %endif
 
-%ifarch %lsan_arch
+%ifarch %{lsan_arch}
 %files -n liblsan%{liblsan_sover}%{liblsan_suffix}
 %defattr(-,root,root)
 %mainlib liblsan.so.%{liblsan_sover}*
@@ -3112,7 +3110,7 @@
 %endif
 %endif
 
-%ifarch %tsan_arch
+%ifarch %{tsan_arch}
 %files -n libtsan%{libtsan_sover}%{libtsan_suffix}
 %defattr(-,root,root)
 %mainlib libtsan.so.%{libtsan_sover}*
@@ -3126,7 +3124,7 @@
 %endif
 %endif
 
-%ifarch %atomic_arch
+%ifarch %{atomic_arch}
 %files -n libatomic%{libatomic_sover}%{libatomic_suffix}
 %defattr(-,root,root)
 %mainlib libatomic.so.%{libatomic_sover}*
@@ -3138,7 +3136,7 @@
 %endif
 %endif
 
-%ifarch %itm_arch
+%ifarch %{itm_arch}
 %files -n libitm%{libitm_sover}%{libitm_suffix}
 %defattr(-,root,root)
 %mainlib libitm.so.%{libitm_sover}*
@@ -3150,7 +3148,7 @@
 %endif
 %endif
 
-%ifarch %cilkrts_arch
+%ifarch %{cilkrts_arch}
 %files -n libcilkrts%{libcilkrts_sover}%{libcilkrts_suffix}
 %defattr(-,root,root)
 %mainlib libcilkrts.so.%{libcilkrts_sover}*
@@ -3162,7 +3160,7 @@
 %endif
 %endif
 
-%ifarch %ubsan_arch
+%ifarch %{ubsan_arch}
 %files -n libubsan%{libubsan_sover}%{libubsan_suffix}
 %defattr(-,root,root)
 %mainlib libubsan.so.%{libubsan_sover}*
@@ -3174,7 +3172,7 @@
 %endif
 %endif
 
-%ifarch %vtv_arch
+%ifarch %{vtv_arch}
 %files -n libvtv%{libvtv_sover}%{libvtv_suffix}
 %defattr(-,root,root)
 %mainlib libvtv.so.%{libvtv_sover}*
@@ -3186,7 +3184,7 @@
 %endif
 %endif
 
-%ifarch %mpx_arch
+%ifarch %{mpx_arch}
 %files -n libmpx%{libmpx_sover}%{libmpx_suffix}
 %defattr(-,root,root)
 %mainlib libmpx.so.%{libmpx_sover}*
@@ -3212,7 +3210,7 @@
 %files fortran
 %defattr(-,root,root)
 %dir %{libsubdir}/finclude
-%{_prefix}/bin/gfortran%{binsuffix}
+%{_bindir}/gfortran%{binsuffix}
 %{libsubdir}/f951
 %{libsubdir}/finclude/*
 %versmainlib libgfortran.a
@@ -3220,13 +3218,13 @@
 %versmainlib libgfortran.spec
 %versmainlib libgfortranbegin.a
 %versmainlib libcaf_single.a
-%ifarch %quadmath_arch
+%ifarch %{quadmath_arch}
 %{libsubdir}/include/quadmath.h
 %{libsubdir}/include/quadmath_weak.h
 %versmainlib libquadmath.a
 %versmainlib libquadmath.so
 %endif
-%doc %{_mandir}/man1/gfortran%{binsuffix}.1.gz
+%{_mandir}/man1/gfortran%{binsuffix}.1.gz
 
 %if %{separate_biarch}
 %files fortran%{separate_biarch_suffix}
@@ -3238,7 +3236,7 @@
 %versbiarchlib libgfortran.spec
 %versbiarchlib libgfortranbegin.a
 %versbiarchlib libcaf_single.a
-%ifarch %quadmath_arch
+%ifarch %{quadmath_arch}
 %versbiarchlib libquadmath.a
 %versbiarchlib libquadmath.so
 %endif
@@ -3254,7 +3252,7 @@
 %biarchlib libgfortran.so.%{libgfortran_sover}*
 %endif
 
-%ifarch %quadmath_arch
+%ifarch %{quadmath_arch}
 %files -n libquadmath%{libquadmath_sover}%{libquadmath_suffix}
 %defattr(-,root,root)
 %mainlib libquadmath.so.%{libquadmath_sover}*
@@ -3269,28 +3267,28 @@
 
 %files info
 %defattr(-,root,root)
-%doc %{_infodir}/cpp%{binsuffix}.info*.gz
-%doc %{_infodir}/cppinternals%{binsuffix}.info*.gz
-%doc %{_infodir}/gcc%{binsuffix}.info*.gz
-%doc %{_infodir}/gccint%{binsuffix}.info*.gz
-%doc %{_infodir}/gccinstall%{binsuffix}.info*.gz
-%doc %{_infodir}/libgomp%{binsuffix}.info*.gz
-%ifarch %itm_arch
-%doc %{_infodir}/libitm%{binsuffix}.info*.gz
+%{_infodir}/cpp%{binsuffix}.info*.gz
+%{_infodir}/cppinternals%{binsuffix}.info*.gz
+%{_infodir}/gcc%{binsuffix}.info*.gz
+%{_infodir}/gccint%{binsuffix}.info*.gz
+%{_infodir}/gccinstall%{binsuffix}.info*.gz
+%{_infodir}/libgomp%{binsuffix}.info*.gz
+%ifarch %{itm_arch}
+%{_infodir}/libitm%{binsuffix}.info*.gz
 %endif
 %if %{build_fortran}
-%doc %{_infodir}/gfortran%{binsuffix}.info*.gz
-%ifarch %quadmath_arch
-%doc %{_infodir}/libquadmath%{binsuffix}.info*.gz
+%{_infodir}/gfortran%{binsuffix}.info*.gz
+%ifarch %{quadmath_arch}
+%{_infodir}/libquadmath%{binsuffix}.info*.gz
 %endif
 %endif
 %if %{build_java}
-%doc %{_infodir}/gcj%{binsuffix}.info*.gz
+%{_infodir}/gcj%{binsuffix}.info*.gz
 %endif
 %if %{build_ada}
-%doc %{_infodir}/gnat-style%{binsuffix}.info*gz
-%doc %{_infodir}/gnat_rm%{binsuffix}.info*gz
-%doc %{_infodir}/gnat_ugn%{binsuffix}.info*gz
+%{_infodir}/gnat-style%{binsuffix}.info*gz
+%{_infodir}/gnat_rm%{binsuffix}.info*gz
+%{_infodir}/gnat_ugn%{binsuffix}.info*gz
 %endif
 
 %files -n cpp5
@@ -3298,10 +3296,10 @@
 %dir %{_libdir}/gcc
 %dir %{_libdir}/gcc/%{GCCDIST}
 %dir %{libsubdir}
-%{_prefix}/bin/cpp%{binsuffix}
+%{_bindir}/cpp%{binsuffix}
 %{libsubdir}/cc1
 #%{libsubdir}/specs
-%doc %{_mandir}/man1/cpp%{binsuffix}.1.gz
+%{_mandir}/man1/cpp%{binsuffix}.1.gz
 
 %if %{build_objc}
 %files objc
@@ -3338,7 +3336,7 @@
 %files obj-c++%{separate_biarch_suffix}
 %defattr(-,root,root)
 # empty - only for the dependency
-%if %{suse_version} < 1310
+%if 0%{?suse_version} < 1310
 %doc README
 %endif
 %endif
@@ -3350,7 +3348,7 @@
 %dir %{_libdir}/gcc
 %dir %{_libdir}/gcc/%{GCCDIST}
 %dir %{libsubdir}
-%{_prefix}/bin/gnat*
+%{_bindir}/gnat*
 %dir %{versmainlibdir}/adalib
 %{versmainlibdir}/adainclude
 %{versmainlibdir}/adalib/*.ali
@@ -3387,26 +3385,26 @@
 %if 0%{?building_libjava:1}
 %files -n gcc5-java
 %defattr(-,root,root)
-%{_prefix}/bin/gcj%{binsuffix}
-%{_prefix}/bin/gcjh%{binsuffix}
-%{_prefix}/bin/gcj-dbtool%{binsuffix}
-%{_prefix}/bin/jcf-dump%{binsuffix}
-%{_prefix}/bin/jv-convert%{binsuffix}
-%{_prefix}/bin/gc-analyze%{binsuffix}
-%{_prefix}/bin/aot-compile%{binsuffix}
-%{_prefix}/bin/rebuild-gcj-db%{binsuffix}
+%{_bindir}/gcj%{binsuffix}
+%{_bindir}/gcjh%{binsuffix}
+%{_bindir}/gcj-dbtool%{binsuffix}
+%{_bindir}/jcf-dump%{binsuffix}
+%{_bindir}/jv-convert%{binsuffix}
+%{_bindir}/gc-analyze%{binsuffix}
+%{_bindir}/aot-compile%{binsuffix}
+%{_bindir}/rebuild-gcj-db%{binsuffix}
 %{libsubdir}/jc1
 %{libsubdir}/jvgenmain
 %{libsubdir}/ecj.jar
 %{libsubdir}/ecj1
-%doc %{_mandir}/man1/gcj%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gcjh%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gcj-dbtool%{binsuffix}.1.gz
-%doc %{_mandir}/man1/jcf-dump%{binsuffix}.1.gz
-%doc %{_mandir}/man1/jv-convert%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gc-analyze%{binsuffix}.1.gz
-%doc %{_mandir}/man1/aot-compile%{binsuffix}.1.gz
-%doc %{_mandir}/man1/rebuild-gcj-db%{binsuffix}.1.gz
+%{_mandir}/man1/gcj%{binsuffix}.1.gz
+%{_mandir}/man1/gcjh%{binsuffix}.1.gz
+%{_mandir}/man1/gcj-dbtool%{binsuffix}.1.gz
+%{_mandir}/man1/jcf-dump%{binsuffix}.1.gz
+%{_mandir}/man1/jv-convert%{binsuffix}.1.gz
+%{_mandir}/man1/gc-analyze%{binsuffix}.1.gz
+%{_mandir}/man1/aot-compile%{binsuffix}.1.gz
+%{_mandir}/man1/rebuild-gcj-db%{binsuffix}.1.gz
 %endif
 %endif
 
@@ -3446,12 +3444,12 @@
 
 %files -n libgcj-jar%{libdevel_suffix}
 %defattr(-,root,root)
-%{_prefix}/share/java/libgcj-%{gcc_dir_version}.jar
-%{_prefix}/share/java/libgcj-tools-%{gcc_dir_version}.jar
+%{_datadir}/java/libgcj-%{gcc_dir_version}.jar
+%{_datadir}/java/libgcj-tools-%{gcc_dir_version}.jar
 
 %files -n libgcj-devel%{libdevel_suffix}
 %defattr(-,root,root)
-%dir %{_prefix}/include/c++
+%dir %{_includedir}/c++
 %dir %{libsubdir}
 %dir %{libsubdir}/include
 %dir %{gxxinclude}
@@ -3484,32 +3482,32 @@
 
 %files -n gcc5-gij
 %defattr(-,root,root)
-%{_prefix}/bin/gij%{binsuffix}
-%{_prefix}/bin/gappletviewer%{binsuffix}
-%{_prefix}/bin/gjar%{binsuffix}
-%{_prefix}/bin/gjarsigner%{binsuffix}
-%{_prefix}/bin/gjavah%{binsuffix}
-%{_prefix}/bin/gkeytool%{binsuffix}
-%{_prefix}/bin/gnative2ascii%{binsuffix}
-%{_prefix}/bin/gorbd%{binsuffix}
-%{_prefix}/bin/grmic%{binsuffix}
-%{_prefix}/bin/grmid%{binsuffix}
-%{_prefix}/bin/grmiregistry%{binsuffix}
-%{_prefix}/bin/gserialver%{binsuffix}
-%{_prefix}/bin/gtnameserv%{binsuffix}
-%doc %{_mandir}/man1/gij%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gappletviewer%{binsuffix}.1.gz
-%doc %{_mandir}/man1/grmic%{binsuffix}.1.gz
-%doc %{_mandir}/man1/grmid%{binsuffix}.1.gz
-%doc %{_mandir}/man1/grmiregistry%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gkeytool%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gjar%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gjarsigner%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gjavah%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gnative2ascii%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gorbd%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gserialver%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gtnameserv%{binsuffix}.1.gz
+%{_bindir}/gij%{binsuffix}
+%{_bindir}/gappletviewer%{binsuffix}
+%{_bindir}/gjar%{binsuffix}
+%{_bindir}/gjarsigner%{binsuffix}
+%{_bindir}/gjavah%{binsuffix}
+%{_bindir}/gkeytool%{binsuffix}
+%{_bindir}/gnative2ascii%{binsuffix}
+%{_bindir}/gorbd%{binsuffix}
+%{_bindir}/grmic%{binsuffix}
+%{_bindir}/grmid%{binsuffix}
+%{_bindir}/grmiregistry%{binsuffix}
+%{_bindir}/gserialver%{binsuffix}
+%{_bindir}/gtnameserv%{binsuffix}
+%{_mandir}/man1/gij%{binsuffix}.1.gz
+%{_mandir}/man1/gappletviewer%{binsuffix}.1.gz
+%{_mandir}/man1/grmic%{binsuffix}.1.gz
+%{_mandir}/man1/grmid%{binsuffix}.1.gz
+%{_mandir}/man1/grmiregistry%{binsuffix}.1.gz
+%{_mandir}/man1/gkeytool%{binsuffix}.1.gz
+%{_mandir}/man1/gjar%{binsuffix}.1.gz
+%{_mandir}/man1/gjarsigner%{binsuffix}.1.gz
+%{_mandir}/man1/gjavah%{binsuffix}.1.gz
+%{_mandir}/man1/gnative2ascii%{binsuffix}.1.gz
+%{_mandir}/man1/gorbd%{binsuffix}.1.gz
+%{_mandir}/man1/gserialver%{binsuffix}.1.gz
+%{_mandir}/man1/gtnameserv%{binsuffix}.1.gz
 %endif
 %endif
 
@@ -3533,21 +3531,22 @@
 
 %post -n libffi-devel%{libdevel_suffix}
 %install_info --info-dir=%{_infodir} %{_infodir}/libffi%{binsuffix}.info.gz
+
 %postun -n libffi-devel%{libdevel_suffix}
 %install_info_delete --info-dir=%{_infodir} %{_infodir}/libffi%{binsuffix}.info.gz
 
 %files -n libffi-devel%{libdevel_suffix}
 %defattr(-,root,root)
-%{_prefix}/include/ffi.h
-%{_prefix}/include/ffitarget.h
+%{_includedir}/ffi.h
+%{_includedir}/ffitarget.h
 %mainlib libffi.so
 %mainlib libffi.a
 %{_libdir}/pkgconfig/libffi.pc
-%doc %{_infodir}/libffi%{binsuffix}.info.gz
-%doc %{_mandir}/man3/ffi%{binsuffix}.3.gz
-%doc %{_mandir}/man3/ffi_call%{binsuffix}.3.gz
-%doc %{_mandir}/man3/ffi_prep_cif%{binsuffix}.3.gz
-%doc %{_mandir}/man3/ffi_prep_cif_var%{binsuffix}.3.gz
+%{_infodir}/libffi%{binsuffix}.info.gz
+%{_mandir}/man3/ffi%{binsuffix}.3.gz
+%{_mandir}/man3/ffi_call%{binsuffix}.3.gz
+%{_mandir}/man3/ffi_prep_cif%{binsuffix}.3.gz
+%{_mandir}/man3/ffi_prep_cif_var%{binsuffix}.3.gz
 
 %if %{separate_biarch}
 %files -n libffi-devel%{libdevel_suffix}%{separate_biarch_suffix}
@@ -3561,22 +3560,22 @@
 %if %{build_go}
 %files go
 %defattr(-,root,root)
-%{_prefix}/bin/gccgo%{binsuffix}
-%{_prefix}/bin/go%{binsuffix}
-%{_prefix}/bin/gofmt%{binsuffix}
+%{_bindir}/gccgo%{binsuffix}
+%{_bindir}/go%{binsuffix}
+%{_bindir}/gofmt%{binsuffix}
 %{libsubdir}/go1
 %versmainlib libgo.a
 %versmainlib libgo.so
 %versmainlib libgobegin.a
 %versmainlib libnetgo.a
 %versmainlib libgolibbegin.a
-%versmainlibdir/cgo
-%dir %mainlibdir/go
-%dir %mainlibdir/go/%{gcc_dir_version}
-%mainlibdir/go/%{gcc_dir_version}/%{GCCDIST}
-%doc %{_mandir}/man1/gccgo%{binsuffix}.1.gz
-%doc %{_mandir}/man1/go%{binsuffix}.1.gz
-%doc %{_mandir}/man1/gofmt%{binsuffix}.1.gz
+%{versmainlibdir}/cgo
+%dir %{mainlibdir}/go
+%dir %{mainlibdir}/go/%{gcc_dir_version}
+%{mainlibdir}/go/%{gcc_dir_version}/%{GCCDIST}
+%{_mandir}/man1/gccgo%{binsuffix}.1.gz
+%{_mandir}/man1/go%{binsuffix}.1.gz
+%{_mandir}/man1/gofmt%{binsuffix}.1.gz
 
 %if %{separate_biarch}
 %files go%{separate_biarch_suffix}
@@ -3586,9 +3585,9 @@
 %versbiarchlib libgobegin.a
 %versbiarchlib libnetgo.a
 %versbiarchlib libgolibbegin.a
-%dir %mainlibdirbi/go
-%dir %mainlibdirbi/go/%{gcc_dir_version}
-%mainlibdirbi/go/%{gcc_dir_version}/%{GCCDIST}
+%dir %{mainlibdirbi}/go
+%dir %{mainlibdirbi}/go/%{gcc_dir_version}
+%{mainlibdirbi}/go/%{gcc_dir_version}/%{GCCDIST}
 %endif
 
 %files -n libgo%{libgo_sover}%{libgo_suffix}
