Dynamic linking, was: Re: Dispelling BSD License Misconceptions

Fabian Bastin bastin at iro.umontreal.ca
Sun Jan 28 08:25:38 UTC 2007

Matthew Flaschen a écrit :
> Fabian Bastin wrote:
>> My feeling is that the question will not be solved until a
>> judgement, following a trial, would have been made. But still the answer
>> would then be country-specific, and probably quite artificial.
> That's certainly right.
>> And what if a library linking produce a derivative work in a country and not in
>> another country. Would it not be a discrimation between users, so a
>> violation of the open-source definiton?
> No, as long as the license didn't discriminate.  However, copyright
> holders might be able/have to discriminate in enforcement.
You are right. But it would still be a bad situtation in my eyes.

>> We can also consider a different situation. Often, GPLd library are
>> created as replacements to non-GPLd libraries (to my best knowledge, it
>> is for instance the case of TLS, whose goal is to replace SSL)
> These are protocols, not programs.  Free and unfree software exists for
> both.
Ok. Badly expressed. The point that I would raise is just that GPL 
library, and more specific GNU codes, are sometimes produced juste to 
replaced preexisting things. TLS and SSL are protocols, indeed, but in 
practice, GNU TLS can be seen as an attempt to OpenSSL for instance. The 
example is probably not the best. I have to think a bit more in order to 
produce a better one.
>> why should we still have to consider the work as a
>> derivative of the GPLd library?
> IANAL, but in my opinion, it would only be a derivative of the GPL if it
> were built to specifically use GPL code.
>> And by the way, how can we now with
>> certainty that the original author has written is code in order to only
>> allow the use of the GPLd library? It could be only a transitional
>> development phase, a "better-than-nothing" solution.
> I think that if the code wasn't written specifically for GPL code, it
> probably isn't a derivative work
So the question is than how to determine the initial opinion of the 
first author? And what about the co-authors? The question of intention 
can be very tricky to determine.
>> I become more and more uncomfortable with the "all-GPL" (GNU project)
>> vision behind this licence
> The GNU Project is not all-GPL in any sense.  The GNU project itself
> uses other licenses for its code, including LGPL and MIT.  They have
> also "adopted" external code under other licenses, such as X11.  Their
> criterion is simply whether they believe the license is free; in
> practice these licenses overlap almost completely with OSI-approved licenses
Well, the GPL licence is the licence promoted and recommanded by the FSF 
(http://www.gnu.org/licenses/), and the other licences are sometimes 
used for convenience, but not recommanded for the GNU project. Stallman 
position about LGPL for istance is quite clear, since he explicitely 
recommands to avoid LGPL when possible in order to force people to 
switch to GPL.
> , and I cannot accept to see for instance the
>> GPL copyright notice in the beginning of the BLAS header in the GSL
>> library. How can I think that using the GSL blas is producing a GPL
>> derivative, while I could compile with ATLAS without changing a single
>> line of code?
> I don't know anything about this.  It would probably depend on what was
> written when, designed for what.
>  The rationale of GPL 3 is well designed on this point,
>> since the "whole work" do not include such standardized API...
> Are you trying to note some difference between GPL v2 and v3 here?  I'm
> not understanding your point.  GPL v2 says (referring the requirements
> for new code), "These requirements apply to the modified work as a
> whole." and GPL v3 says, "You must license the entire work, as a whole,
> under this License to anyone who comes into possession of a copy."  I
> don't see a big distinction here.
If you take the whole licences, you could observe the word "derivative" 
in GPL v2 in Point 0, which defines the licence extent.  GPL v3 differs 
by speaking only about the whole work, and in Point 0, the "covered 
work". The definitions have to be found in the rationale. It seems (also 
from other discussion) that the GPL v3 has been cautious with the use of 
the word derivative, because of the interpretation problem.
>> The licence GPL 3 becomes less and less clear, and it could produce a
> lot of law problems,
>> especially in Europe where trials are not as expensive as in North
>> America, and law is different. For instance, GPL is a contract in view
>> of European law, even if Moglen does not agree. But first of all, remind
>> that United Stated is not the only country on earth, so you should try
>> to avoid and location-specific consideration...
> I'm really losing your point here, but GPL 3 is specifically written to
> minimize such local variations in interpretations.  That's why it uses
> custom terminology like "propagation" and "conveying"; the idea is that
> these words don't have existing meaning in any legal systems.
Sorry that my point is not clear. The lack of existing meaning could 
imply that the licence will be subjet to a lot of interpretations if 
contested, and the interpretation could be dependent on the location. 
The fact is that until now, disputes (with one or two exception) have 
been mainly resolved without trials. What I want to say is that trials 
could so much money in US that it is really the best way to proceed, and 
I think that Moglen have taken this fact into account. The European 
situation is different, with for instance the Munich trial, which has 
been well publicized because it has recognized the validity of the GPL.

Local terms are not too difficult to interpret if the law system is 
precised, so I think that it is an acceptable solution, but the problem 
is then that it could conflit with local laws, and again we face an 
interpretation problem about how to take the author willingness and 
local regulations.

I find all of this far from be simple...


More information about the License-discuss mailing list