From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,f6ad09be517b338c X-Google-Attributes: gid103376,public From: pontius@btv.ibm.com (Dale Pontius) Subject: Re: LGPL Requirements (was: Selecting Ada95 compiler for MSDOS realtime application) Date: 1996/11/07 Message-ID: <55t2nv$1b5e@mdnews.btv.ibm.com>#1/1 X-Deja-AN: 195104333 references: <55rs5t$2a3@nw101.infi.net> organization: IBM Microelectronics Division newsgroups: comp.lang.ada Date: 1996-11-07T00:00:00+00:00 List-Id: In article <55rs5t$2a3@nw101.infi.net>, "F. Britt Snodgrass" 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)