caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] License Run-Time Question
@ 2001-08-25 19:13 Al Christians
  2001-08-27 15:12 ` Xavier Leroy
  0 siblings, 1 reply; 2+ messages in thread
From: Al Christians @ 2001-08-25 19:13 UTC (permalink / raw)
  To: caml-list

I have just started with OCaml by installing and building the 
source with Cygwin under NT.  With some guesswork, I guess I've
got it working, and I'm much impressed so far.  

Given that, I want to start using OCaml and, if I do, some 
executables from code I write in OCaml might start showing up 
on my clients'/customers' machines, and I want to be sure I'm not 
breaking any licenses.  From what I see in the archives, I'm not 
supposed to have any problems distributing executables, but I'm
not sure of the specifics of how I stay in compliance doing 
this.

In the archives I see this (199912/msg00026.html):

  >> If you write code in O'Caml, the license doesn't impose 
  >> anything on your software's license.  The LGPL license on 
  >> the runtime might force you to ensure that your program is 
  >> physically separate from the runtime so that the runtime can 
  >> be  replaced by your customers if they so desire, but this 
  >> says nothing  about the license under which your software is 
  >> distributed.

Is there any documentation available on what to include when I 
try to distribute an executable program written with OCaml, and 
how to do it so that I'm in compliance with all the relevant 
licenses?  In particular, I will probably want to distribute 
executables that come out of ocamlopt.

How do I keep the program 'physically separate'?

As I have the cygwin version of ocamlopt working, will the 
programs also need CygWin run-time dll(s)?  Which one(s)? Are 
there additional license problems distributing binaries because 
I'm using Cygwin to make my programs? 

The alternative to cygwin is MS.  I have MSVC++ v6, but not the
MS assembler.  I don't even know how much the assembler would
cost.  I'd probably buy that if I needed it when revenues are
up, but they aren't. Is that the way to go if I want to minimize
worries about license problems?

Thanks in advance much for any info.


Al Christians
-------------------
Bug reports: http://caml.inria.fr/bin/caml-bugs  FAQ: http://caml.inria.fr/FAQ/
To unsubscribe, mail caml-list-request@inria.fr  Archives: http://caml.inria.fr


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Caml-list] License Run-Time Question
  2001-08-25 19:13 [Caml-list] License Run-Time Question Al Christians
@ 2001-08-27 15:12 ` Xavier Leroy
  0 siblings, 0 replies; 2+ messages in thread
From: Xavier Leroy @ 2001-08-27 15:12 UTC (permalink / raw)
  To: Al Christians; +Cc: caml-list

> In the archives I see this (199912/msg00026.html):
> 
>   >> If you write code in O'Caml, the license doesn't impose 
>   >> anything on your software's license.  The LGPL license on 
>   >> the runtime might force you to ensure that your program is 
>   >> physically separate from the runtime so that the runtime can 
>   >> be  replaced by your customers if they so desire, but this 
>   >> says nothing  about the license under which your software is 
>   >> distributed.
> 
> Is there any documentation available on what to include when I 
> try to distribute an executable program written with OCaml, and 
> how to do it so that I'm in compliance with all the relevant 
> licenses?  In particular, I will probably want to distribute 
> executables that come out of ocamlopt.
> How do I keep the program 'physically separate'?

This is a fairly nasty point of the LGPL, and one that we do not
intend to enforce.  Our intent from the beginning was to put no
restrictions on programs linked with the OCaml runtime and libraries,
but that if you modify the runtime or the libraries, you must make
these modifications public and grant others the right to use them
freely.

We chose the LGPL with these goals in mind, but overlooked some fine
print in section 6.a, namely that you should give your customers the
ability to replace the OCaml runtime and libraries with others of
their choice.  This is usually implemented by either:

- linking dynamically to the LGPL-covered code: no problem for the bytecode
  interpreter, but not possible for the OCaml libraries;
- distributing (on request) object files for your application, which the
  hypothetical customers bent on exercising their LGPL rights could then
  re-link themselves.

This is all complicated and useless, and we have no intention to ever
enforce that kind of requirements.  We are looking at ways to formally
remove this requirement from the OCaml library/runtime license.

> As I have the cygwin version of ocamlopt working, will the 
> programs also need CygWin run-time dll(s)?  Which one(s)? 

Yes, they'll need the Cygwin runtime DLL (cygwin1.dll).

> Are there additional license problems distributing binaries because 
> I'm using Cygwin to make my programs? 

Yes.  The Cygwin runtime DLL is covered by the GPL (not the LGPL),
and this pretty much forces you to distribute your program as open
source.  You can buy a special license from Cygnus/RedHat for a
"non-encumbered" Cygwin runtime, but I've heard this is not cheap.

Combined with the lack of stability of Cygwin, I'd advise against this
approach.

> The alternative to cygwin is MS.  I have MSVC++ v6, but not the
> MS assembler.  I don't even know how much the assembler would
> cost.  I'd probably buy that if I needed it when revenues are
> up, but they aren't.

Don't worry, Microsoft distributes MASM for free.  It's hard to get,
but see the following pages:
        http://www.easystreet.com/~jkirwan/pctools.html
        http://www2.dgsys.com/~raymoon/faq/masm.html

> Is that the way to go if I want to minimize
> worries about license problems?

That will avoid the Cygwin problems.

Hope this helps,

- Xavier Leroy
-------------------
Bug reports: http://caml.inria.fr/bin/caml-bugs  FAQ: http://caml.inria.fr/FAQ/
To unsubscribe, mail caml-list-request@inria.fr  Archives: http://caml.inria.fr


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2001-08-27 15:12 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-08-25 19:13 [Caml-list] License Run-Time Question Al Christians
2001-08-27 15:12 ` Xavier Leroy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).