This is the mail archive of the mailing list for the guile project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: libguile and readline

Richard Stallman wrote:
>     The guile _sources_ can be distributed on LGPL; but
> The Guile distribution terms are not the LGPL.  They DO permit linking
> Guile into non-free programs, but this is implemented with different
> language, not with the LGPL.  We did this for a specific strategic
> goal, to compete with TCL.
> Readline is a different matter.  Readline is released under the GPL,
> pure and simple.  So linking Readline into a non-free program is not
> allowed.  Our position is that it makes no difference whether linking
> is static or dynamic.
> The consequences of this are simple: people can use Guile in non-free
> programs, but they cannot use Readline in non-free programs.
> The messages I received don't clearly lay out what practical question
> is being considered, or what the alternatives are.  So I can't speak
> to that.

The problem with Guile as it was, was that libguile was linked against
required libreadliine, thus causing all guile-linked programs to fall
the ordinary GPL, and thus preventing the strategic purpose of the
Guile GPL from being achieved. Jim has since added a configure-time
to not link Guile against libreadline. This is a step in the right
however, since libguile is likely to be distributed in the
on free operating systems by default, it will be extremely awkward to
port proprietary programs that use Guile to free operating systems,
they will have to ship their own copy of Guile.

Dynamic linking does to some extent make a difference here. If I, as a
dynamically link a GPL'd library using Guile's dnamic linking capability
at runtime into a Guile-using proprietary application, I don't believe
has violated the GPL. Thus, if Guile's readline capabilities are kept in
separate module and not linked in by default, I believe that the
goals of the Guile GPL can be fully implemented without any change in

 - Maciej