Folks,
I have spend a bit of time tonight looking at LGPL 2.1, LGPL FAQ
entries, and Wikipedia to try and work out whether or not a commercial
game – Dungeons of Dredmor from Gaslamp Games (herein referred to as
"DoD") – is in fact in violation of the LGPL.
Based on what I’ve read (and I will provide references to the material),
it appears that they’re in violation, but I need folks here to help
clarify/determine.
I also want to state up front that my intention here is not to get
Gaslamp Games into any trouble. This investigation came about privately
between a colleague of mine (who’s a game programmer) and myself, when
talking about licenses and the SDL. This game was cited as a reference
point, and that lead to this investigation. There is no malice here.
I should also note I personally use the 2-clause and 3-clause BSD
licenses for my software, but that has no bearing on this issue; I state
it simply because as a software author myself I’m familiar with some
licenses.
So let’s get to it:
- DoD, as of this writing, distributed via Steam, does not include any
source for anything – itself, any libraries, etc… Not within any .zip
files or other means either.
You’re going to have to trust me on this. Obviously I cannot tar/zip up
the contents of the installation directory and make it available on the
Internet, given copyright infringement, etc… for folks to review.
-
The game includes SDL.dll (in the installation directory), and the
version of the DLL is 1.2.15.0 (taken from DLL headers). DoD therefore
dynamically links to SDL (this matters; keep reading). -
SDL 1.2 was released under the LGPL 2.1 license:
http://www.libsdl.org/license.php
http://www.libsdl.org/license-lgpl.php
- The SDL 1.2 license summary page states clearly:
“To comply with this license, you must give prominent notice that you use
the Simple DirectMedia Layer library, and that it is included under the
terms of the LGPL license. You must provide a copy of the LGPL license.”
No where stated within DoD or within the installation (in a file or
otherwise, that I can find) is there mention that SDL is used, that it
is included under the terms of LGPL 2.1, nor is there a copy of the LGPL
provided anywhere. Even the “Credits” screen in-game makes no mention
of any of this, the Title screen, nor any Exit/Quit screen.
Since it’s a game, the best I could do would be to provide screenshots
of the Credits screens).
- Furthermore, the SDL 1.2 license summary page states clearly:
“If you include the SDL library in binary form, you should also make
available the source code to the version you provide, including any
customizations you have made. If you link to a standard version of the
library, simply referring to the SDL website is sufficient.”
Yet, as I stated in #1 above, there is no source code provided with DoD
for the SDL DLL used. And even if its the stock SDL DLL, as stated in
#4 above, there is absolutely no mention of www.libsdl.org anywhere –
including on the DoD website or Gaslamp Games’ website:
http://www.dungeonsofdredmor.com/
http://www.gaslampgames.com/
- Back in July 2011 the author of DoD posted to the SDL mailing list,
talking about SDL 1.3, and stated that he used a modified version of SDL
1.2 – at least in the past:
http://lists.libsdl.org/pipermail/sdl-libsdl.org/2011-July/081550.html
This relates directly to #5 above, given the possibility that
modifications were made (again, at least in the past). Determining this
is difficult; a binary file compare won’t necessarily prove anything,
for example, given compile differences, optimisation flags, etc…
- There is also this thread, unrelated to DoD, where LGPL licensing
came into question for commercial games. I used this as reference
material as well:
http://lists.libsdl.org/pipermail/sdl-libsdl.org/2000-August/010849.html
http://lists.libsdl.org/pipermail/sdl-libsdl.org/2000-August/thread.html#10849
Please be sure to read all the replies in the thread, not just that one
post.
- Finally, I reviewed LGPL vs. GPL differences per Wikipedia, and it
seemed quite clear (in the same way that the SDL 1.2 license summary
page is):
http://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License#Differences_from_the_GPL
DoD is a non-LGPL-licensed program (thus proprietary), thus “not a
derivative work”; it’s an executable that dynamically links to SDL.dll.
No static linking is done (to SDL anyway).
Thoughts/comments/concerns/corrections?–
| Jeremy Chadwick @Jeremy_Chadwick |
| UNIX Systems Administrator http://jdc.koitsu.org/ |
| Mountain View, CA, US |
| Making life hard for others since 1977. PGP 4BD6C0CB |