From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id D1AEC13888F for ; Tue, 27 Oct 2015 17:09:35 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 84384E087B; Tue, 27 Oct 2015 17:09:27 +0000 (UTC) Received: from smtp.salomon.at (smtp.salomon.at [193.186.16.13]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 22397E0871 for ; Tue, 27 Oct 2015 17:09:26 +0000 (UTC) Received: from samail03.wamas.com ([172.28.2.2] helo=mailhost.salomon.at) by smtp.salomon.at with esmtps (TLSv1:DHE-RSA-AES256-SHA:256) (Exim 4.80.1) (envelope-from ) id 1Zr7kR-0004w9-Rl; Tue, 27 Oct 2015 18:09:24 +0100 Received: from [172.28.41.34] by mailhost.salomon.at with esmtp (Exim 4.77) (envelope-from ) id 1Zr7kH-0000V5-4d; Tue, 27 Oct 2015 18:09:13 +0100 Message-ID: <562FAFB9.80000@gentoo.org> Date: Tue, 27 Oct 2015 18:09:13 +0100 From: Michael Haubenwallner User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 To: gentoo-dev@lists.gentoo.org CC: george@gentoo.org Subject: [gentoo-dev] Re: gnatbuild.eclass refactoring: new/transitory eclass? References: <1964623.1PWUb7kWtd@phycelpc12.univ-lille1.fr> In-Reply-To: <1964623.1PWUb7kWtd@phycelpc12.univ-lille1.fr> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Archives-Salt: 13f542d6-dd5c-4751-ab22-13a7cec477d3 X-Archives-Hash: 044876ef55d47daa0771e650b6406a7d Hi George, On 09/03/2015 04:00 PM, George Shapovalov wrote: > I am about to start a long-overdue refactoring of the gnat (Ada compilers) > build system, governed by the gnatbuild.eclass. Given that nature of the > packages concerned and, for quite some time, I was the only person brave > enough to even touch this beast this probably does not concern too many > people. However, since I am likely to produce some observable effects, such as > introduction of a (possibly transitory) new eclass, I am giving a requisite > heads-up here. > > First a short but necessary introduction: > gnatbuild.eclass is a complex and ancient beast controlling the build of the > two Ada compilers we have in the tree - gnat-gcc (by FSF) and gnat-gpl (by > AdaCore). It has been created some 10 years ago, following the toolchain.eclas > of then, long before even functions like src_prepare were envisioned and the > term pms existed only in medical terminology. Correspondingly, it is composed > of big blocks of code, not very modular and can benefit greatly of new > practices. > > The catch is that all the gnat-xxx ebuilds depend on it and replacing the > eclass would require modifying all of the ebuilds at the same time. Given the > typical adjustmentsto address gcc backend gets bumps and the differences > between two implementations, doing a big, all-in-one change like that is a > perfect recipe for disaster that would likely lead to total breakage of gnat > build system and the project that is never complete at the same time. > Therefore I am thinking to do it in a more usual and gradual manner: Just wondering whether you are aware of https://bugs.gentoo.org/547358 already: Although I'm not an Ada dev, as gcc upstream committer I've need to bootstrap the Ada parts within gcc as well, but faced that neither AdaCore nor gnat-xxx ebuilds provide a C,C++,Ada compiler. Given that AdaCore seems to not provide anything up-to-date at all any more, my idea was to provide the recent FSF Ada compiler via toolchain.eclass only. Thanks! /haubi/