On Thu, 13 Sep 2001, Ben Bucksch wrote:
>
> Ian Hickson wrote:
>
>> The LGPL would also prevent anyone from building Mozilla using MSVC++,
>> since the MSVC++ redistributables license disallows reverse
>> engineering, and the LGPL requires that that be allowed.
>
> There're tons of (L)GPLed projects using MSVC++.
Many of these LGPL projects are probably breaking the law.
VC++ license, section 2.4:
# Microsoft grants you a nonexclusive, royalty-free right to reproduce
# and distribute the object code version of the VC Redistributables,
# including any modifications you make.
That's _it_. Microsoft grant you no rights other than reproduction and
distribution, and, as I understand it, you therefore cannot grant any more
rights to your own end users or their end users. However, the LGPL says
that the LGPL'ed project's end users (the authors of programs that use the
LGPL'ed library) must allow _their_ end users to reverse engineer their
program, which at this stage includes the MSVC++ code, which the end user
is not allwed to reverse engineer.
This causes a conflict, and section 11 of the LGPL explains how to deal
with these:
# If you cannot distribute so as to satisfy simultaneously your
# obligations under this License and any other pertinent obligations, then
# as a consequence you may not distribute the Library at all.
Note that, ironically, this "problem" (not a problem IMHO -- don't use
Microsoft's programs) doesn't occur if you use only the GPL.
>> The only case where I can see a problem is where a specific LGPL
>> library wishes to use Mozilla's code directly (i.e., not linking to
>> it). Is there really such a case?
>
> I think so. That's the idea of open-source --
Screw open source. The idea of free software is that ALL users should be
able to run the source, study the source, adapt the source, and
redistribute the source. The LGPL should only be used when it can do this
better than the GPL -- namely, when the service that the library provides
is already commonly provided. The services that Mozilla provides do not
fall into that category, and therefore IMHO we have no need to be
promoting proprietary software.
See:
http://www.fsf.org/philosophy/why-not-lgpl.html
http://www.gnu.org/philosophy/free-sw.html
> to have a large pool of software you can use to build new projects.
> Let's say, I want to use the TXT->HTML converter in an LGPL project. I
> may have to change the string classes, but most of the code could be
> reused. I would not even be allowed to reuse a few lines, if it is
> under the MPL or the GPL only (ignoring that I happened to write it
> myself).
And that is exactly WHY I am against using the LGPL. An LGPL project
should NOT be using free software code. If the project wants the code that
much, it should switch to a strong copyleft free software license.
>> The GPL is pretty clear about it. Do you have any specific examples of
>> where you think it is unclear?
>
> Yes. Galeon, a GPL project, uses Mozilla libraries. In order to build
> Galeon with Mozilla, would it have to change all Mozilla code or could
> it be used unchanged?
The next four paragraphs come from:
http://www.fsf.org/licenses/gpl-faq.html#WritingFSWithNFLibs
If you want your program to link against a library not covered by that
exception, you need to add your own exception, wholly outside of the GPL.
Only the copyright holders for the program can legally authorize this
exception. If you wrote the whole program yourself, then assuming your
employer or school does not claim the copyright, you are the copyright
holder--so you can authorize the exception. But if you want to use parts
of other GPL-covered programs by other authors in your code, you cannot
authorize the exception for them. You have to get the approval of the
copyright holders of those programs.
When other people modify the program, they do not have to make the same
exception for their code--it is their choice whether to do so.
Adding this exception eliminates the legal issue, but does nothing about
the more serious problem of using a non-free library: your program won't
be fully usable in a free environment. If your program depends on a
non-free library to do a certain job, it cannot do that job in the Free
World. If it depends on a non-free library to run at all, it cannot be
part of a free operating system such as GNU; it is entirely off limits to
the Free World.
This is one of the main reasons we should move Mozilla to the GPL -- so
that this kind of problem does not arise.
>> I should also point out that my
>> overall opinion on this issue is that we should be pure GPL
>
> My personal opinion is that the GPL was poorly designed, because I think
> that this very discussion should never have to happen. The GPL is, IMO,
> not as free as other licenses.
You're right, it isn't. It was very carefully designed to make it
impossible to use GPL-covered software in proprietary environments.
http://www.gnu.org/philosophy/why-free.html
--
Ian Hickson )\ _. - ._.) fL
/. `- ' ( `--'
`- , ) - > ) \
irc.mozilla.org:Hixie _________________________ (.' \) (.' -' __________