
Bulat Ziganshin wrote:
in short, that means that software compiled with this compiler AND distributed to general audience, should have GPL-compatible license (i.e. GPL or BSD-like) (as far as i understand GPL/LGPL terms)
Any software compiled with this compiler, or only software that uses System.Console.Readline?
any software that links with readline.a or gmp.a. which actually means every program because even if you don't use GMP, it's probably still linked in
No, GMP is only LGPL, not GPL. So it only needs to be LGPL compatible unless it uses readline.
Isn't this the same on all platforms? If what you are saying is correct, then isn't it required for any program compiled with any readline-enabled GHC to have a GPL-compatible license? I don't think that's right, but IANAL.
for me, GMP is much more problematic issue. strictly speaking, we can't say that GHC is BSD-licensed because it includes LGPL-licensed code (and that much worse, it includes this code in run-time libs)
LGPL specifically allows BSD-licensed software to link in object code that is LGPL. But, basically, you need to include the source code of the LGPL parts in your distribution package, and mention in your license notice that part of the code is LGPL. If LGPL is a problem for your project, that is hard to get around right now. We have been reading about efforts to allow alternative multi-precision libraries with GHC. That is very important work, but apparently difficult. However, LGPL is often not a serious problem, even for commercial products. GNU readline, on the other hand, is never suitable for non-free software. The authors of the GNU readline library have publicly stated that the whole reason they are using GPL is to make sure that no non-free software ever uses it. So this work to use editline instead of readline in GHC is very important for all platforms, not just the Mac. editline is BSD licensed. Therefore, I think the focus should be to get the best readline compatibility possible by using a sufficiently recent version of editline. If that causes problems on a specific platform, like Tiger, that is a lower priority. (I say that even though I myself am on Tiger.) We can work around that separately. -Yitz