
Having Read the GPL license one solution for binary distributions may be to install in two packages - one for any GPL'd stuff, and one for the rest - if these are aggregated onto the same media the GPL only applies to the originally GPL'd stuff. This would be enough if the libraries are dynamically linked. If statically linked you could always distribute a ghc.o in one package and the library.a files in another, and do a final link as part of the installation process (the user must have a linker to run ghc anyway). Keean Schupke Martin Norbäck wrote:
I have a problem with the readline license that applies to ghc, and programs compiled with ghc.
The readline library is under the GPL license. This means that any program (including ghc) that links with this library must itself be licensed under the GPL.
This is very unfortunate. I would suspect that this only applies if you actually use the Readline module, so I can just avoid that.
However, using -package lang (to get the GetOpt module) links with -lreadline even though it's not necessary. So the resulting binary is dynamically linked with libreadline. My meaning is that this is not a license violation of readline, but I am no lawyer, and I recall Richard Stallman of the FSF says differently.
Linking statically with -lreadline may be a solution, since the linker is smart and removes unused code in statically linked libraries. If only I could be sure that that's the fact.
I think most ghc users have better things to do than to track licenses of libraries that ghc links your program to, so I suggest that the Readline module is either removed or moved to a separate package, so that there is no doubt that it's not linked in.
Another question is what to do with ghc, ghc uses readline and is not licensed under the GPL. A possible GPL violation, at least it would be according to Richard Stallman.
Regards,
Martin
-- Martin Norbäck Safelogic AB martin.norback@safelogic.se Stena Center 1C +46 (0)31 772 81 70 S-412 92 GÖTEBORG http://www.safelogic.se SWEDEN
------------------------------------------------------------------------
signature.ascName: signature.asc Type: application/pgp-signature