Hello community,

here is the log from the commit of package gcc7 for openSUSE:Factory checked in 
at 2018-01-20 11:23:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gcc7 (Old)
 and      /work/SRC/openSUSE:Factory/.gcc7.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gcc7"

Sat Jan 20 11:23:17 2018 rev:11 rq:566443 version:7.2.1+r256737

Changes:
--------
--- /work/SRC/openSUSE:Factory/gcc7/cross-aarch64-gcc7.changes  2017-11-30 
12:34:07.122510992 +0100
+++ /work/SRC/openSUSE:Factory/.gcc7.new/cross-aarch64-gcc7.changes     
2018-01-20 11:23:23.109706752 +0100
@@ -1,0 +2,42 @@
+Tue Jan 16 11:29:06 UTC 2018 - [email protected]
+
+- Update to gcc-7-branch head (r256737)
+  * Includes gcc7-pr81481.diff
+  * Adds backport of retpoline support via -mindirect-branch=,
+    -mfunction-return= and friends.  [bnc#1074621]
+
+-------------------------------------------------------------------
+Mon Jan 15 12:24:39 UTC 2018 - [email protected]
+
+- Handle new debug sources filelist variant debugsourcefiles.list.
+- Prune libstdc++ includes for crosses.
+
+-------------------------------------------------------------------
+Wed Jan 10 08:01:42 UTC 2018 - [email protected]
+
+- Do not install target parts of cross compilers into the sysroot
+  but instead fixup manually (once required).
+
+-------------------------------------------------------------------
+Tue Jan  2 13:29:18 UTC 2018 - [email protected]
+
+- Update to gcc-7-branch head (r256067).
+- Deal with C++ being disabled for crosses.
+- For crosses that have a target triplet not matching that of binutils
+  create symlinks to as and ld in the GCC private directory.
+
+-------------------------------------------------------------------
+Tue Dec 12 12:41:34 UTC 2017 - [email protected]
+
+- Split cross-avr into -bootstrap and non-bootstrap variant for avr-libc
+  integration.
+
+-------------------------------------------------------------------
+Fri Dec  8 10:32:47 UTC 2017 - [email protected]
+
+- Add gcc7-avoid-fixinc-error.diff to avoid install-host aborting
+  on non-existing target include directory.  Remove --with-build-sysroot=/
+  hack from icecream cross configs, no longer prune include-fixed for
+  them to retain a GCC provided limits.h.  Remove installed install-tools.
+
+-------------------------------------------------------------------
cross-arm-gcc7.changes: same change
New Changes file:

--- /dev/null   2018-01-05 12:14:39.755488130 +0100
+++ /work/SRC/openSUSE:Factory/.gcc7.new/cross-avr-gcc7-bootstrap.changes       
2018-01-20 11:23:23.973666361 +0100
@@ -0,0 +1,315 @@
+-------------------------------------------------------------------
+Tue Jan 16 11:29:06 UTC 2018 - [email protected]
+
+- Update to gcc-7-branch head (r256737)
+  * Includes gcc7-pr81481.diff
+  * Adds backport of retpoline support via -mindirect-branch=,
+    -mfunction-return= and friends.  [bnc#1074621]
+
+-------------------------------------------------------------------
+Mon Jan 15 12:24:39 UTC 2018 - [email protected]
+
+- Handle new debug sources filelist variant debugsourcefiles.list.
+- Prune libstdc++ includes for crosses.
+
+-------------------------------------------------------------------
+Wed Jan 10 08:01:42 UTC 2018 - [email protected]
+
+- Do not install target parts of cross compilers into the sysroot
+  but instead fixup manually (once required).
+
+-------------------------------------------------------------------
+Tue Jan  2 13:29:18 UTC 2018 - [email protected]
+
+- Update to gcc-7-branch head (r256067).
+- Deal with C++ being disabled for crosses.
+- For crosses that have a target triplet not matching that of binutils
+  create symlinks to as and ld in the GCC private directory.
+
+-------------------------------------------------------------------
+Tue Dec 12 12:41:34 UTC 2017 - [email protected]
+
+- Split cross-avr into -bootstrap and non-bootstrap variant for avr-libc
+  integration.
+
+-------------------------------------------------------------------
+Fri Dec  8 10:32:47 UTC 2017 - [email protected]
+
+- Add gcc7-avoid-fixinc-error.diff to avoid install-host aborting
+  on non-existing target include directory.  Remove --with-build-sysroot=/
+  hack from icecream cross configs, no longer prune include-fixed for
+  them to retain a GCC provided limits.h.  Remove installed install-tools.
+
+-------------------------------------------------------------------
+Thu Nov 23 09:30:47 UTC 2017 - [email protected]
+
+- Add gcc7-pr82248.diff to fix bogus stack probe instruction on ARM.
+  [bnc#1068967]
+
+-------------------------------------------------------------------
+Fri Oct 20 11:12:53 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r253932).
+  * contains fix for PR82445 which is about a RPI1 bootloader
+    miscompile.  [bnc#1061667]
+
+-------------------------------------------------------------------
+Thu Oct  5 09:00:25 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r253435).  [fate#321452, fate#321496]
+  [fate#323972]
+  * contains fix for PR82406 which blocks chromium build.
+- Add gcc7-pr81481.diff to fix a register allocation issue.
+  [bnc#1048861]
+
+-------------------------------------------------------------------
+Wed Sep 27 12:24:55 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r253221).
+  * Includes similar fix to gcc41-ppc32-retaddr.patch, disable the
+    patch but keep the testcase.
+
+-------------------------------------------------------------------
+Mon Sep 25 20:22:09 UTC 2017 - [email protected]
+
+- Add support for zero-sized VLAs and allocas with
+  -fstack-clash-protection.  [bnc #1059075]
+  Changes gcc7-stack-probe.diff.
+
+-------------------------------------------------------------------
+Tue Aug 29 07:17:15 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r251579).
+  * Includes GCC 7.2 release.
+  * Includes gcc7-pr81766.diff and gcc7-go-sigrtmax.patch.
+
+-------------------------------------------------------------------
+Fri Aug 25 04:40:35 UTC 2017 - [email protected]
+
+- Sort tar file list to make cross-* packages build reproducibly
+  (boo#1041090)
+
+-------------------------------------------------------------------
+Tue Aug  8 12:38:37 UTC 2017 - [email protected]
+
+- Add gcc7-pr81766.diff to fix grub2 build.
+
+-------------------------------------------------------------------
+Fri Aug  4 11:41:36 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r250819).
+  * Includes GCC 7.2 RC1.
+  * Includes fix for gcov crash.  [bnc#1050487]
+- Add gcc7-stack-probe.diff for support of -fstack-clash-protection
+  [bnc#1039513].
+- Add gcc7-go-sigrtmax.patch to fix Go build with glibc 2.26.
+
+-------------------------------------------------------------------
+Thu Jun 29 08:54:57 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r249772).
+  * Includes patch for PR81080.  [bnc#1044016]
+  * Includes patch for PR81204.  [bnc#1045732]
+  * Includes patch for PR81112.  [bnc#1043966]
+
+-------------------------------------------------------------------
+Tue Jun 13 08:42:45 UTC 2017 - [email protected]
+
+- Fix cross compiler update-alternatives machinery to make rpmlint
+  happy.
+
+-------------------------------------------------------------------
+Fri Jun  9 11:20:46 UTC 2017 - [email protected]
+
+- Update plugin enablement guard to use %sle_version.  [bnc#1043590]
+
+-------------------------------------------------------------------
+Wed Jun  7 13:18:16 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r248970).
+  * Includes gcc7-pr80593.patch.
+
+-------------------------------------------------------------------
+Tue May 30 07:39:56 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r248590).
+- Add #!BuildIgnore: gcc-PIE also to cross compiler builds.
+
+-------------------------------------------------------------------
+Wed May 17 12:09:04 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r248152)
+- Drop not working SLE-10 build support.
+- For SLE-15 make the i586 compiler generate code for architecture
+  level of x86_64.
+- Add gcc7-pr80593.patch to fix ceph build. [bnc#1025891]
+
+-------------------------------------------------------------------
+Thu May  4 10:12:09 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r247545)
+  * Includes GCC 7.1 release
+- For SLE15 change ppc64le tuning to power9.  [fate#322728]
+- Change tarball compression to xz, BuildRequire xz.
+
+-------------------------------------------------------------------
+Fri Apr 28 12:26:08 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r247368)
+  * Includes GCC 7.1 RC2
+  * Includes ARM ABI fix for PR77728, fixing ABI incompatibility
+    with GCC 4.8.
+
+-------------------------------------------------------------------
+Thu Apr 20 11:17:21 UTC 2017 - [email protected]
+
+- Update to gcc-7-branch head (r247019).
+- Always create nvptx offloading cross spec file.
+- Fix libada provides/conflicts.
+- Package gcov.h.
+- Add #!BuildIgnore: gcc-PIE.
+- Fix update-alternatives.
+
+-------------------------------------------------------------------
+Tue Apr  4 14:44:52 UTC 2017 - [email protected]
+
+- Add update-alternatives for binaries produces by cross compilers.
+- Add nospeccleaner comment, remove legacy norootforbuild and
+  icecream.
+
+-------------------------------------------------------------------
+Fri Mar 31 08:51:09 UTC 2017 - [email protected]
+
+- Update to gcc trunk head (r246609).
+- Add cross-binutils Requires to cross-gcc packages.
+
+-------------------------------------------------------------------
+Mon Mar 27 14:06:43 UTC 2017 - [email protected]
+
+- Really fix libtsan requirement on ppc.  [boo#1030623]
+- Also fix liblsan requirement on pcc.
+
+-------------------------------------------------------------------
+Thu Mar 23 09:59:21 UTC 2017 - [email protected]
+
+- Update to gcc trunk head (r246414).
+- Package gcov-dump.
+- Remove gcc7-debug-dwarf2out-ice.patch.
++++ 118 more lines (skipped)
++++ between /dev/null
++++ and /work/SRC/openSUSE:Factory/.gcc7.new/cross-avr-gcc7-bootstrap.changes
--- /work/SRC/openSUSE:Factory/gcc7/cross-avr-gcc7.changes      2017-11-30 
12:34:09.806413399 +0100
+++ /work/SRC/openSUSE:Factory/.gcc7.new/cross-avr-gcc7.changes 2018-01-20 
11:23:24.161657572 +0100
@@ -1,0 +2,42 @@
+Tue Jan 16 11:29:06 UTC 2018 - [email protected]
+
+- Update to gcc-7-branch head (r256737)
+  * Includes gcc7-pr81481.diff
+  * Adds backport of retpoline support via -mindirect-branch=,
+    -mfunction-return= and friends.  [bnc#1074621]
+
+-------------------------------------------------------------------
+Mon Jan 15 12:24:39 UTC 2018 - [email protected]
+
+- Handle new debug sources filelist variant debugsourcefiles.list.
+- Prune libstdc++ includes for crosses.
+
+-------------------------------------------------------------------
+Wed Jan 10 08:01:42 UTC 2018 - [email protected]
+
+- Do not install target parts of cross compilers into the sysroot
+  but instead fixup manually (once required).
+
+-------------------------------------------------------------------
+Tue Jan  2 13:29:18 UTC 2018 - [email protected]
+
+- Update to gcc-7-branch head (r256067).
+- Deal with C++ being disabled for crosses.
+- For crosses that have a target triplet not matching that of binutils
+  create symlinks to as and ld in the GCC private directory.
+
+-------------------------------------------------------------------
+Tue Dec 12 12:41:34 UTC 2017 - [email protected]
+
+- Split cross-avr into -bootstrap and non-bootstrap variant for avr-libc
+  integration.
+
+-------------------------------------------------------------------
+Fri Dec  8 10:32:47 UTC 2017 - [email protected]
+
+- Add gcc7-avoid-fixinc-error.diff to avoid install-host aborting
+  on non-existing target include directory.  Remove --with-build-sysroot=/
+  hack from icecream cross configs, no longer prune include-fixed for
+  them to retain a GCC provided limits.h.  Remove installed install-tools.
+
+-------------------------------------------------------------------
cross-epiphany-gcc7-bootstrap.changes: same change
cross-epiphany-gcc7.changes: same change
cross-hppa-gcc7.changes: same change
cross-i386-gcc7.changes: same change
cross-m68k-gcc7.changes: same change
cross-mips-gcc7.changes: same change
cross-nvptx-gcc7.changes: same change
cross-ppc64-gcc7.changes: same change
cross-ppc64le-gcc7.changes: same change
cross-rx-gcc7-bootstrap.changes: same change
cross-rx-gcc7.changes: same change
cross-s390x-gcc7.changes: same change
cross-sparc-gcc7.changes: same change
cross-sparc64-gcc7.changes: same change
cross-x86_64-gcc7.changes: same change
gcc7-testresults.changes: same change
gcc7.changes: same change

Old:
----
  gcc-7.2.1+r253932.tar.xz
  gcc7-pr81481.diff

New:
----
  cross-avr-gcc7-bootstrap.changes
  cross-avr-gcc7-bootstrap.spec
  gcc-7.2.1+r256737.tar.xz
  gcc7-avoid-fixinc-error.diff

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ cross-aarch64-gcc7.spec ++++++
--- /var/tmp/diff_new_pack.nhdomk/_old  2018-01-20 11:23:55.592188146 +0100
+++ /var/tmp/diff_new_pack.nhdomk/_new  2018-01-20 11:23:55.596187958 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package cross-aarch64-gcc7
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 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
@@ -78,7 +78,6 @@
 %endif
 
 %if 0%{?gcc_icecream:1}
-%define build_sysroot /
 %define sysroot %{_prefix}/%{gcc_target_arch}
 %else
 # offloading builds newlib in-tree and can install in
@@ -124,6 +123,9 @@
 %if 0%{?gcc_target_newlib:1} && 0%{!?gcc_libc_bootstrap:1}
 BuildRequires:  cross-%cross_arch-newlib-devel
 %endif
+%if 0%{!?gcc_libc_bootstrap:1} && %{cross_arch} == "avr"
+BuildRequires:  avr-libc
+%endif
 %if 0%{?gcc_target_glibc:1}
 BuildRequires:  cross-%cross_arch-glibc-devel
 %endif
@@ -157,7 +159,7 @@
 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
 
 Url:            http://gcc.gnu.org/
-Version:        7.2.1+r253932
+Version:        7.2.1+r256737
 Release:        0
 %define gcc_version %(echo %version | sed 's/+.*//')
 %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
@@ -177,8 +179,8 @@
 Patch10:        gcc5-no-return-gcc43-workaround.patch
 Patch11:        gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
 Patch12:        gcc7-stack-probe.diff
-Patch13:        gcc7-pr81481.diff
 Patch14:        gcc7-pr82248.diff
+Patch15:        gcc7-avoid-fixinc-error.diff
 # A set of patches from the RH srpm
 Patch51:        gcc41-ppc32-retaddr.patch
 # Some patches taken from Debian
@@ -253,8 +255,8 @@
 %patch10
 %patch11
 %patch12
-%patch13
 %patch14
+%patch15
 %patch51
 %patch60
 %patch61
@@ -580,11 +582,7 @@
 
 # install and fixup host parts
 make DESTDIR=$RPM_BUILD_ROOT install-host
-%if 0%{?gcc_icecream:1}
-# with the gcc_icecream setup fixincludes are for the build includes which
-# is wrong - get rid of them
-rm -rf $RPM_BUILD_ROOT/%{targetlibsubdir}/include-fixed
-%endif
+rm -rf $RPM_BUILD_ROOT/%{targetlibsubdir}/install-tools
 rm -f $RPM_BUILD_ROOT/%{targetlibsubdir}/liblto_plugin.la
 # common fixup
 rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
@@ -599,10 +597,32 @@
 export NO_DEBUGINFO_STRIP_DEBUG=true
 %define __debug_install_post %{nil}
 : >../debugfiles.list
+: >../debugsourcefiles.list
 : >../debugsources.list
-make DESTDIR=$RPM_BUILD_ROOT/%{?sysroot:%sysroot} install-target
+# We want shared libraries to reside in the sysroot but the .so symlinks
+# on the host.  Once we have a cross target that has shared libs we need
+# to manually fix up things here like we do for non-cross compilers
+mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
+make DESTDIR=$RPM_BUILD_ROOT install-target
+%if %{build_cp}
+# So we installed libstdc++ headers into %prefix where they conflict
+# with other host compilers.  Rip out the non-target specific parts
+# again.  Note not all cross targets support libstdc++, so create the
+# directory to make things easier.
+mkdir -p $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version}
+find $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version} -mindepth 1 
-maxdepth 1 -type d -a -not -name %{gcc_target_arch} | xargs -r rm -r
+find $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version} -maxdepth 1 -type 
f | xargs -r rm
+# And also remove installed pretty printers which conflict in similar ways
+rm -rf $RPM_BUILD_ROOT/%{_datadir}/gcc%{binsuffix}
 %endif
 %endif
+%endif
+
+%if 0%{?binutils_os:1}
+for prog in as ld; do
+  ln -s /usr/%{binutils_os}/bin/$prog $RPM_BUILD_ROOT%{targetlibsubdir}/
+done
+%endif
 
 # remove docs
 rm -rf $RPM_BUILD_ROOT%{_mandir}
@@ -665,7 +685,11 @@
 # crosses
 %if 0%{!?gcc_accel:1}
 mkdir -p %{buildroot}%{_sysconfdir}/alternatives
-for ex in gcc c++ cpp g++ gcc-ar gcc-nm gcc-ranlib gcov gcov-dump gcov-tool; do
+for ex in gcc cpp \
+%if %{build_cp}
+          c++ g++ \
+%endif
+          gcc-ar gcc-nm gcc-ranlib gcov gcov-dump gcov-tool; do
   ln -s %{_sysconfdir}/alternatives/%{gcc_target_arch}-$ex \
        %{buildroot}%{_bindir}/%{gcc_target_arch}-$ex
 done
@@ -673,9 +697,11 @@
 %post
 %{_sbindir}/update-alternatives \
   --install %{_bindir}/%{gcc_target_arch}-gcc %{gcc_target_arch}-gcc 
%{_bindir}/%{gcc_target_arch}-gcc%{binsuffix} 7 \
-  --slave %{_bindir}/%{gcc_target_arch}-c++ %{gcc_target_arch}-c++ 
%{_bindir}/%{gcc_target_arch}-c++%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-cpp %{gcc_target_arch}-cpp 
%{_bindir}/%{gcc_target_arch}-cpp%{binsuffix} \
+%if %{build_cp}
+  --slave %{_bindir}/%{gcc_target_arch}-c++ %{gcc_target_arch}-c++ 
%{_bindir}/%{gcc_target_arch}-c++%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-g++ %{gcc_target_arch}-g++ 
%{_bindir}/%{gcc_target_arch}-g++%{binsuffix} \
+%endif
   --slave %{_bindir}/%{gcc_target_arch}-gcc-ar %{gcc_target_arch}-gcc-ar 
%{_bindir}/%{gcc_target_arch}-gcc-ar%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-gcc-nm %{gcc_target_arch}-gcc-nm 
%{_bindir}/%{gcc_target_arch}-gcc-nm%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-gcc-ranlib 
%{gcc_target_arch}-gcc-ranlib 
%{_bindir}/%{gcc_target_arch}-gcc-ranlib%{binsuffix} \
@@ -698,9 +724,7 @@
 %{libsubdir}/accel/%{gcc_target_arch}
 %else
 %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
-%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
-%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
@@ -708,9 +732,7 @@
 %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc
-%{_prefix}/bin/%{gcc_target_arch}-c++
 %{_prefix}/bin/%{gcc_target_arch}-cpp
-%{_prefix}/bin/%{gcc_target_arch}-g++
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ar
 %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
@@ -718,15 +740,26 @@
 %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
 %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
-%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
-%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-nm
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ranlib
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
+%if %{build_cp}
+%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-c++
+%{_prefix}/bin/%{gcc_target_arch}-g++
+%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
+%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
+%if 0%{!?gcc_libc_bootstrap:1}
+%if %{cross_arch} == "avr" || 0%{?gcc_target_newlib:1} || 
0%{?gcc_target_glibc:1}
+%{_prefix}/include/c++
+%endif
+%endif
+%endif
 %endif
 %dir %{targetlibsubdir}
 %dir %{_libdir}/gcc/%{gcc_target_arch}

cross-arm-gcc7.spec: same change
++++++ cross-avr-gcc7-bootstrap.spec ++++++
++++ 780 lines (skipped)

++++++ cross-avr-gcc7.spec ++++++
--- /var/tmp/diff_new_pack.nhdomk/_old  2018-01-20 11:23:55.668184592 +0100
+++ /var/tmp/diff_new_pack.nhdomk/_new  2018-01-20 11:23:55.668184592 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package cross-avr-gcc7
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 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
@@ -19,7 +19,7 @@
 %define pkgname cross-avr-gcc7
 %define cross_arch avr
 %define gcc_target_arch avr
-%define gcc_icecream 1
+
 #
 # spec file for package gcc (Version 4.0.1)
 #
@@ -78,7 +78,6 @@
 %endif
 
 %if 0%{?gcc_icecream:1}
-%define build_sysroot /
 %define sysroot %{_prefix}/%{gcc_target_arch}
 %else
 # offloading builds newlib in-tree and can install in
@@ -124,6 +123,9 @@
 %if 0%{?gcc_target_newlib:1} && 0%{!?gcc_libc_bootstrap:1}
 BuildRequires:  cross-%cross_arch-newlib-devel
 %endif
+%if 0%{!?gcc_libc_bootstrap:1} && %{cross_arch} == "avr"
+BuildRequires:  avr-libc
+%endif
 %if 0%{?gcc_target_glibc:1}
 BuildRequires:  cross-%cross_arch-glibc-devel
 %endif
@@ -157,7 +159,7 @@
 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
 
 Url:            http://gcc.gnu.org/
-Version:        7.2.1+r253932
+Version:        7.2.1+r256737
 Release:        0
 %define gcc_version %(echo %version | sed 's/+.*//')
 %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
@@ -177,8 +179,8 @@
 Patch10:        gcc5-no-return-gcc43-workaround.patch
 Patch11:        gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
 Patch12:        gcc7-stack-probe.diff
-Patch13:        gcc7-pr81481.diff
 Patch14:        gcc7-pr82248.diff
+Patch15:        gcc7-avoid-fixinc-error.diff
 # A set of patches from the RH srpm
 Patch51:        gcc41-ppc32-retaddr.patch
 # Some patches taken from Debian
@@ -253,8 +255,8 @@
 %patch10
 %patch11
 %patch12
-%patch13
 %patch14
+%patch15
 %patch51
 %patch60
 %patch61
@@ -580,11 +582,7 @@
 
 # install and fixup host parts
 make DESTDIR=$RPM_BUILD_ROOT install-host
-%if 0%{?gcc_icecream:1}
-# with the gcc_icecream setup fixincludes are for the build includes which
-# is wrong - get rid of them
-rm -rf $RPM_BUILD_ROOT/%{targetlibsubdir}/include-fixed
-%endif
+rm -rf $RPM_BUILD_ROOT/%{targetlibsubdir}/install-tools
 rm -f $RPM_BUILD_ROOT/%{targetlibsubdir}/liblto_plugin.la
 # common fixup
 rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
@@ -599,11 +597,33 @@
 export NO_DEBUGINFO_STRIP_DEBUG=true
 %define __debug_install_post %{nil}
 : >../debugfiles.list
+: >../debugsourcefiles.list
 : >../debugsources.list
-make DESTDIR=$RPM_BUILD_ROOT/%{?sysroot:%sysroot} install-target
+# We want shared libraries to reside in the sysroot but the .so symlinks
+# on the host.  Once we have a cross target that has shared libs we need
+# to manually fix up things here like we do for non-cross compilers
+mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
+make DESTDIR=$RPM_BUILD_ROOT install-target
+%if %{build_cp}
+# So we installed libstdc++ headers into %prefix where they conflict
+# with other host compilers.  Rip out the non-target specific parts
+# again.  Note not all cross targets support libstdc++, so create the
+# directory to make things easier.
+mkdir -p $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version}
+find $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version} -mindepth 1 
-maxdepth 1 -type d -a -not -name %{gcc_target_arch} | xargs -r rm -r
+find $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version} -maxdepth 1 -type 
f | xargs -r rm
+# And also remove installed pretty printers which conflict in similar ways
+rm -rf $RPM_BUILD_ROOT/%{_datadir}/gcc%{binsuffix}
+%endif
 %endif
 %endif
 
+%if 0%{?binutils_os:1}
+for prog in as ld; do
+  ln -s /usr/%{binutils_os}/bin/$prog $RPM_BUILD_ROOT%{targetlibsubdir}/
+done
+%endif
+
 # remove docs
 rm -rf $RPM_BUILD_ROOT%{_mandir}
 rm -rf $RPM_BUILD_ROOT%{_infodir}
@@ -665,7 +685,11 @@
 # crosses
 %if 0%{!?gcc_accel:1}
 mkdir -p %{buildroot}%{_sysconfdir}/alternatives
-for ex in gcc c++ cpp g++ gcc-ar gcc-nm gcc-ranlib gcov gcov-dump gcov-tool; do
+for ex in gcc cpp \
+%if %{build_cp}
+          c++ g++ \
+%endif
+          gcc-ar gcc-nm gcc-ranlib gcov gcov-dump gcov-tool; do
   ln -s %{_sysconfdir}/alternatives/%{gcc_target_arch}-$ex \
        %{buildroot}%{_bindir}/%{gcc_target_arch}-$ex
 done
@@ -673,9 +697,11 @@
 %post
 %{_sbindir}/update-alternatives \
   --install %{_bindir}/%{gcc_target_arch}-gcc %{gcc_target_arch}-gcc 
%{_bindir}/%{gcc_target_arch}-gcc%{binsuffix} 7 \
-  --slave %{_bindir}/%{gcc_target_arch}-c++ %{gcc_target_arch}-c++ 
%{_bindir}/%{gcc_target_arch}-c++%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-cpp %{gcc_target_arch}-cpp 
%{_bindir}/%{gcc_target_arch}-cpp%{binsuffix} \
+%if %{build_cp}
+  --slave %{_bindir}/%{gcc_target_arch}-c++ %{gcc_target_arch}-c++ 
%{_bindir}/%{gcc_target_arch}-c++%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-g++ %{gcc_target_arch}-g++ 
%{_bindir}/%{gcc_target_arch}-g++%{binsuffix} \
+%endif
   --slave %{_bindir}/%{gcc_target_arch}-gcc-ar %{gcc_target_arch}-gcc-ar 
%{_bindir}/%{gcc_target_arch}-gcc-ar%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-gcc-nm %{gcc_target_arch}-gcc-nm 
%{_bindir}/%{gcc_target_arch}-gcc-nm%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-gcc-ranlib 
%{gcc_target_arch}-gcc-ranlib 
%{_bindir}/%{gcc_target_arch}-gcc-ranlib%{binsuffix} \
@@ -698,9 +724,7 @@
 %{libsubdir}/accel/%{gcc_target_arch}
 %else
 %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
-%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
-%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
@@ -708,9 +732,7 @@
 %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc
-%{_prefix}/bin/%{gcc_target_arch}-c++
 %{_prefix}/bin/%{gcc_target_arch}-cpp
-%{_prefix}/bin/%{gcc_target_arch}-g++
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ar
 %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
@@ -718,15 +740,26 @@
 %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
 %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
-%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
-%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-nm
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ranlib
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
+%if %{build_cp}
+%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-c++
+%{_prefix}/bin/%{gcc_target_arch}-g++
+%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
+%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
+%if 0%{!?gcc_libc_bootstrap:1}
+%if %{cross_arch} == "avr" || 0%{?gcc_target_newlib:1} || 
0%{?gcc_target_glibc:1}
+%{_prefix}/include/c++
+%endif
+%endif
+%endif
 %endif
 %dir %{targetlibsubdir}
 %dir %{_libdir}/gcc/%{gcc_target_arch}

++++++ cross-epiphany-gcc7-bootstrap.spec ++++++
--- /var/tmp/diff_new_pack.nhdomk/_old  2018-01-20 11:23:55.696183283 +0100
+++ /var/tmp/diff_new_pack.nhdomk/_new  2018-01-20 11:23:55.696183283 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package cross-epiphany-gcc7-bootstrap
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 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
@@ -79,7 +79,6 @@
 %endif
 
 %if 0%{?gcc_icecream:1}
-%define build_sysroot /
 %define sysroot %{_prefix}/%{gcc_target_arch}
 %else
 # offloading builds newlib in-tree and can install in
@@ -125,6 +124,9 @@
 %if 0%{?gcc_target_newlib:1} && 0%{!?gcc_libc_bootstrap:1}
 BuildRequires:  cross-%cross_arch-newlib-devel
 %endif
+%if 0%{!?gcc_libc_bootstrap:1} && %{cross_arch} == "avr"
+BuildRequires:  avr-libc
+%endif
 %if 0%{?gcc_target_glibc:1}
 BuildRequires:  cross-%cross_arch-glibc-devel
 %endif
@@ -158,7 +160,7 @@
 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
 
 Url:            http://gcc.gnu.org/
-Version:        7.2.1+r253932
+Version:        7.2.1+r256737
 Release:        0
 %define gcc_version %(echo %version | sed 's/+.*//')
 %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
@@ -178,8 +180,8 @@
 Patch10:        gcc5-no-return-gcc43-workaround.patch
 Patch11:        gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
 Patch12:        gcc7-stack-probe.diff
-Patch13:        gcc7-pr81481.diff
 Patch14:        gcc7-pr82248.diff
+Patch15:        gcc7-avoid-fixinc-error.diff
 # A set of patches from the RH srpm
 Patch51:        gcc41-ppc32-retaddr.patch
 # Some patches taken from Debian
@@ -254,8 +256,8 @@
 %patch10
 %patch11
 %patch12
-%patch13
 %patch14
+%patch15
 %patch51
 %patch60
 %patch61
@@ -581,11 +583,7 @@
 
 # install and fixup host parts
 make DESTDIR=$RPM_BUILD_ROOT install-host
-%if 0%{?gcc_icecream:1}
-# with the gcc_icecream setup fixincludes are for the build includes which
-# is wrong - get rid of them
-rm -rf $RPM_BUILD_ROOT/%{targetlibsubdir}/include-fixed
-%endif
+rm -rf $RPM_BUILD_ROOT/%{targetlibsubdir}/install-tools
 rm -f $RPM_BUILD_ROOT/%{targetlibsubdir}/liblto_plugin.la
 # common fixup
 rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
@@ -600,10 +598,32 @@
 export NO_DEBUGINFO_STRIP_DEBUG=true
 %define __debug_install_post %{nil}
 : >../debugfiles.list
+: >../debugsourcefiles.list
 : >../debugsources.list
-make DESTDIR=$RPM_BUILD_ROOT/%{?sysroot:%sysroot} install-target
+# We want shared libraries to reside in the sysroot but the .so symlinks
+# on the host.  Once we have a cross target that has shared libs we need
+# to manually fix up things here like we do for non-cross compilers
+mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
+make DESTDIR=$RPM_BUILD_ROOT install-target
+%if %{build_cp}
+# So we installed libstdc++ headers into %prefix where they conflict
+# with other host compilers.  Rip out the non-target specific parts
+# again.  Note not all cross targets support libstdc++, so create the
+# directory to make things easier.
+mkdir -p $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version}
+find $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version} -mindepth 1 
-maxdepth 1 -type d -a -not -name %{gcc_target_arch} | xargs -r rm -r
+find $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version} -maxdepth 1 -type 
f | xargs -r rm
+# And also remove installed pretty printers which conflict in similar ways
+rm -rf $RPM_BUILD_ROOT/%{_datadir}/gcc%{binsuffix}
 %endif
 %endif
