From: Brian Drummond <brian@shapes.demon.co.uk>
Subject: Re: Precisely why can't official FSF GNAT maintainers copy bug fixes in GNAT & its GCC-contained runtime en masse from GNAT GPL Community Edition?
Date: Fri, 4 May 2018 11:55:55 -0000 (UTC)
Date: 2018-05-04T11:55:55+00:00 [thread overview]
Message-ID: <pchhob$f1o$1@dont-email.me> (raw)
In-Reply-To: 9c3a75d6-a01f-4cfa-9493-10b8b082ead8@googlegroups.com
On Thu, 03 May 2018 12:13:19 -0700, Dan'l Miller wrote:
> Instead of burying this 200 comments down into another thread, this is
> important enough to deserve its own top-level posting:
>
> On Thursday, May 3, 2018 at 12:00:20 PM UTC-5, Simon Wright wrote:
>> Not actually copyright, since (judging by the 2017 CE) it's assigned to
>> the FSF anyway. It's a licencing issue.
>
> You do bring up an interesting point: because AdaCore appears to
> immediately assign all rights to copy to Free Software Foundation the
> moment that AdaCore employees invoke the file-save function in their
> text editor in files comprising GNAT and its portion-of-GCC runtime, it
> seems that only Free Software Foundation would have legal standing to
> fully enforce the GPLv3-without-Runtime-Exception in GNAT GPL Community
> Edition.
It may very well be that the problems aren't legal but technical.
Having done a little maintenance on ghdl/gcc (updating it from gcc4.4ish
to gcc4.6-gcc4.8 a few years ago, this seems to have restarted interest
in an excellent open-source Ada project) I can comment, and support and
maybe add to Simon's observations.
Gnat Libre edition may be a newer Ada compiler than FSF Gnat (while still
lagging Gnat Pro by a year or so) but it is based on a fairly old gcc
base version (partly because of that lag).
And the front-end language interfaces to the gcc middle-end and back-end
tends to change quite significantly between gcc releases. This broke ghdl
quite badly at that time, and it took some serious digging (for someone
not intimate with gcc internals) to find out where, why and what to do
about it.
So a wholesale copy of Gnat Libre patches from a middle-aged gcc, getting
close to retirement, into the FSF Gnat source tree based on a leading
edge gcc is likely to result only in a colossal build failure followed by
a horde of difficult bugs.
The C layer between Gnat and GCC is quite large (over 50 .c,.h files);
much larger than ghdl's astonishingly clean layer (a single C file for
the compiler, a few small ones for the RTS, all the rest is Ada) so I
could imagine merely maintaining this interface between gcc versions to
be quite a task in itself, running to stand still, even before porting
any actual compiler changes.
(Side note 1 : the sole author of ghdl also ported it to use LLVM as a
third back end. Comparing this with DragonEgg's problems interfacing Gnat
to LLVM supports the notion that this is not trivial.)
(Side note 2 : he ended up wih a job at Adacore.)
In short, unless you know different, changes probably have to be brought
over one by one and massaged to work, as "free software" time and effort
allows.
-- Brian
prev parent reply other threads:[~2018-05-04 11:55 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-03 19:13 Precisely why can't official FSF GNAT maintainers copy bug fixes in GNAT & its GCC-contained runtime en masse from GNAT GPL Community Edition? Dan'l Miller
2018-05-03 20:22 ` Dan'l Miller
2018-05-03 21:17 ` Paul Rubin
2018-05-03 21:42 ` Dan'l Miller
2018-05-03 22:02 ` Paul Rubin
2018-05-03 22:23 ` Dan'l Miller
2018-05-04 12:35 ` Simon Clubley
2018-05-04 14:33 ` Dan'l Miller
2018-05-04 16:20 ` Mark Lorenzen
2018-05-04 16:57 ` Dan'l Miller
2018-05-04 17:22 ` Simon Clubley
2018-05-04 18:39 ` Dan'l Miller
2018-05-04 17:42 ` Simon Clubley
2018-05-04 18:01 ` Dan'l Miller
2018-05-05 12:50 ` Luke A. Guest
2018-05-07 1:06 ` Simon Clubley
2018-05-04 16:29 ` Simon Wright
2018-05-04 17:25 ` Simon Clubley
2018-05-05 12:44 ` Luke A. Guest
2018-05-05 14:19 ` Dan'l Miller
2018-05-05 15:58 ` Lucretia
2018-05-05 18:51 ` Niklas Holsti
2018-05-05 19:30 ` Luke A. Guest
2018-05-05 19:04 ` Dan'l Miller
2018-05-08 21:17 ` Dan'l Miller
2018-05-05 21:44 ` Adacore French connection J-P. Rosen
2018-05-05 21:46 ` Precisely why can't official FSF GNAT maintainers copy bug fixes in GNAT & its GCC-contained runtime en masse from GNAT GPL Community Edition? Simon Wright
2018-05-06 16:37 ` Jacob Sparre Andersen
2018-05-04 19:53 ` antispam
2018-05-04 20:35 ` Dan'l Miller
2018-05-04 21:46 ` Simon Wright
2018-05-04 22:00 ` Dan'l Miller
2018-05-03 21:48 ` Simon Wright
2018-05-03 21:50 ` Simon Wright
2018-05-03 22:06 ` Dan'l Miller
2018-05-04 7:36 ` Simon Wright
2018-05-04 16:45 ` Jeffrey R. Carter
2018-05-04 16:58 ` Dan'l Miller
2018-05-04 11:55 ` Brian Drummond [this message]
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox