From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1653 invoked by alias); 4 Mar 2003 22:55:08 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 1641 invoked from network); 4 Mar 2003 22:55:08 -0000 Received: from unknown (HELO hotmail.com) (65.54.246.195) by 172.16.49.205 with SMTP; 4 Mar 2003 22:55:08 -0000 Received: from mail pickup service by hotmail.com with Microsoft SMTPSVC; Tue, 4 Mar 2003 14:55:07 -0800 X-Originating-IP: [150.101.113.134] From: "Gareth Pearce" To: "Geoff Keating" , Cc: , , , , References: <200303041445.h24Ejhb15458@pc960.cambridge.arm.com><87ptp711nj.fsf@egil.codesourcery.com><20030304174003.GA15255@disaster.jaj.com> <200303042201.h24M1jc03223@desire.geoffk.org> Subject: Re: Putting C++ code into gcc front end Date: Tue, 04 Mar 2003 23:07:00 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 Message-ID: X-OriginalArrivalTime: 04 Mar 2003 22:55:07.0818 (UTC) FILETIME=[1A45A8A0:01C2E2A1] X-SW-Source: 2003-03/txt/msg00292.txt.bz2 Is a random nobody I think i'll contribute how I think compiling gcc should work. basic pattern stage 0 - compiles a C compiler capable of compiling the C frontend/backend using minimalistic assumptions about input. stage 1 - compile a C compiler assuming a reasonable standard - such something like as ISO C90 stage 2 - compile a C compiler assuming gcc compatible parameters/flags stage 2a - compile things which use C using stage 2- same standard (or gnu extensions?) stage 2b - compile things dependent on 2a - using stage 2a ... - compile those dependent on previous stage - using previous stage stage 3 - as stage 2 stage 3a - see 2a but using stage 3 compiler ... stage 4 - compare stage 2 and stage 3 stage 5 - compare 2a 3a - 2b 3b ... stage 6 - run testsuite on either stage 2, 2a... or 3, 3a... (latest one available by default) make - runs stage 3, 3a... assuming system compiler as input to stage 3 make check - runs stage 6 make antique - runs stage 0 - using system compiler make quickstrap - runs stage 1 using system compiler - then stage 3, 3a... using stage 1 make bootstrap - runs stage 1 using system - stage 2 using stage 1 - stage 3 using stage 2 - stage 4 - stage 3a, b ... make bootstrap-check - depends on make bootstrap - stage 2a, b ... (maybe make b onwards optional here) - stage 5 okay i'm done, i'll go back to my dream world now... Gareth