+%endif
+
+%if 0%{?binutils_os:1}
+for prog in as ld; do
+  ln -s /usr/%{binutils_os}/bin/$prog $RPM_BUILD_ROOT%{targetlibsubdir}/
+done
+%endif
 
 # remove docs
 rm -rf $RPM_BUILD_ROOT%{_mandir}
@@ -666,7 +686,11 @@
 # crosses
 %if 0%{!?gcc_accel:1}
 mkdir -p %{buildroot}%{_sysconfdir}/alternatives
-for ex in gcc c++ cpp g++ gcc-ar gcc-nm gcc-ranlib gcov gcov-dump gcov-tool; do
+for ex in gcc cpp \
+%if %{build_cp}
+          c++ g++ \
+%endif
+          gcc-ar gcc-nm gcc-ranlib gcov gcov-dump gcov-tool; do
   ln -s %{_sysconfdir}/alternatives/%{gcc_target_arch}-$ex \
        %{buildroot}%{_bindir}/%{gcc_target_arch}-$ex
 done
@@ -674,9 +698,11 @@
 %post
 %{_sbindir}/update-alternatives \
   --install %{_bindir}/%{gcc_target_arch}-gcc %{gcc_target_arch}-gcc 
%{_bindir}/%{gcc_target_arch}-gcc%{binsuffix} 7 \
-  --slave %{_bindir}/%{gcc_target_arch}-c++ %{gcc_target_arch}-c++ 
%{_bindir}/%{gcc_target_arch}-c++%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-cpp %{gcc_target_arch}-cpp 
%{_bindir}/%{gcc_target_arch}-cpp%{binsuffix} \
+%if %{build_cp}
+  --slave %{_bindir}/%{gcc_target_arch}-c++ %{gcc_target_arch}-c++ 
%{_bindir}/%{gcc_target_arch}-c++%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-g++ %{gcc_target_arch}-g++ 
%{_bindir}/%{gcc_target_arch}-g++%{binsuffix} \
+%endif
   --slave %{_bindir}/%{gcc_target_arch}-gcc-ar %{gcc_target_arch}-gcc-ar 
