freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Devel] initial release of FTLayout/GXLayout


From: David Turner
Subject: Re: [Devel] initial release of FTLayout/GXLayout
Date: Fri, 27 Feb 2004 22:28:53 +0100
User-agent: Mozilla Thunderbird 0.5 (Windows/20040207)

Hi Antoine,

David, don't take me wrong, this is not an answer to you, rather an intent
to go further.


??? Anyway, the following is also a (rather long) explanation too :-)

 - as far as I know, the FTL is incompatible with the GPL (hence the


I do not know if they are compatible or not (this is beyond my knowledge,
and the ones that may know, i.e. lawyers, won't take on it; not "tested in
court", they say).

Compatible simply means that it's possible to comply with all of their 
requirements
at the same time. In the case of FTL+GPL, it's pretty easy to determine (see 
below)

I've been talking about that with a few lawyers, and while they do not all agree
on every topic, here's the general knowledge I synthetized from them.

 - A license that you didn't signed is simply not legally binding, and thus 
doesn't
   give you more rights (or obligations) in the strictest sense.

 - If you find some source code on the internet, you simply don't have any 
rights
   to do anything with it, except maybe under the "fair use" conditions. Even 
if the
   file you download contains a file that reads 'this thing is free' (like most
   warez), or "covered by the GPL", the law is very clear that only the 
copyright
   owner has the right to use, copy, distribute, sell, etc.. its own work, and
   only him should decide what people could do with it.

 - I'll take a striking example:

     on May 28 2003, a NullSoft employee "released" a program called "WASTE"
     on its company's web site. WASTE was/is a P2P infrastructure and client 
program
     that does chat, file transfer, and more. The release included source code
     covered by the GPL.

     However, this release was apparently a personal initiative from one 
NullSoft
     developer. The company, owned by AOL, is the real copyright owner on this 
code,
     and never decided to release the sources. They changed their web site 
rather
     quickly with the following page:

         http://www.nullsoft.com/free/waste/

     However, the files had already been downloaded by many people, who started
     studying, hacking, porting it, to the point that there is now a SourceForge
     project with this name (http://waste.sourceforge.net). A quick look at 
their
     CVS server shows that it includes a "waste_orig" which contains the 
original
     sources, sporting comments like the following one:

             WASTE - asyncdns.h (asynchronous DNS class)
             Copyright (C) 2003 Nullsoft, Inc.

             WASTE is free software; you can redistribute it and/or modify
             it under the terms of the GNU General Public License as published 
by
             the Free Software Foundation; either version 2 of the License, or
             (at your option) any later version.

             ... other standard license disclaimer paragraphs deleted ...

     Meanwhile, the other modules (dubbed "unstable", "unstable-waste") seem
     to include code with the same disclaimer.

     It is clear that these are the original sources, as well as modifications 
to them,
     and _even_ if the code claims it is under the GPL, NullSoft could 
perfectly sue
     the developers, as well as SourceForge, for copyright infringement.

     And believe it or not, there are 100% chances that they will win ! Note
     however that the developers and SourceForge could claim ignorance, and a 
benevolent
     judge would simply force them to destroy every copy and derivative work 
they own
     or have distributed (if they can). Given the ambiguity of the situation, 
the penalties
     would probably not be very high in this specific case.

  - So, basically, a license is simply an "insurance" that you can use if you're
    accused of copyright infringement. You can perfectly show it to the judge to
    claim that you did nothing wrong, or at least didn't think you did.

    Only the _judge_ is going to decide wether your reasoning was sound. This 
will clearly
    depends on the copyright owner's intention, the exact terms of the license, 
and how
    you did comply with them. And due to the complexities of these conditions, 
there is
    strictly _no_ reason that one judge's  decision in one specific case could 
be applied
    to another one simply because the license was similar.

    Also, the judge may decide which "damage" you caused to the copyright's 
owner, and
    this is truely a different story :-)

  - In other words, I couldn't really find lawyers you could tell me 100% that the 
"GPL"
    was always enforceable. However, they all believe that it _is_ in most 
cases where the
    copyright owner and its intents are clearly identified, because its license 
terms
    are very clear.

  - By the way, all of them considered that the LGPL was ambiguous, and 
"dangerous" :-)

  - Finally, note that in the US, only 3% of suits go to court, which means that
    97% are settled by lawyers without seeing a judge anyway


What is clear is that the GNU guys (Richard Stallman in fact) did insist
that "advertising" packages (so-called "4-clause BSD-like licenses", or
"original BSD license" according to RMS), like Freetype when it was covered
under only the FTL, cannot be re-distributed under either GNU GPL or LGPL
licenses (which disallow "advertising"), so this retricted them to the above
option (packaging under different licenses, which RMS was willingly to
avoid; read the interesting
<URL:http://www.gnu.org/philosophy/bsd.html#translations>).


Well, I'd like to point out that we don't use an advertising clause like the
one described in the web page you gave. The "potential" incompatibility of
the FTL with the GPL comes from several facts however.

Suppose that you want to distribute a program that uses code that is both under
the GPL and FTL, consider that:

A - Complying with the FTL requires that a disclaimer accompanies every binary
    like "portions copyright The FreeType Project bla bla bla", which can be
    located in the product's documentation.

B - Complying with the GPL mandates, among other things:

  * you must distribute the _whole_ program under the GPL (clause 3, which some
    call the "viral" cause)

  * you cannot impose additionnal restrictions than those contained in the
    GPL itself (clause 6) when distributing the code.

Requirement A is clearly not compatible with requirement B, i.e. you cannot
satisfy both of them. I'd like to add that the GPL specifically covers the
case of dynamic linking.

Actually, if they were compatible, we wouldn't need the dual license plan at
all. And we introduced it because people explicitely asked us to do it.

Note also that when it comes to the LGPL, things are a lot more blurry. I've
done a bit of research, and here's my opinion (grain of salt):

- Besides the fact that it is highly ambiguous, The LGPL has strong similarities
  with the GPL. For example, clauses 1 to 5 taken in isolation mandate that any
  program that uses a LGPL library must be distributed in whole under the LGPL
  itself. Only clause 6 provides exceptions that make other forms of 
distribution
  possible for such program (i.e. basically by using dynamic linking or allowing
  to relink it with a different version of the library)

- there is no equivalent to GPL clause 6 !! however there is LGPL clause 7
  which allows redistribution of a LGPL library that includes code covered by
  other licenses, as long as complying with all licenses is possible.


What this seems to mean is that a library like Pango, which includes code from 
FT1,
can only really be released under a combined LGPL+FTL license, i.e. any of its 
binaries
must be accompanied by the standard disclaimer, along with the COPYING.LIB 
document.

Owen, am I right or what ?

Hope this helps,

- David Turner
- The FreeType Project  (www.freetype.org)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]