Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: Alfredo Tupone <tupone@g.o>
Cc: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Changes in toolchain.eclass to enable Ada
Date: Thu, 22 Dec 2016 12:49:27
Message-Id: 20161222134904.195be51a.mgorny@gentoo.org
In Reply to: [gentoo-dev] Changes in toolchain.eclass to enable Ada by Alfredo Tupone
1 On Wed, 21 Dec 2016 23:00:47 +0100
2 Alfredo Tupone <tupone@g.o> wrote:
3
4 > I would like to revive the Ada support in gentoo.
5 >
6 > One ada compiler is produced by AdaCore and is provided in three
7 > versions, in the order starting from the best supported :
8 >
9 > 1) GnatPro, available with a contract support.
10 >
11 > 2) Gnat-GPL that can only build GPL-3 product
12 >
13 > 3) The gnat included in the gcc tree that is GPL-3 with exception.
14 >
15 > Gnat-GPL is very like the gnat in the gcc-tree so it can be built in
16 > the same way of sys-devel/gcc
17 >
18 > To be compiled from source the gcc compiler needs a C, C++, and Ada
19 > Compiler. I will provide one with the gnat-gpl-bin tar that could be
20 > installed under /opt . When the gcc is properly compiled we don't need
21 > it any more.
22
23 Do I correctly understand that this is also true for gnat-gpl? Is there
24 any Ada compiler that could be used to bootstrap Ada on platforms that
25 lack prebuilt binaries?
26
27 > I would like to start including, in the gentoo tree, GNAT-GPL
28 > built in the same way as sys-devel-gcc and selectable with gcc-config
29
30 1. Does this mean that GNAT-GPL build will include building a C
31 compiler? If yes, will the C compiler be installed?
32
33 2. Will it be possible to combine GNAT-GPL with a different version of
34 regular gcc C/C++ compilers?
35
36 > As for instance gnat-gpl-2014 is based on gcc-4.7.4 they cannot coexist
37 > and gnat-gpl-2014 will block sys-devel/gcc-4.7.4
38
39 Block the whole sys-devel/ or just sys-devel/gcc[ada]?
40
41 > As a reference I have my overlay on https://github.com/atupone/overlay
42 > and a pull request at https://github.com/gentoo/gentoo/pull/3186
43 >
44 > To start I need to change the toolchain.eclass
45 >
46 > - tc_version_is_at_least 4.7 && IUSE+=" go"
47 > + tc_version_is_at_least 4.7 && IUSE+=" go ada"
48 >
49 > - # We do NOT want 'ADA support' in here!
50 > - # is_ada && GCC_LANG+=",ada"
51 > + # We do want 'ADA support' here!
52 > + is_ada && GCC_LANG+=",ada"
53 >
54 > - for x in cpp gcc g++ c++ gcov g77 gcj gcjh gfortran gccgo ; do
55 > + for x in cpp gcc g++ c++ gcov g77 gcj gcjh gfortran gccgo gnatbind; do
56 >
57 > Thats all for that.
58 >
59 > Then, to not change the behaviour of the gcc-compiler, we could mask the
60 > ada use flag for sys-devel/gcc, at least temporarily
61 >
62 > ---------------------
63 >
64 > I would like to have comments on that, particularly because:
65 > a) it is going to add a use flag to sys-devel/gcc that will bring gcc
66 > to be rebuilt on most system,
67
68 That's a minor problem. Toolchain people do this on us all the time,
69 so...
70
71 > b) the gnat-gpl, if selected with gcc-config, can be used to recompile
72 > all the system, and maybe is not so good ?
73
74 I don't really understand what you mean here. But it's probably related
75 to the questions I asked above.
76
77 --
78 Best regards,
79 Michał Górny
80 <http://dev.gentoo.org/~mgorny/>

Replies

Subject Author
Re: [gentoo-dev] Changes in toolchain.eclass to enable Ada Alfredo Tupone <tupone@g.o>