%{_bindir}/%{gcc_target_arch}-gcc-ar%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-gcc-nm %{gcc_target_arch}-gcc-nm 
%{_bindir}/%{gcc_target_arch}-gcc-nm%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-gcc-ranlib 
%{gcc_target_arch}-gcc-ranlib 
%{_bindir}/%{gcc_target_arch}-gcc-ranlib%{binsuffix} \
@@ -699,9 +725,7 @@
 %{libsubdir}/accel/%{gcc_target_arch}
 %else
 %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
-%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
-%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
@@ -709,9 +733,7 @@
 %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc
-%{_prefix}/bin/%{gcc_target_arch}-c++
 %{_prefix}/bin/%{gcc_target_arch}-cpp
-%{_prefix}/bin/%{gcc_target_arch}-g++
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ar
 %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
@@ -719,15 +741,26 @@
 %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
 %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
-%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
-%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-nm
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ranlib
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
+%if %{build_cp}
+%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-c++
+%{_prefix}/bin/%{gcc_target_arch}-g++
+%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
+%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
+%if 0%{!?gcc_libc_bootstrap:1}
+%if %{cross_arch} == "avr" || 0%{?gcc_target_newlib:1} || 
0%{?gcc_target_glibc:1}
+%{_prefix}/include/c++
+%endif
+%endif
+%endif
 %endif
 %dir %{targetlibsubdir}
 %dir %{_libdir}/gcc/%{gcc_target_arch}

