Copyleft license that allow inclusion in other program?

John Cowan cowan at ccil.org
Sat Aug 22 18:03:33 UTC 2009


S P Arif Sahari Wibowo scripsit:

> Hi opensourcer!

That's "Open Sorcerer".  :-)

> Do you know whether there are any licenses that allow inclusion 
> (more than just linking) of the code into other program with 
> other license, but the license is still copyleft (albeit weak)?
> 
> Why inclusion instead of linking? Well, for scripts "library" or 
> snippets which are distributed and run from source, there are 
> issues with linking:
>  - the term "linking" is not very meaningful (often done by the 
> interpreter include the code into the caller code).
>  - some scripts snippets do required to be included to be useful 
> (e.g. some shell codes that need to be put into the startup 
> scripts).

The LGPL is perfectly suitable for such uses.  The real distinction
made in the LGPL is between a "work based on the library" vs. a "work
that uses the library" (LGPLv2.1 terminology), or a "modified version"
vs. a "combined work" (LGPLv3 terminology).  I'll use v3 terminology here.

In one case, you are producing a modified version of the library that is
intended to do more or less the same thing as the original, in which case
your new version must be licensed under the LGPL.  In the other case,
you are producing a separate work that uses the library to perform some
of its functions, and combining the separate work with the library for
delivery, in which case you can use any license, provided you deliver
the source of the library and, most importantly, make it possible for
the user to replace the LGPLed part of the code.

The discussion of linking is simply to cover the special case when
the combined work is a statically linked executable.  In that case,
the creator of a combined work must provide the restrictively licensed
parts in such a way that the user can drop in a new version of the
LGPLed library and recombine or relink them to create a new statically
linked executable.  This is typically done by providing .o or .obj files
containing the restrictively licensed code.  But if the code simply uses
a dynamically linked library (.so or .dll, or an equivalent like .jar)
that is LGPLed, or the code is delivered in source form, then linking
is not an issue.

I am not a lawyer, and this is not legal advice, but it is not the
unauthorized practice of law either.

-- 
John Cowan                                <cowan at ccil.org>
Yakka foob mog.  Grug pubbawup zink wattoom gazork.  Chumble spuzz.
    --Calvin, giving Newton's First Law "in his own words"



More information about the License-discuss mailing list