comp.lang.ada
 help / color / mirror / Atom feed
From: pontius@btv.ibm.com (Dale Pontius)
Subject: Re: LGPL Requirements (was: Selecting Ada95 compiler for MSDOS realtime application)
Date: 1996/11/07
Date: 1996-11-07T00:00:00+00:00	[thread overview]
Message-ID: <55t2nv$1b5e@mdnews.btv.ibm.com> (raw)
In-Reply-To: 55rs5t$2a3@nw101.infi.net


In article <55rs5t$2a3@nw101.infi.net>,
        "F. Britt Snodgrass" <ada95@fyiowa.infi.net> writes:
>...
>Perhaps Richard's comment was made precisely because he has read the
>GNU Library General Public License (LGPL) that covers GNAT's libraries.
>The LGPL makes no distinction between compilers and any other type of
>executable program that has LGPL'd libraries linked in. I assume that
>the bodies of GNAT's standard Ada packages contain such library code.
>As I read it, the LGPL says I have to either (1) provide all my object
>code to my customers so that they may relink my program with a
>newer/modified version of the LGPL'd libraries or (2) explictly allow
>them to reverse engineer my program for the purpose of modifying it.
>...
>Now if it is my business to write embedded software for video games machines
>and/or nuclear reactor control systems, I could reasonably view the LGPL
>requirements as both an annoyance and as a product safety risk.  While I
>understand and appreciate the spirit of free software, I may not want my
>customers to have the ability to reverse engineer and modify software embedded
>in the products I sell.
>
>I would be happy to have someone convince me I'm reading too much into the LGPL
>but it seems pretty clear to me.  As much as I like GNAT, using it to develop
>embedded software for a non-free commercial product seems to levy additional
>requirements compared to using a non-free Ada compiler.  Am I wrong?
>
Would this be solved if dynamic linking were used? The GNAT runtime
could be kept in a completely separate file which could be replaced
at will without touching your code. That way there would be no need
to reverse engineer your code.

In practice this would end up looking like DOS4GW programs. The main
program becomes DOS4GW.EXE, and it dynamically loads and executes your
program. Otherwise you would need to have the dynamic loading part of
GNAT embedded in your code, and the same problems come back. If you're
concerned about 'one file', use binary concatenation. The GNAT loader/
library program looks 'after itself' to find the start of your code.
You could supply a simple strip/combine utility and you're done.

Dale Pontius
(NOT speaking for IBM)





  reply	other threads:[~1996-11-07  0:00 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-11-07  0:00 LGPL Requirements (was: Selecting Ada95 compiler for MSDOS realtime application) F. Britt Snodgrass
1996-11-07  0:00 ` Dale Pontius [this message]
1996-11-07  0:00   ` Robert Dewar
1996-11-07  0:00 ` Samuel Tardieu
1996-11-07  0:00 ` Robert Dewar
1996-11-08  0:00   ` F. Britt Snodgrass
1996-11-08  0:00     ` Richard Kenner
1996-11-09  0:00       ` Robert S. White
1996-11-08  0:00         ` Robert Dewar
1996-11-09  0:00         ` Fergus Henderson
1996-11-09  0:00           ` Robert Dewar
     [not found]             ` <562p07$cf8@flood.weeg.uiowa.edu>
1996-11-09  0:00               ` Robert Dewar
1996-11-09  0:00         ` Richard Kenner
1996-11-08  0:00     ` Robert Dewar
1996-11-08  0:00   ` Jon S Anthony
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox