From: John Devereux on
Jon Kirwan <jonk(a)infinitefactors.org> writes:

[...]

> Partly, it was exactly because of your reaction. We've
> recently had a modest discussion about licensing and I have
> frankly found my reading of specific licenses to have muddled
> by understanding more than clarified it. So much to take in
> and it still hasn't gelled in my mind, yet.
>
> Partly, I think, because I'm not yet even sure what I want.
>
> I'm very much open to ANY thoughts here.
>

How about "Written by Jon Kirwan 2010. This file is hereby released into
the public domain" ?

Otherwise, perhaps the "BSD style" license as used by other
embedded-controller oriented free projects. Based on the one I just
found in in avr-libc:

Copyright (c) 2010 Jon Kirwan

All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.

* Neither the name of the copyright holders nor the names of
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.


[...]

--

John Devereux
From: David Brown on
On 08/03/2010 08:41, Frank Buss wrote:
> David Brown wrote:
>
>> Static linking is allowed, but it's not straightforward to be compliant
>> while linking statically - dynamic linking makes it much easier. With
>> static linking, you have to supply linkable object files along with any
>> other files or instructions needed for the end user to be able to
>> re-compile the LGPL'ed files and re-link with the rest of your object files.
>
> This article:
>
> http://answers.google.com/answers/threadview/id/439136.html
>
> says the same, but it says, that e.g. Richard Stallman does not
> interpret the LGPL in this way, so you are safe, if you ask the copyright
> holder of the library, before you do such things.
>

I read the thread linked above - it says pretty much the same as I have
said, as far as I can see.

The particular paragraph you refer to is:

"However, others (in particular, Richard Stallman) does not necessarily
interpret the LGPL in this way. I strongly recommend you contact the
copyright holder prior to building a statically linked application for
distribution as a commercial product."

This suggests that the library copyright owner may be more flexible than
the wording of the LGPL, and that you can contact them for specific
permission to statically link the LGPL code with other code without
having to provide end users with your object code. That is always
applicable - copyright owners are always able to give specific permission.

It also suggests that RMS has a different interpretation - but does not
indicate /how/ he interprets it. My guess is that he would say that
statically linking to LGPL code requires that your code be LGPL - i.e.,
that you must release your source code as well as your object code. It
seems unlikely that he would allow people greater flexibility in keeping
their source code and object files secret.


From: David Brown on
On 08/03/2010 03:54, whygee wrote:
> David Brown wrote:
>> The LGPL says that you must LGPL any code that includes the LGPL'ed code
> ??? where is it written in the original texts ?
>
>> It not that complicated, if you follow simple rules.
> well, these are the rules as you have understood them.
>
>> If you use LGPL'ed code statically linked, you should (L)GPL the rest
>> of that application (this makes it much easier to follow the rules).
> note the "should", not "must" :
> this is easier for you, but not what the LGPL intends.
>

It's not what the LGPL requires, but it is an easy way to be sure you
are compliant. You can certainly keep your code more secret and still
link statically to LGPL code, as I've said elsewhere, but I'm trying to
give easy-to-follow guidelines here, not minimal rules (for that you can
always read the LGPL and ask a lawyer...)

>> If you have an OS that is statically linked with the applications, or
>> no OS at all, then the whole lot must be GPL'ed if you use any GPL'ed
>> code, and the whole lot /should/ be LGPL'ed if you use any LGPL'ed
>> code (again, that's to make it easier).
> (same remark as above)
>
>>> Whoops -- reading other comments I'm reminded that the LGPL may
>>> 'poison' the licensing of this code a bit more than I had thought.
> why use the term "poison" ?
> a poison is a poison, it's bad, that's all.

That wasn't my term.

> Codes that come under (L)GPL have some advantages,
> they are a bit picky, that's all.
>

Agreed.

>> I'm glad you corrected yourself here. These LGPL threads will be a lot
>> easier when "heavyweights" like yourself understand the license. /I/
>> can post what I like, but people /believe/ the guy who wrote the book,
>> so you'd better get it right!
> let's simply ask RMS...
> just to see how he replies :-)
>
>> The licence for eCos and FreeRTOS basically says that the code
>> provided in the OS is under the GPL, but with an exception that you
>> can statically link your own code to the OS (and libraries) without it
>> the (modified) GPL "spreading" to your own code.
>
> So following this idea,
> Jon can add a licence notice that :
> " this code is released under LGPL, with the exception
> that you can #include these source files in whatever
> code you develop"
> It should be ok, i've seen it done already for other cases.
> I'm using Affero GPL for a project, which is just GPL
> with an additional section about networked code.
>

That's the essence of the eCos and FreeRTOS licenses, and would (I
think) be a very reasonable choice of license for the code.

It looks like Jon's intentions are a bit looser than that - he does not
want to require people to make their changes available to others, or to
require that the pass on the source code to other users. That suggests
a simple BSD license is what he wants.
From: Jon Kirwan on
On Mon, 08 Mar 2010 01:00:40 -0700, D Yuniskis
<not.going.to.be(a)seen.com> wrote:

><snip>
>Nowadays, with FLASH based systems, it becomes increasingly
>more common to swap in bits of your application "as needed".
>(i.e. serial FLASH). With dynamic linking (late binding)
>this is a piece of cake! Load the code into RAM, make
>all the bindings (unresolved externals) to the "resident
>code", then "run". When done, throw it away and load whatever
>the next part of the application needs to be.

This would be impractical on most of the products I work on.
Doable on a few, I suppose. Tempting on one or two. But
it's mostly not possible.

Jon
From: Jon Kirwan on
On Mon, 08 Mar 2010 08:37:15 +0000, John Devereux
<john(a)devereux.me.uk> wrote:

>Jon Kirwan <jonk(a)infinitefactors.org> writes:
>
>[...]
>
>> Partly, it was exactly because of your reaction. We've
>> recently had a modest discussion about licensing and I have
>> frankly found my reading of specific licenses to have muddled
>> by understanding more than clarified it. So much to take in
>> and it still hasn't gelled in my mind, yet.
>>
>> Partly, I think, because I'm not yet even sure what I want.
>>
>> I'm very much open to ANY thoughts here.
>>
>
>How about "Written by Jon Kirwan 2010. This file is hereby released into
>the public domain" ?

Done that and that wouldn't hurt in this case, either.

>Otherwise, perhaps the "BSD style" license as used by other
>embedded-controller oriented free projects. Based on the one I just
>found in in avr-libc:
><snip of good example, not unlike some I've used before>

Been there, too. Would work here, as well.

I kind of liked yg's suggestion, too.

Jon