cross-epiphany-gcc7.spec: same change
cross-hppa-gcc7.spec: same change
cross-i386-gcc7.spec: same change
cross-m68k-gcc7.spec: same change
cross-mips-gcc7.spec: same change
cross-nvptx-gcc7.spec: same change
cross-ppc64-gcc7.spec: same change
cross-ppc64le-gcc7.spec: same change
cross-rx-gcc7-bootstrap.spec: same change
cross-rx-gcc7.spec: same change
cross-s390x-gcc7.spec: same change
cross-sparc-gcc7.spec: same change
cross-sparc64-gcc7.spec: same change
cross-x86_64-gcc7.spec: same change
++++++ gcc7-testresults.spec ++++++
--- /var/tmp/diff_new_pack.nhdomk/_old  2018-01-20 11:23:56.144162339 +0100
+++ /var/tmp/diff_new_pack.nhdomk/_new  2018-01-20 11:23:56.148162153 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package gcc7-testresults
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 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
@@ -253,7 +253,7 @@
 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
 
 Url:            http://gcc.gnu.org/
-Version:        7.2.1+r253932
+Version:        7.2.1+r256737
 Release:        0
 %define gcc_version %(echo %version | sed 's/+.*//')
 %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
@@ -315,8 +315,8 @@
 Patch10:        gcc5-no-return-gcc43-workaround.patch
 Patch11:        gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
 Patch12:        gcc7-stack-probe.diff
