I would like to suggest that the SDL license be changed from LPGL to LPGL
with an embedded use / static object code exception. I know this sounds
bizarre, so before you flame me, please see the wxWindows
license: “www.wxwindows.org”.
To quote a wxWindows distribution:
“Most files are distributed under the GNU Library General Public
License, version 2, with the special exception that you may create and
distribute object code versions built from the source code or modified
versions of it (even if these modified versions include code under a
different licence), and distribute such binaries under your own
terms.”
On the SDL licensing page, Sam Lantinga has personally stated that he does
not care if individuals use SDL for embedded use, so why not make this legal?
The wxWindows LPGL embedded license was recently sanctioned by the Open Source
Initiative and should in no way stagnate the growth of SDL or allow
development to be controlled by third parties.
Many add-on libraries by disparate SDL developers exist and are in common
use. If the core library adopted an embedded license, others would surely
follow and developers could avoid the “DLL bloat” that occurs when linkage
must occur with seven or eight DLLs. More importantly, an embedded license
allows developers to implement proper security.
For instance: The game I am developing utilizes SoundFX created by a major
corporation. These SoundFX are distributed in encrypted format along with the
binary of my game. Under American law, I am required to protect these SoundFX
from being unlawfully accessed by the end user. If the end user streams
SoundFX during gameplay I cannot be held liable because of American streaming
laws. If however, the end user recompiles the SDL library my game dynamically
links with to dump soundfx in unencrypted format to the users hard disk, I can
reasonably be sued for damages. The level of encryption I use is
insignificant as the end user still has a backdoor through SDL. While this
remains conceivably possible with static linkage, it is much less likely and
is certainly less obvious.
Static linkage issues is the sole reason I am currently using Allegro. I
have reviewed Allego, SDL, Clanlib, CDX and several other game development
enviroments and SDL is the cleanest I have seen yet. If the DLL linkage issue
was resolved I would become a complete convert. As it stands right now, I
cannot afford to.
To the powers that be: Please look into the wxWindows license and let me
know if you ever decide to allow embedded use.
Regards,
Matt