[Libwebsockets] If is it possible to change the licence from LGPL to BSD or MIT?

"Andy Green (林安廸)" andy at warmcat.com
Thu Feb 7 16:59:10 CET 2013


On 07/02/13 09:40, the mail apparently from "Andy Green (林安廸)" included:
> On 07/02/13 02:19, the mail apparently from FNA included:
>> A little while back, i saw a project that stated it was dual licensed
>> under LGPL and BSD/MIT. Not quite sure how that works, but it might be
>> something to consider.
>
> I actively don't want to see libwebsockets with additional ports,
> features or fixes shipping to customers where no source for the changes
> is provided.  So BSD or MIT is not the right answer for this project.
>
> However I don't really see much loss enabling static builds with the
> rules otherwise LGPL 2.1.
>
> Looking around this is referenced as a template
>
> http://www.fltk.org/COPYING.php
>
> Copying rider sections 3 & 4 (+/- talk of "widgets") of that and then
> LGPL 2.1 in LICENSE look like they would solve the iOS thing reasonably.
>
> Section 3 is saying we don't consider that static linking gives us any
> right about the code outside the library.  However any changes to the
> library must be provided under LGPL rules.
>
> Section 4 of the rider there is saying you must mention that
> libwebsockets was used somewhere to advise the user he can have the
> sources / rights under the license, but you don't have to do that in the
> code.
>
> So it's still LGPL2.1 the same but an additional right to static link
> and clarification we don't want to liberate your other code unrelated to
> libwebsockets.
>
> I invited everyone who contributed to lws in the last year to the
> mailing list earlier in January so I guess everyone who cares is here...
> any objections to this plan?

I added stock LGPL2.1 into ./LICENSE, then added the fltk 3 + 4 
exceptions in, with widgit language removed

http://git.libwebsockets.org/cgi-bin/cgit/libwebsockets/commit/?id=c11b587aede7e8a0e0d2c06b4714690ee02cd04e

AFAIK that should provide a fair and reasonable way to static-link to 
libwebsckets while still keeping the basic lgpl 2.1 rules.

-Andy