-Patch13:        gcc7-pr81481.diff
 Patch14:        gcc7-pr82248.diff
+Patch15:        gcc7-avoid-fixinc-error.diff
 # A set of patches from the RH srpm
 Patch51:        gcc41-ppc32-retaddr.patch
 # Some patches taken from Debian
@@ -443,8 +443,8 @@
 %patch10
 %patch11
 %patch12
-%patch13
 %patch14
+%patch15
 %patch51
 %patch60
 %patch61

++++++ gcc7.spec ++++++
--- /var/tmp/diff_new_pack.nhdomk/_old  2018-01-20 11:23:56.188160282 +0100
+++ /var/tmp/diff_new_pack.nhdomk/_new  2018-01-20 11:23:56.196159909 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package gcc7
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 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
@@ -235,7 +235,7 @@
 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
 
 Url:            http://gcc.gnu.org/
-Version:        7.2.1+r253932
+Version:        7.2.1+r256737
 Release:        0
 %define gcc_version %(echo %version | sed 's/+.*//')
 %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
@@ -297,8 +297,8 @@
 Patch10:        gcc5-no-return-gcc43-workaround.patch
 Patch11:        gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
 Patch12:        gcc7-stack-probe.diff
-Patch13:        gcc7-pr81481.diff
 Patch14:        gcc7-pr82248.diff
