1 |
Hi George, |
2 |
|
3 |
On 09/03/2015 04:00 PM, George Shapovalov wrote: |
4 |
> I am about to start a long-overdue refactoring of the gnat (Ada compilers) |
5 |
> build system, governed by the gnatbuild.eclass. Given that nature of the |
6 |
> packages concerned and, for quite some time, I was the only person brave |
7 |
> enough to even touch this beast this probably does not concern too many |
8 |
> people. However, since I am likely to produce some observable effects, such as |
9 |
> introduction of a (possibly transitory) new eclass, I am giving a requisite |
10 |
> heads-up here. |
11 |
> |
12 |
> First a short but necessary introduction: |
13 |
> gnatbuild.eclass is a complex and ancient beast controlling the build of the |
14 |
> two Ada compilers we have in the tree - gnat-gcc (by FSF) and gnat-gpl (by |
15 |
> AdaCore). It has been created some 10 years ago, following the toolchain.eclas |
16 |
> of then, long before even functions like src_prepare were envisioned and the |
17 |
> term pms existed only in medical terminology. Correspondingly, it is composed |
18 |
> of big blocks of code, not very modular and can benefit greatly of new |
19 |
> practices. |
20 |
> |
21 |
> The catch is that all the gnat-xxx ebuilds depend on it and replacing the |
22 |
> eclass would require modifying all of the ebuilds at the same time. Given the |
23 |
> typical adjustmentsto address gcc backend gets bumps and the differences |
24 |
> between two implementations, doing a big, all-in-one change like that is a |
25 |
> perfect recipe for disaster that would likely lead to total breakage of gnat |
26 |
> build system and the project that is never complete at the same time. |
27 |
> Therefore I am thinking to do it in a more usual and gradual manner: |
28 |
|
29 |
Just wondering whether you are aware of https://bugs.gentoo.org/547358 already: |
30 |
|
31 |
Although I'm not an Ada dev, as gcc upstream committer I've need to bootstrap |
32 |
the Ada parts within gcc as well, but faced that neither AdaCore nor gnat-xxx |
33 |
ebuilds provide a C,C++,Ada compiler. Given that AdaCore seems to not provide |
34 |
anything up-to-date at all any more, my idea was to provide the recent FSF Ada |
35 |
compiler via toolchain.eclass only. |
36 |
|
37 |
Thanks! |
38 |
/haubi/ |