[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
83/227: gnu: gcc-5: Fix powerpc64le-linux build
From: |
guix-commits |
Subject: |
83/227: gnu: gcc-5: Fix powerpc64le-linux build |
Date: |
Thu, 11 Nov 2021 12:30:09 -0500 (EST) |
apteryx pushed a commit to branch core-updates-frozen
in repository guix.
commit b04a20f77fe3863931de273490d75371561d4e51
Author: Thiago Jung Bauermann <bauermann@kolabnow.com>
AuthorDate: Thu Aug 5 13:19:43 2021 -0300
gnu: gcc-5: Fix powerpc64le-linux build
GCC 5 has a misaligned access to a vector pointer which causes a build
failure
when using GCC 8 and later. Backport upstream fix that was applied on the
GCC
6 branch.
* gnu/packages/gcc.scm (gcc-5)[source]: Apply
gcc-5-fix-powerpc64le-build.patch.
* gnu/packages/patches/gcc-5-fix-powerpc64le-build.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
---
gnu/local.mk | 1 +
gnu/packages/gcc.scm | 4 +-
.../patches/gcc-5-fix-powerpc64le-build.patch | 64 ++++++++++++++++++++++
3 files changed, 68 insertions(+), 1 deletion(-)
diff --git a/gnu/local.mk b/gnu/local.mk
index 5f70aee..cbb083e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1113,6 +1113,7 @@ dist_patch_DATA =
\
%D%/packages/patches/gcc-4.9.3-mingw-gthr-default.patch \
%D%/packages/patches/gcc-5-hurd.patch \
%D%/packages/patches/gcc-5.0-libvtv-runpath.patch \
+ %D%/packages/patches/gcc-5-fix-powerpc64le-build.patch \
%D%/packages/patches/gcc-5-source-date-epoch-1.patch \
%D%/packages/patches/gcc-5-source-date-epoch-2.patch \
%D%/packages/patches/gcc-6-arm-none-eabi-multilib.patch \
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index 4a5f8f0..1dab77d 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -490,7 +490,9 @@ Go. It also includes runtime support libraries for these
languages.")
"gcc-5-source-date-epoch-2.patch"
"gcc-6-libsanitizer-mode-size.patch"
"gcc-fix-texi2pod.patch"
- "gcc-5-hurd.patch"))
+ "gcc-5-hurd.patch"
+ ;; See
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86162
+ "gcc-5-fix-powerpc64le-build.patch"))
(modules '((guix build utils)))
(snippet gcc-canadian-cross-objdump-snippet)))
(inputs
diff --git a/gnu/packages/patches/gcc-5-fix-powerpc64le-build.patch
b/gnu/packages/patches/gcc-5-fix-powerpc64le-build.patch
new file mode 100644
index 0000000..289d648
--- /dev/null
+++ b/gnu/packages/patches/gcc-5-fix-powerpc64le-build.patch
@@ -0,0 +1,64 @@
+From ee6c0081c03330045b3d4cde8421cd1d3a459609 Mon Sep 17 00:00:00 2001
+From: Martin Liska <mliska@suse.cz>
+Date: Fri, 15 Jun 2018 10:51:28 +0200
+Subject: [PATCH] Partial backport r256656
+
+2018-06-15 Martin Liska <mliska@suse.cz>
+
+ Backport from mainline
+ 2018-01-10 Kelvin Nilsen <kelvin@gcc.gnu.org>
+
+ * lex.c (search_line_fast): Remove illegal coercion of an
+ unaligned pointer value to vector pointer type and replace with
+ use of __builtin_vec_vsx_ld () built-in function, which operates
+ on unaligned pointer values.
+
+From-SVN: r261621
+---
+
+Obtained from:
+
+https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=ee6c0081c03330045b3d4cde8421cd1d3a459609
+
+The libcpp/ChangeLog hunk was modified to apply on top of gcc-5's
libcpp/ChangeLog.
+
+ libcpp/ChangeLog | 12 ++++++++++++
+ libcpp/lex.c | 2 +-
+ 2 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
+index c920a05d438..a63abb04f5e 100644
+--- a/libcpp/ChangeLog
++++ b/libcpp/ChangeLog
+@@ -1,3 +1,15 @@
++2018-06-15 Martin Liska <mliska@suse.cz>
++
++ PR bootstrap/86162
++
++ Backport from mainline
++ 2018-01-10 Kelvin Nilsen <kelvin@gcc.gnu.org>
++
++ * lex.c (search_line_fast): Remove illegal coercion of an
++ unaligned pointer value to vector pointer type and replace with
++ use of __builtin_vec_vsx_ld () built-in function, which operates
++ on unaligned pointer values.
++
+ 2017-10-10 Release Manager
+
+ * GCC 5.5.0 released.
+diff --git a/libcpp/lex.c b/libcpp/lex.c
+index e5a0397f309..b789686f1c4 100644
+--- a/libcpp/lex.c
++++ b/libcpp/lex.c
+@@ -568,7 +568,7 @@ search_line_fast (const uchar *s, const uchar *end
ATTRIBUTE_UNUSED)
+ {
+ vc m_nl, m_cr, m_bs, m_qm;
+
+- data = *((const vc *)s);
++ data = __builtin_vec_vsx_ld (0, s);
+ s += 16;
+
+ m_nl = (vc) __builtin_vec_cmpeq(data, repl_nl);
+--
+2.27.0
+
- 65/227: gnu: gst-libav: Update to 1.18.5., (continued)
- 65/227: gnu: gst-libav: Update to 1.18.5., guix-commits, 2021/11/11
- 67/227: gnu: python-gst: Update to 1.18.5., guix-commits, 2021/11/11
- 68/227: gnu: gstreamer-docs: Update to 1.18.5., guix-commits, 2021/11/11
- 74/227: gnu: python-keras: Skip a flaky test., guix-commits, 2021/11/11
- 76/227: gnu: glibc: Look for the current timezone in /etc/localtime., guix-commits, 2021/11/11
- 77/227: gnu: tzdata: Update to 2021e., guix-commits, 2021/11/11
- 79/227: gnu: diffutils: Fix signal processing., guix-commits, 2021/11/11
- 78/227: gnu: gtk+-2: Fix ‘builder’ test., guix-commits, 2021/11/11
- 81/227: build: qt-utils: Don't wrap .X-real files., guix-commits, 2021/11/11
- 82/227: gnu: curl: Honor #:tests?., guix-commits, 2021/11/11
- 83/227: gnu: gcc-5: Fix powerpc64le-linux build,
guix-commits <=
- 86/227: gnu: gdb: Patch references to /bin/sh and add debug output., guix-commits, 2021/11/11
- 87/227: gnu: gdb: Normalize indentation., guix-commits, 2021/11/11
- 88/227: guix: packages: Fix repacking of plain tarballs., guix-commits, 2021/11/11
- 90/227: gnu: glade3: Remove sitecustomize.py workaround., guix-commits, 2021/11/11
- 91/227: gnu: rust: Bootstrap rust from 1.39.0 and optimize build time., guix-commits, 2021/11/11
- 92/227: gnu: rust: Add rust 1.54 and move all non-bootstrapping logic to it., guix-commits, 2021/11/11
- 94/227: gnu: fontconfig: Add a search path for XDG_DATA_DIRS., guix-commits, 2021/11/11
- 95/227: gnu: Move a few Python packages to (gnu packages python-build)., guix-commits, 2021/11/11
- 96/227: gnu: python-pypa-build: Update to 0.7.0., guix-commits, 2021/11/11
- 100/227: gnu: python-pytest-6: Fix version via setuptools-scm., guix-commits, 2021/11/11