+Patch15:        gcc7-avoid-fixinc-error.diff
 # A set of patches from the RH srpm
 Patch51:        gcc41-ppc32-retaddr.patch
 # Some patches taken from Debian
@@ -1747,8 +1747,8 @@
 %patch10
 %patch11
 %patch12
-%patch13
 %patch14
+%patch15
 %patch51
 %patch60
 %patch61

++++++ change_spec ++++++
--- /var/tmp/diff_new_pack.nhdomk/_old  2018-01-20 11:23:56.260156916 +0100
+++ /var/tmp/diff_new_pack.nhdomk/_new  2018-01-20 11:23:56.264156729 +0100
@@ -93,7 +93,8 @@
 if test "$do_crosses" = 1 ; then
 add_cross cross-aarch64-gcc$base_ver aarch64 aarch64-suse-linux %define 
gcc_icecream 1
 add_cross cross-arm-gcc$base_ver arm arm-suse-linux-gnueabi %define 
gcc_icecream 0
-add_cross cross-avr-gcc$base_ver avr avr %define gcc_icecream 1
+add_cross cross-avr-gcc$base_ver-bootstrap avr avr "%define gcc_libc_bootstrap 
1"
+add_cross cross-avr-gcc$base_ver avr avr
 add_cross cross-i386-gcc$base_ver i386 i586-suse-linux %define gcc_icecream 1
 add_cross cross-x86_64-gcc$base_ver x86_64 x86_64-suse-linux %define 
