From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 68053 invoked by alias); 5 Sep 2019 09:52:07 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 68045 invoked by uid 89); 5 Sep 2019 09:52:07 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-11.9 required=5.0 tests=BAYES_00,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.1 spammy=4.7 X-HELO: smtp.eu.adacore.com Received: from mel.act-europe.fr (HELO smtp.eu.adacore.com) (194.98.77.210) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 05 Sep 2019 09:52:05 +0000 Received: from localhost (localhost [127.0.0.1]) by filtered-smtp.eu.adacore.com (Postfix) with ESMTP id DEA048139F; Thu, 5 Sep 2019 11:52:01 +0200 (CEST) Received: from smtp.eu.adacore.com ([127.0.0.1]) by localhost (smtp.eu.adacore.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id u7JASLXX_2FD; Thu, 5 Sep 2019 11:52:01 +0200 (CEST) Received: from chelles.act-europe.fr (chelles.act-europe.fr [IPv6:2a02:2ab8:224:1:d6be:d9ff:fef8:4565]) by smtp.eu.adacore.com (Postfix) with ESMTP id A758E80004; Thu, 5 Sep 2019 11:52:01 +0200 (CEST) Received: by chelles.act-europe.fr (Postfix, from userid 525) id A1D301EA1719; Thu, 5 Sep 2019 11:52:01 +0200 (CEST) Date: Thu, 05 Sep 2019 09:52:00 -0000 From: Arnaud Charlet To: "Maciej W. Rozycki" Cc: Pierre-Marie de Rodat , gcc-patches@gcc.gnu.org, Arnaud Charlet Subject: Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ... Message-ID: <20190905095201.GA4638@adacore.com> References: <20190703081457.62952.qmail@sourceware.org> <20190904135528.GE13039@adacore.com> <20190905072001.GA21727@adacore.com> <20190905084404.GA1531@adacore.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190905084404.GA1531@adacore.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-SW-Source: 2019-09/txt/msg00260.txt.bz2 > > Can someone please remind me in which repository I can find the GCC > > prerequisites doc sources? > > Answering my own question: found it under gcc/doc/install.texi > > Working on it... Just installed the following change on trunk, thanks again for your feedback! 2019-09-05 Arnaud Charlet * doc/install.texi: Update and clarify requirements to build GNAT. Index: doc/install.texi =================================================================== --- doc/install.texi (revision 275399) +++ doc/install.texi (working copy) @@ -270,13 +270,35 @@ @option{--disable-multilib}. Otherwise, you may encounter an error such as @samp{fatal error: gnu/stubs-32.h: No such file} -@item GNAT +@item @anchor{GNAT-prerequisite}GNAT -In order to build the Ada compiler (GNAT) you must already have GNAT -installed because portions of the Ada frontend are written in Ada (with -GNAT extensions.) Refer to the Ada installation instructions for more -specific information. +In order to build GNAT, the Ada compiler, you need a working GNAT +compiler (GCC version 4.7 or later). +This includes GNAT tools such as @command{gnatmake} and +@command{gnatlink}, since the Ada front end is written in Ada and +uses some GNAT-specific extensions. + +In order to build a cross compiler, it is strongly recommended to install +the new compiler as native first, and then use it to build the cross +compiler. Other native compiler versions may work but this is not guaranteed and +will typically fail with hard to understand compilation errors during the +build. + +Similarly, it is strongly recommended to use an older version of GNAT to build +GNAT. More recent versions of GNAT than the version built are not guaranteed +to work and will often fail during the build with compilation errors. + +Note that @command{configure} does not test whether the GNAT installation works +and has a sufficiently recent version; if too old a GNAT version is +installed and @option{--enable-languages=ada} is used, the build will fail. + +@env{ADA_INCLUDE_PATH} and @env{ADA_OBJECT_PATH} environment variables +must not be set when building the Ada compiler, the Ada tools, or the +Ada runtime libraries. You can check that your build environment is clean +by verifying that @samp{gnatls -v} lists only one explicit path in each +section. + @item A ``working'' POSIX compatible shell, or GNU bash Necessary when running @command{configure} because some @@ -2705,27 +2727,8 @@ @section Building the Ada compiler -In order to build GNAT, the Ada compiler, you need a working GNAT -compiler (GCC version 4.0 or later). -This includes GNAT tools such as @command{gnatmake} and -@command{gnatlink}, since the Ada front end is written in Ada and -uses some GNAT-specific extensions. +See @ref{GNAT-prerequisite}. -In order to build a cross compiler, it is suggested to install -the new compiler as native first, and then use it to build the cross -compiler. - -@command{configure} does not test whether the GNAT installation works -and has a sufficiently recent version; if too old a GNAT version is -installed, the build will fail unless @option{--enable-languages} is -used to disable building the Ada front end. - -@env{ADA_INCLUDE_PATH} and @env{ADA_OBJECT_PATH} environment variables -must not be set when building the Ada compiler, the Ada tools, or the -Ada runtime libraries. You can check that your build environment is clean -by verifying that @samp{gnatls -v} lists only one explicit path in each -section. - @section Building with profile feedback It is possible to use profile feedback to optimize the compiler itself. This