>> On Wed, Feb 6, 2013 at 9:44 AM, "Andy Green (林安廸)" <andy at warmcat.com
>> <mailto:andy at warmcat.com>> wrote:
>>
>>     On 06/02/13 21:56, the mail apparently from Peter Young(杨世玲)
>>     included:
>>
>>         Hello Andy,
>>
>>                   sorry for didn't explain the issue clearly.
>>
>>                   In iOS, only statically linked is allowed.
>>                   so, if someone want use libwebsockets in iOS game,
>>         means the game will be LGPL too, and the source should be
>>         public. obviously, in most case this is not an option.
>>
>>                   In  this case, can you re-consider this issue?
>>
>>                   libwebsockets is a great lib, thanks for your great
>>         effort.
>>
>>
>>     Well, that's a different issue than needing to change the license to
>>     "BSD or MIT".
>>
>>     Actually this has come up before, someone else had a similar issue a
>>     couple of years ago and I found there's a "static linking exception"
>>     possible as a bolt-on for LGPL.  I wrote them that they could
>>     consider it under that exception IIRC.  I don't think we will lose
>>     much by generally adding the exception, unless there are objections.
>>
>>     That leaves intact the LGPL requirement to give sources /
>>     modifications for the library part of the binary you're
>>     distributing, which I think is very important to keep the project
>>     healthy.
>>
>>     But it directly solves the static link issue.
>>
>>     I'll research the options for wording and such tomorrow and look at
>>     adding an explicit LICENSE file to make whatever we do clear,
>>     constructive comments welcome.
>>
>>     -Andy
>>
>>
>>         ------------------ Original ------------------
>>         From:  ""Andy Green (林安廸)""<andy at warmcat.com
>>         <mailto:andy at warmcat.com>>;
>>         Date:  Wed, Feb 6, 2013 04:51 PM
>>         To:  "Gregory Junker"<ggjunker at gmail.com
>>         <mailto:ggjunker at gmail.com>>;
>>         Cc:  "Peter Young(杨世玲)"<young40 at qq.com
>>         <mailto:young40 at qq.com>>;
>>         "libwebsockets"<libwebsockets at __ml.libwebsockets.org
>>         <mailto:libwebsockets at ml.libwebsockets.org>>;
>>         Subject:  Re: [Libwebsockets] If is it possible to change the
>>         licence from LGPL to BSD or MIT?
>>
>>         Hi -
>>
>>         Is that a problem with lgpl though or a problem with closed
>>         commercial game distribution?
>>
>>         MIT is certainly liberal but the result that people use the
>>         library without cooperation or giving back is non-liberal. From
>>         my pov lgpl is rational because in exchange for giving people
>>         the work, contribution back is encouraged that I also can
>>         benefit from. Merely hearing that xyz is using this work,
>>         charging for it, has added features they are not sharing, is not
>>         a satisfying result from my pov considering it is largely my
>>         work. I think that should be a reasonable pov.
>>
>>         If people can find a way to do shared object linking there's no
>>         problem, that sounds pretty fair to me. I am certainly not
>>         interested in trying to force liberaliztion of their stuff
>>         unrelated to lws. Of course if there is a situation that's
>>         unfair we can chew it over. But that's my basic position, giving
>>         back is a legitimate demand in exchange for free access to the
>> work.
>>
>>         -Andy
>>
>>         Gregory Junker <ggjunker at gmail.com <mailto:ggjunker at gmail.com>>
>>         wrote:
>>         The problem with LGPL usually comes up with commercial game
>>         distribution, often on consoles but more often now on handheld
>>         devices. It might be possible to distribute a game with shared
>>         objects, but usually games prefer to be statically-linked to
>>         limit hacking opportunities. Ogre3D, as an example, used to be
>>         LGPL until users expressed interest in using it in console games
>>         and other statically-linked applications, and the project
>>         founder changed it a couple of releases ago to MIT.
>>
>>
>>         On Tue, Feb 5, 2013 at 11:30 PM, "Andy Green (林安廸)"
>>         <andy at warmcat.com <mailto:andy at warmcat.com>> wrote:
>>         On 06/02/13 01:30, the mail apparently from Peter Young(杨世玲)
>>         included:
>>
>>         Hello Andy,
>>
>>                   I'm working on integrate libwebsockets to cocos2d-x.
>>
>>                   Cocos2d-x is a cross-platform game engine, can write
>>         game for ios, android, blackberry, etc.   The are many popular
>>         games based on cocos2d-x. official site: http://cocos2d-x.org
>>
>>                   cocos2d-x is under MIT license. so, there will be a
>>         license issue if a game using libwebsockets and the  developer
>>         wants to keep there codes close source.
>>
>>                   If is it possible to change the licence from LGPL to
>>         BSD or MIT?
>>
>>         I think LGPL is pretty liberal, and the git history shows a good
>>         level of contribution coming back.
>>
>>         Originally and without much thought, libwebsockets was actually
>>         GPL2, simply because I do Linux kernel work and that was my
>> default.
>>
>>         However it was pointed out that's not really a fair choice for
>>         libraries, and it's true I don't want to force people to license
>>         the rest of their stuff liberally if they don't want to.  So I
>>         changed it a long while back to LGPL.
>>
>>         Can you explain what the license problem is with cocos2d-x?
>>           Presumably if it's dynamically linked, there should be no
>>         problem including LGPL sources in a project that is otherwise
>>         MIT.  If it's statically linked, that can be a problem.
>>
>>         If you consider a distro like Fedora or whatever, it's made up
>>         of all kinds of licensed sources you can freely download the
>>         same although redistribution rules differ part by part.  In
>>         itself, so long as it's clearly stated, it doesn't make trouble
>>         AFAIK.
>>
>>         -Andy
>>
>>         _________________________________________________
>>         Libwebsockets mailing list
>>         Libwebsockets at ml.__libwebsockets.org
>>         <mailto:Libwebsockets at ml.libwebsockets.org>
>>         http://ml.libwebsockets.org/__mailman/listinfo/libwebsockets
>>         <http://ml.libwebsockets.org/mailman/listinfo/libwebsockets>
>>
>>
>>     _________________________________________________
>>     Libwebsockets mailing list
>>     Libwebsockets at ml.__libwebsockets.org
>>     <mailto:Libwebsockets at ml.libwebsockets.org>
>>     http://ml.libwebsockets.org/__mailman/listinfo/libwebsockets
>>     <http://ml.libwebsockets.org/mailman/listinfo/libwebsockets>
>>
>>
>>
>>
>> --
>> --A programmer started to cuss
>> --Because getting to sleep was a fuss
>> --As he lay there in bed
>> --Looping 'round in his head
>> --was: while( !asleep() ) sheep++;
>> --Nothing is impossible! It is merely a matter of figuring out How?
>




More information about the Libwebsockets mailing list