gcc_icecream 1
 add_cross cross-s390x-gcc$base_ver s390x s390x-suse-linux %define gcc_icecream 
1

++++++ cross.spec.in ++++++
--- /var/tmp/diff_new_pack.nhdomk/_old  2018-01-20 11:23:56.352152615 +0100
+++ /var/tmp/diff_new_pack.nhdomk/_new  2018-01-20 11:23:56.356152428 +0100
@@ -57,7 +57,6 @@
 %endif
 
 %if 0%{?gcc_icecream:1}
-%define build_sysroot /
 %define sysroot %{_prefix}/%{gcc_target_arch}
 %else
 # offloading builds newlib in-tree and can install in
@@ -103,6 +102,9 @@
 %if 0%{?gcc_target_newlib:1} && 0%{!?gcc_libc_bootstrap:1}
 BuildRequires: cross-%cross_arch-newlib-devel
 %endif
+%if 0%{!?gcc_libc_bootstrap:1} && %{cross_arch} == "avr"
+BuildRequires: avr-libc
+%endif
 %if 0%{?gcc_target_glibc:1}
 BuildRequires: cross-%cross_arch-glibc-devel
 %endif
@@ -160,11 +162,7 @@
 
 # install and fixup host parts
 make DESTDIR=$RPM_BUILD_ROOT install-host
-%if 0%{?gcc_icecream:1}
-# with the gcc_icecream setup fixincludes are for the build includes which
-# is wrong - get rid of them
-rm -rf $RPM_BUILD_ROOT/%{targetlibsubdir}/include-fixed
-%endif
+rm -rf $RPM_BUILD_ROOT/%{targetlibsubdir}/install-tools
 rm -f $RPM_BUILD_ROOT/%{targetlibsubdir}/liblto_plugin.la
 # common fixup
 rm -f $RPM_BUILD_ROOT%{_libdir}/libiberty.a
@@ -180,11 +178,33 @@
 export NO_DEBUGINFO_STRIP_DEBUG=true
 %define __debug_install_post %{nil}
 : >../debugfiles.list
+: >../debugsourcefiles.list
 : >../debugsources.list
-make DESTDIR=$RPM_BUILD_ROOT/%{?sysroot:%sysroot} install-target
+# We want shared libraries to reside in the sysroot but the .so symlinks
+# on the host.  Once we have a cross target that has shared libs we need
+# to manually fix up things here like we do for non-cross compilers
+mkdir -p $RPM_BUILD_ROOT/%{?sysroot:%sysroot}
+make DESTDIR=$RPM_BUILD_ROOT install-target
+%if %{build_cp}
+# So we installed libstdc++ headers into %prefix where they conflict
+# with other host compilers.  Rip out the non-target specific parts
+# again.  Note not all cross targets support libstdc++, so create the
+# directory to make things easier.
+mkdir -p $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version}
+find $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version} -mindepth 1 
-maxdepth 1 -type d -a -not -name %{gcc_target_arch} | xargs -r rm -r
+find $RPM_BUILD_ROOT/%_prefix/include/c++/%{gcc_dir_version} -maxdepth 1 -type 
f | xargs -r rm
+# And also remove installed pretty printers which conflict in similar ways
+rm -rf $RPM_BUILD_ROOT/%{_datadir}/gcc%{binsuffix}
+%endif
 %endif
 %endif
 
+%if 0%{?binutils_os:1}
+for prog in as ld; do
+  ln -s /usr/%{binutils_os}/bin/$prog $RPM_BUILD_ROOT%{targetlibsubdir}/
+done
+%endif
+
 # remove docs
 rm -rf $RPM_BUILD_ROOT%{_mandir}
 rm -rf $RPM_BUILD_ROOT%{_infodir}
@@ -246,7 +266,11 @@
 # crosses
 %if 0%{!?gcc_accel:1}
 mkdir -p %{buildroot}%{_sysconfdir}/alternatives
