lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lwip-users] RE:Re: [lwip] Should LwIP go (L)GPL ?


From: barryc
Subject: [lwip-users] RE:Re: [lwip] Should LwIP go (L)GPL ?
Date: Wed, 08 Jan 2003 23:48:17 -0000

>The LGPL also forces changes to be submitted,
>but allows code to be linked that is proprietary.
>So a company can use LwIP and still keep its
>applications secret that link with LwIP.

Almost, but not quite.
Under the LGPL, if you DYNAMICALLY link against the library, you may licence 
your program's code as you see fit.  However, if you STATICALLY link your code 
to it, your entire program must be LGPL (or GPL).

Since I don't know of any embedded microcontrollers (eg: HC12, 8051, etc) that 
you'd be willing to take the overhead hit of dynamically loading the library, 
you wouldn't be able to use an LGPL LWIP on anything less robust than a 
PalmPilot if you want to keep your application's source closed and prevent 
reverse engineering.

To quote from section 5 of the LGPL:

#BEGIN QUOTE
A program that contains no derivative of any portion of the Library, but is 
designed to work with the Library by being compiled or linked with it, is 
called 
a "work that uses the Library". Such a work, in isolation, is not a derivative 
work of the Library, and therefore falls outside the scope of this License.

[SNIP ONE PARAGRAPH]

When a "work that uses the Library" uses material from a header file that is 
part of the Library, the object code for the work may be a derivative work of 
the Library even though the source code is not. Whether this is true is 
especially significant if the work can be linked without the Library, or if the 
work is itself a library. The threshold for this to be true is not precisely 
defined by law. 
#END QUOTE

This describes what you see when dynamically linking in a library at runtime.
Statically linking a library into your executable is covered by the paragraph I 
cut out from what's above:

#BEGIN QUOTE
However, linking a "work that uses the Library" with the Library creates an 
executable that is a derivative of the Library (because it contains portions of 
the Library), rather than a "work that uses the library". The executable is 
therefore covered by this License. Section 6 states terms for distribution of 
such executables. 
#END QUOTE

[This message was sent through the lwip discussion list.]




reply via email to

[Prev in Thread] Current Thread [Next in Thread]