Slashdot Mirror


GPL/LGPL Issues - Moving GPL'd Code into Libs?

QuantumG asks: "What happens when someone writes a program and releases it under the GPL and then someone discovers that the program contains useful portions of code that really should be in a separate library that should be under the LGPL. One cannot simply pick up GPL'd code, make it into a library and release it LGPL. That would violate the GPL, right?" Would it? Hit the link below for more.

"Here is an e-mail I fired off to the leader of MaPlay 1.2+ for Win32, an MP3 player for Windows asking his opinion.

Date: Sat, 29 Jan 2000 17:53:27 +1000 (GMT+1000)
From: Trent Waddington 
To: ctsay@pasteur.eecs.berkeley.edu
Subject: MAPlay & Licenses

Hello.  I have been looking at MaPlay 1.2+ for Win32 and have been
very impressed with it.  I have taken the base code and added a simple
API to it (and removed playlists and such) and recompiled it as a
DLL. Now the question becomes one of LGPL vs GPL.. If I use the DLL in
a program to play MP3 files, am I then required to release the source
of that program under the GPL?  Obviously if I wrote a trivial WinAmp
like MP3 player frontend and used the DLL as the backend I would
personally expect that to be released GPL.  However, let's suppose
that I write a game and instead of using a bunch of enormous WAV
files, I MP3 compress them and use the MaPlay DLL to play them.  This
to me sounds like a case for LGPL, but the DLL is a "derived work" of
a GPL'd program and, as such, cannot be released under anything less
liberating than it.. is LGPL *less* liberated than GPL or *more*?
I don't think using MaPlay code to play MP3 files instead of WAV files
justifies that an entire game's source tree must be GPL'd.  Obviously
it should be for Open Source reasons but is the enforcement of GPL
valid?

I would personally be interested in knowing how the programmers of
MaPlay would feel if the MaPlay source was (hypothetically) used in a
game that was closed source.  Assuming there was something in the
about box / ending credits saying that the game used the MaPlay source
and that the source (to the player code) was available at the MaPlay
web site. Would you feel ripped off?"
Can anyone unravel the LGPL and GPL issues inherent here to help him out?

2 of 203 comments (clear)

  1. Re:This is a really simple answer... by Bruce+Perens · · Score: 5
    Stallman renamed the LGPL to "Lesser GPL" from "Library GPL". It makes more sense that way because the license doesn't really need to be applied to a library. Either the GPL or the LGPL can be applied to any program.

    If you want to use a GPL library, even with dynamic linking, you should either GPL your program, or find another library to use. So, you can make the program into a GPL library and make a GPL program on top of it.

    If you are concerned that you can't make a proprietary application that uses the library, you should consider that the copyright holder would have used the LGPL had they wanted you to do that, whether or not the program was a library at that time.

    Thanks

    Bruce Perens

  2. In Defense of the LGPL by hypergeek · · Score: 5
    (BE WARNED: The following post is likely to piss off somebody out there. I'm not here to start a holy war or anything, just to make discussion. So think for a few seconds before impulsively launching your barrage of flames. :)

    The LGPL does have its uses, despite RMS' deprecation of it.

    For example, if I wanted to release my software under a less restrictive license than the GPL, I'd be tempted to use the BSD license at first, but if someone incorporates that into a proprietary license, (especially those nasty "source available" licenses that claim to be open source but aren't), then they can sue me for using something derived from my code!

    If I use the LGPL, then any portion of the code that was originally mine stays available for me to use with whatever modifications others add, but it's still usable by anyone, even those whose bosses insist that they write (gasp!) proprietary software.

    If later on, I decide that I want to spread free software "virulently", I can still place my LGPL'ed software under the GPL (the LGPL explicitly lets you do that), just as I could if I had placed it under the BSD license.

    To me, that's what free software should be about, a way to facilitate the free sharing and communal improvement of your code, not forcing others to do the same if they don't want to.

    IMHO, ESR really hit the nail on the head when he identified the "Bazaar" style of development popularized by Linux. Open source software can compete on its own merit, without resorting to a Borg-like assimilation of all the world's software.

    --
    Stay up hacking each weekend. Sleep is for the week.