-for ex in gcc c++ cpp g++ gcc-ar gcc-nm gcc-ranlib gcov gcov-dump gcov-tool; do
+for ex in gcc cpp \
+%if %{build_cp}
+          c++ g++ \
+%endif
+          gcc-ar gcc-nm gcc-ranlib gcov gcov-dump gcov-tool; do
   ln -s %{_sysconfdir}/alternatives/%{gcc_target_arch}-$ex \
        %{buildroot}%{_bindir}/%{gcc_target_arch}-$ex
 done
@@ -254,9 +278,11 @@
 %post
 %{_sbindir}/update-alternatives \
   --install %{_bindir}/%{gcc_target_arch}-gcc %{gcc_target_arch}-gcc 
%{_bindir}/%{gcc_target_arch}-gcc%{binsuffix} @base_ver@ \
-  --slave %{_bindir}/%{gcc_target_arch}-c++ %{gcc_target_arch}-c++ 
%{_bindir}/%{gcc_target_arch}-c++%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-cpp %{gcc_target_arch}-cpp 
%{_bindir}/%{gcc_target_arch}-cpp%{binsuffix} \
+%if %{build_cp}
+  --slave %{_bindir}/%{gcc_target_arch}-c++ %{gcc_target_arch}-c++ 
%{_bindir}/%{gcc_target_arch}-c++%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-g++ %{gcc_target_arch}-g++ 
%{_bindir}/%{gcc_target_arch}-g++%{binsuffix} \
+%endif
   --slave %{_bindir}/%{gcc_target_arch}-gcc-ar %{gcc_target_arch}-gcc-ar 
%{_bindir}/%{gcc_target_arch}-gcc-ar%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-gcc-nm %{gcc_target_arch}-gcc-nm 
%{_bindir}/%{gcc_target_arch}-gcc-nm%{binsuffix} \
   --slave %{_bindir}/%{gcc_target_arch}-gcc-ranlib 
%{gcc_target_arch}-gcc-ranlib 
%{_bindir}/%{gcc_target_arch}-gcc-ranlib%{binsuffix} \
@@ -279,9 +305,7 @@
 %{libsubdir}/accel/%{gcc_target_arch}
 %else
 %{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
-%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
-%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
@@ -289,9 +313,7 @@
 %{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
 %{_prefix}/bin/%{gcc_target_arch}-gcc
-%{_prefix}/bin/%{gcc_target_arch}-c++
 %{_prefix}/bin/%{gcc_target_arch}-cpp
-%{_prefix}/bin/%{gcc_target_arch}-g++
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ar
 %{_prefix}/bin/%{gcc_target_arch}-gcc-nm
 %{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib
@@ -299,15 +321,26 @@
 %{_prefix}/bin/%{gcc_target_arch}-gcov-dump
 %{_prefix}/bin/%{gcc_target_arch}-gcov-tool
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc
-%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-cpp
-%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ar
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-nm
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcc-ranlib
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-dump
 %ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-gcov-tool
+%if %{build_cp}
+%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-c++
+%{_prefix}/bin/%{gcc_target_arch}-g++
+%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-c++
+%ghost %{_sysconfdir}/alternatives/%{gcc_target_arch}-g++
+%if 0%{!?gcc_libc_bootstrap:1}
+%if %{cross_arch} == "avr" || 0%{?gcc_target_newlib:1} || 
0%{?gcc_target_glibc:1}
+%{_prefix}/include/c++
+%endif
+%endif
+%endif
 %endif
 %dir %{targetlibsubdir}
 %dir %{_libdir}/gcc/%{gcc_target_arch}

++++++ gcc-7.2.1+r253932.tar.xz -> gcc-7.2.1+r256737.tar.xz ++++++
/work/SRC/openSUSE:Factory/gcc7/gcc-7.2.1+r253932.tar.xz 
/work/SRC/openSUSE:Factory/.gcc7.new/gcc-7.2.1+r256737.tar.xz differ: char 27, 
line 1

++++++ gcc.spec.in ++++++
--- /var/tmp/diff_new_pack.nhdomk/_old  2018-01-20 11:23:56.404150184 +0100
+++ /var/tmp/diff_new_pack.nhdomk/_new  2018-01-20 11:23:56.404150184 +0100
@@ -239,7 +239,7 @@
 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
 
 URL:          http://gcc.gnu.org/
-Version: 7.2.1+r253932
+Version: 7.2.1+r256737
 Release:      1
 %define gcc_version %(echo %version | sed 's/+.*//')
 %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
@@ -302,8 +302,8 @@
 Patch10:       gcc5-no-return-gcc43-workaround.patch
 Patch11:       gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
 Patch12:        gcc7-stack-probe.diff
-Patch13:       gcc7-pr81481.diff
 Patch14:       gcc7-pr82248.diff
+Patch15:       gcc7-avoid-fixinc-error.diff
 # A set of patches from the RH srpm
 Patch51:       gcc41-ppc32-retaddr.patch
 # Some patches taken from Debian
@@ -1057,8 +1057,8 @@
 %patch10
 %patch11
 %patch12
-%patch13
 %patch14
+%patch15
 %patch51
 %patch60
 %patch61

++++++ gcc7-avoid-fixinc-error.diff ++++++
Index: gcc/Makefile.in
===================================================================
--- gcc/Makefile.in     (revision 255402)
+++ gcc/Makefile.in     (working copy)
@@ -2993,13 +2993,6 @@ stmp-fixinc: gsyslimits.h macro_list fix
            sysroot_headers_suffix=`echo $${ml} | sed -e 's/;.*$$//'`; \
            multi_dir=`echo $${ml} | sed -e 's/^[^;]*;//'`; \
            fix_dir=include-fixed$${multi_dir}; \
-           if ! $(inhibit_libc) && test ! -d ${SYSTEM_HEADER_DIR}; then \
-             echo The directory that should contain system headers does not 
exist: >&2 ; \
-             echo "  ${SYSTEM_HEADER_DIR}" >&2 ; \
-             tooldir_sysinc=`echo "${gcc_tooldir}/sys-include" | sed -e :a -e 
"s,[^/]*/\.\.\/,," -e ta`; \
-             if test "x${SYSTEM_HEADER_DIR}" = "x$${tooldir_sysinc}"; \
-             then sleep 1; else exit 1; fi; \
-           fi; \
            $(mkinstalldirs) $${fix_dir}; \
            chmod a+rx $${fix_dir} || true; \
            (TARGET_MACHINE='$(target)'; srcdir=`cd $(srcdir); ${PWD_COMMAND}`; 
\

Reply via email to