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

Re: [Libguestfs] Hivex licensing question



Richard W.M. Jones wrote:
> On Fri, Nov 26, 2010 at 10:03:05AM -0800, Yandell, Henri wrote:
>> We’re looking into using Hivex and came across something odd. While
>> the license of hivex.c is LGPL 2.1, it appears to require the GPL
>> 3.0 licensed gnulib package for a few minor functions ( full_read,
>> full_write and c_toupper ). There are also a few GPL 3.0 build
>> files.
>
> It has always been our intention to allow hivex to be used from both
> proprietary and free software, and so the library should be LGPLv2+.
>
> The standalone programs are GPLv2+, but this should not be a problem
> because you wouldn't link software to them.
>
> I have looked at the gnulib modules that we're using in the library
> (ie. lib/*) and they are:
>
>   hivex    c-ctype    LGPLv2+
>   hivex    full-read  LGPL
>   hivex    full-write LGPL
>
> (according to .gnulib/modules/* License field which is what you should
> look at, *not* the comments at the top of each gnulib source file
> bizarrely).
>
> Therefore I think for the library we are OK.
>
> Just to complete the analysis, for the programs we are using:
>
>   hivexsh  c-ctype   LGPLv2+
>   hivexsh  xstrtol   GPL

Hi Rich,

Your analysis is correct.

> The Makefiles are GPL, but they don't affect the library or the
> programs in any way.  They constitute a separate program used to build
> the software.
>
> Rich.
>
> CC'd to Jim: This analysis is a pain, and gnulib-tool doesn't let you
> say "I want to use LGPL for this directory and GPL for this other
> directory".

Yes, that is inconvenient.
The alternative is to have two separate gnulib-style libraries,
one with the lgplv2+ modules you use, and another for those
additional ones that you use from gplv3 applications.
But that is a lot of inconvenience for not much gain.

This has been lamented and discussed/justified several times
on the bug-gnulib mailing list.


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