From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: GCC language front-ends Date: Thu, 05 Jun 2014 18:12:29 +0200 Message-ID: <87wqcvqqs2.fsf@gnu.org> References: <20140604212212.GA2429@debian> <87mwdsl5p2.fsf@gnu.org> <20140604214653.GA7612@debian> <87wqcvtss6.fsf@gnu.org> <20140605154228.GB16709@debian.eduroam.u-bordeaux.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:48416) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WsaHO-0006VE-23 for guix-devel@gnu.org; Thu, 05 Jun 2014 12:12:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WsaHH-0004d9-FG for guix-devel@gnu.org; Thu, 05 Jun 2014 12:12:38 -0400 Received: from hera.aquilenet.fr ([2a01:474::1]:59779) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WsaHH-0004cu-8E for guix-devel@gnu.org; Thu, 05 Jun 2014 12:12:31 -0400 In-Reply-To: <20140605154228.GB16709@debian.eduroam.u-bordeaux.fr> (Andreas Enge's message of "Thu, 5 Jun 2014 17:42:28 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Andreas Enge Cc: guix-devel@gnu.org Andreas Enge skribis: > On Thu, Jun 05, 2014 at 03:00:57PM +0200, Ludovic Court=C3=A8s wrote: >> It=E2=80=99s been discussed several times, but there=E2=80=99s no satisf= actory solution >> so far. Changing the name seems like a bad idea, because it=E2=80=99s r= eally >> gcc. Making either gcc-final or gcc-4.8 private isn=E2=80=99t an option= because >> they=E2=80=99re referred from elsewhere. > > Sorry for my forgetfulness. So the references to gcc-4.8 could not be rep= laced > by references to gcc-final? No. It=E2=80=99s a bit tricky but the idea is: gcc-4.8 is the =E2=80=9Cabs= tract=E2=80=9D recipe for GCC, whereas gcc-final is a specialized recipe for use in the bootstrap process. The abstract recipe has useful properties: =E2=80=A2 it is a =E2=80=9Cnormal=E2=80=9D, self-contained package recipe= , and thus easier to grasp; =E2=80=A2 it can be cross-compiled (whereas gcc-final cannot, because it = is anchored in the bootstrap dependency DAG); =E2=80=A2 it can easily be derived (for gfortran, etc.); =E2=80=A2 it remains valid even when the default GCC version changes. So we need that abstract gcc-4.8. At the same time, for native compilation, we only ever want to use gcc-final, because gcc-4.8 is just the same compiler built once more with itself. So ideally, =E2=80=98guix package=E2=80=99 would magically ignore the abstr= act gcc-4.8 (and coreutils, grep, etc.) and favor their -final variant. I hope I=E2=80=99m being clear, but I=E2=80=99m not sure. ;-) Ludo=E2=80=99.