Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
RE: [Caml-list] CDK license
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2001-06-08 (12:56)
From: Sven LUTHER <luther@d...>
Subject: Re: [Caml-list] CDK license
On Thu, Jun 07, 2001 at 10:25:40AM +0900, Jacques Garrigue wrote:
> Basically, section 6 says that if you do not publish source code, then
> when asked you should provide a link-kit for your program allowing to
> rebuild the executable from modified versions of the runtime and
> libraries protected by the LGPL.  But since almost every version of
> ocaml has a different format for the .cmi, one reading would be that
> you have to provide a link-kit for every new version of ocaml. This

No, there is nothing forcing you to be able to link the program in something
else than with the same version of the compiler, since anyway, all the older
versions of the compiler are still available.

The only problem that you could encounter here is when the library is changed
so as to not being able to build with the older version of the compiler. But
again, this is no problem, after all, the LGPLed just guarantee you that you
can apply any bugfix you want to the library and then rebuild the program. Not
that it will be adapted to the very last compiler around.

> Sven had also concerns with section 5, particularly about the use of
> functors understood as derivative work. This may be related to the
> problem with templates in C++. However, functors in caml do not imply
> recompilation for each use, so I think this is not a problem. There is
> also inlining, but ocaml does not do much more inlining than C, for
> which it is considered OK. As a result I think that there is no real
> need to explicitly say that ocaml linking is to be understood as
> linking.

The only problem for doing such is if you want to release a binary only
vcersion of your program, without providing the object files for doing so. I
think the LGPL don't even call for a working makefile or other binding
instructions, but i may be wrong here.

Anyway, this could be solved by using the part of article 6) where you provide
to download them from a net site, or to send it to the user who needs it by
snail mail or such.

> The GNAT approach which Brian presented, of taking the GPL but
> allowing linking unconditionally, is more liberal than LGPL, and
> avoids these problems.  You don't have to provide a link-kit for your
> executable.
> This would make things much simpler, but I'm not sure it covers the
> original goal of using the GPL: wouldn't it allow one to include
> modified versions of the runtime in an executable, without publishing
> the changes?

The main reason for this restriction is for people who make changes to the
library, and then don't want to release them. If you allow linking, they would
just put the changes in some wrapper module, and then distribute that as
closed source. But i don't think this can be avoided unless you ressort to the
full GPL anyway. This is a question of 'bonne volontee' of the part of the
user of the library. But i don't really see, in the case of ocaml anyway, why
someone could be interrested in keeping such changes secret.

Also, i want to say something, i hope nobody misunderstood me in these mails,
i don't want to force anyone to use any kind of licence, it never even crossed
my mind, and i have no such right, please if somone feeled as such, it is not
what i wanted to say. I just wanted to point out what was my feeling about the
LGPL with ocaml usage, not force anyone.

Anyway, nobody has yet tyaken the LGPL or the GPL to court, and i don't think
any of the ocaml library authors would resort to such measures.


Sven Luther
Bug reports:  FAQ:
To unsubscribe, mail  Archives: