~ruther/guix-local

66b5d33c4ff8d146fa7f0e6e642008ac7e8cfb9d — Andreas Enge 3 years ago 9900f9e
Revert "gnu: gcc-11: Fix build on powerpc64le."

This reverts commit 9900f9e9b86550e7d336b04ad46fba088e28cbd6.
3 files changed, 1 insertions(+), 29 deletions(-)

M gnu/local.mk
M gnu/packages/gcc.scm
D gnu/packages/patches/gcc-11-libstdc++-powerpc.patch
M gnu/local.mk => gnu/local.mk +0 -1
@@ 1184,7 1184,6 @@ dist_patch_DATA =						\
  %D%/packages/patches/gcc-11-libstdc++-hurd-libpthread.patch   \
  %D%/packages/patches/gcc-12-cross-environment-variables.patch \
  %D%/packages/patches/gcc-10-tree-sra-union-handling.patch	\
  %D%/packages/patches/gcc-11-libstdc++-powerpc.patch           \
  %D%/packages/patches/gcolor3-update-libportal-usage.patch	\
  %D%/packages/patches/gd-fix-tests-on-i686.patch		\
  %D%/packages/patches/gd-brect-bounds.patch			\

M gnu/packages/gcc.scm => gnu/packages/gcc.scm +1 -10
@@ 2,7 2,7 @@
;;; Copyright © 2012-2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2023 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015-2018, 2020-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>


@@ 889,15 889,6 @@ using compilers other than GCC."
                                          ":")
                                         "\nAM_CXXFLAGS = ")))))))
               '())
         ,@(let ((version (package-version gcc)))
                (if (and (target-ppc64le?)
                    (version>=? version "11")
                    (not (version>=? version "12")))
               `((add-after 'unpack 'patch-powerpc
                   (lambda _
                    (invoke "patch" "--force" "-p1" "-i"
                            (search-patch "gcc-11-libstdc++-powerpc.patch")))))
               '()))
         ;; Force rs6000 (i.e., powerpc) libdir to be /lib and not /lib64.
         (add-before 'chdir 'fix-rs6000-libdir
           (lambda _

D gnu/packages/patches/gcc-11-libstdc++-powerpc.patch => gnu/packages/patches/gcc-11-libstdc++-powerpc.patch +0 -18
@@ 1,18 0,0 @@
diff -u -r gcc-11.3.0.alt/libstdc++-v3/src/c++17/floating_from_chars.cc gcc-11.3.0/libstdc++-v3/src/c++17/floating_from_chars.cc
--- gcc-11.3.0.alt/libstdc++-v3/src/c++17/floating_from_chars.cc	2023-04-13 11:36:08.169841428 +0200
+++ gcc-11.3.0/libstdc++-v3/src/c++17/floating_from_chars.cc	2023-04-13 11:36:54.825827304 +0200
@@ -495,8 +495,14 @@
 from_chars(const char* first, const char* last, __ieee128& value,
 	   chars_format fmt) noexcept
 {
+#if _GLIBCXX_USE_CXX11_ABI
   buffer_resource mr;
   pmr::string buf(&mr);
+#else
+  string buf;
+  if (!reserve_string(buf))
+    return make_result(first, 0, {}, ec);
+#endif
   size_t len = 0;
   errc ec = errc::invalid_argument;
   __try