* [bug#40009] [core-updates PATCH]: Use per-architecture GCC for libstdc++-boot0
@ 2020-03-10 11:12 Efraim Flashner
2020-03-10 19:21 ` Marius Bakke
0 siblings, 1 reply; 3+ messages in thread
From: Efraim Flashner @ 2020-03-10 11:12 UTC (permalink / raw)
To: 40009
[-- Attachment #1.1: Type: text/plain, Size: 358 bytes --]
I've tested this on aarch64 and there were no problems. It also
provides a nice framework for other architectures as they become
supported.
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #1.2: 0001-gnu-libstdc-boot0-Use-per-architecture-gcc-versions.patch --]
[-- Type: text/plain, Size: 2014 bytes --]
From 4506c48da7df4397d459337988adbdd54c0d440d Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Thu, 13 Feb 2020 10:47:34 +0200
Subject: [PATCH 1/2] gnu: libstdc++-boot0: Use per-architecture gcc versions.
* gnu/packages/commencement.scm (libstdc++-boot0): Use a version of gcc
more closely tied to their bootstrap process.
---
gnu/packages/commencement.scm | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index 2a0a83ad49..b5cb08a19a 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2015, 2017 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
@@ -1427,9 +1427,12 @@ exec " gcc "/bin/" program
(define libstdc++-boot0
;; GCC's libcc1 is always built as a shared library (the top-level
;; 'Makefile.def' forcefully adds --enable-shared) and thus needs to refer
- ;; to libstdc++.so. We cannot build libstdc++-5.3 because it relies on
- ;; C++14 features missing in some of our bootstrap compilers.
- (let ((lib (make-libstdc++ gcc-4.9)))
+ ;; to libstdc++.so. We therefore use a version of GCC which most closely
+ ;; matches the bootstrap compiler of that architecture.
+ (let ((lib (make-libstdc++
+ (match (%current-system)
+ ("aarch64-linux" gcc-5)
+ (_ gcc-4.9)))))
(package
(inherit lib)
(source (bootstrap-origin (package-source lib)))
--
2.25.0
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [bug#40009] [core-updates PATCH]: Use per-architecture GCC for libstdc++-boot0
2020-03-10 11:12 [bug#40009] [core-updates PATCH]: Use per-architecture GCC for libstdc++-boot0 Efraim Flashner
@ 2020-03-10 19:21 ` Marius Bakke
2020-03-11 6:51 ` bug#40009: " Efraim Flashner
0 siblings, 1 reply; 3+ messages in thread
From: Marius Bakke @ 2020-03-10 19:21 UTC (permalink / raw)
To: Efraim Flashner, 40009
[-- Attachment #1: Type: text/plain, Size: 526 bytes --]
Efraim Flashner <efraim@flashner.co.il> writes:
> I've tested this on aarch64 and there were no problems. It also
> provides a nice framework for other architectures as they become
> supported.
What is the benefit of this patch? I'd prefer to keep libstdc++-boot0
identical across architectures for simplicity, unless there is a good
reason to do otherwise (say, porting to a new architecture).
Now we could end up in a situation where someone patches GCC5 on
'master' and accidentally triggers a full rebuild on AArch64.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* bug#40009: [core-updates PATCH]: Use per-architecture GCC for libstdc++-boot0
2020-03-10 19:21 ` Marius Bakke
@ 2020-03-11 6:51 ` Efraim Flashner
0 siblings, 0 replies; 3+ messages in thread
From: Efraim Flashner @ 2020-03-11 6:51 UTC (permalink / raw)
To: Marius Bakke; +Cc: 40009-done
[-- Attachment #1: Type: text/plain, Size: 954 bytes --]
On Tue, Mar 10, 2020 at 08:21:08PM +0100, Marius Bakke wrote:
> Efraim Flashner <efraim@flashner.co.il> writes:
>
> > I've tested this on aarch64 and there were no problems. It also
> > provides a nice framework for other architectures as they become
> > supported.
>
> What is the benefit of this patch? I'd prefer to keep libstdc++-boot0
> identical across architectures for simplicity, unless there is a good
> reason to do otherwise (say, porting to a new architecture).
>
> Now we could end up in a situation where someone patches GCC5 on
> 'master' and accidentally triggers a full rebuild on AArch64.
Sound reasoning. And currently most of the porting work makes use of
GCC7 and not GCC5. I'm closing this bug.
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-03-11 6:53 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-03-10 11:12 [bug#40009] [core-updates PATCH]: Use per-architecture GCC for libstdc++-boot0 Efraim Flashner
2020-03-10 19:21 ` Marius Bakke
2020-03-11 6:51 ` bug#40009: " Efraim Flashner
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).