As a special
exception, if other files instantiate generics from ....
Ada units, or you link ..... Ada units or libraries with other files to
produce an executable, these units or libraries do not by itself cause
the resulting executable to be covered by the GNU General Public
License. This exception does not however invalidate any other reasons
why the executable file might be covered by the GNU Public License. The
following explanation published at comp.lang.ada may help you to
understand the consequences:
"If you use GPL software in your software, your
software is forced to itself abide by the GPL and its source must be
released, i.e., the GPL software "infects" yours. The LGPL normally
typically applies to libraries, such as shared libraries or DLLs.
Linking to an LGPL licensed library _does_not_ cause your software to
become GPLed. (The definition of "linking" in this context was a focus
of the recent cla GPL thread.) The "GNAT Modified GPL (GMGPL)", a
portion of which is quoted above, allows GMGPL-covered software (such
as the bodies of generics) to be included in your software without
"infecting" your software with the GPL. The GMGPL covered software
itself remains free, and any changes made to that software must be
free, but that aspect of that license ends at the unit's boundary. Your
software can be free, open source, or proprietary, the GMGPL does not
influence that aspect, though the use of other software yours employs
might (e.g. using GPL software)."