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

Re: LGPL-library (tntdb) linked with GPL-library (mysql)



(With apologies to Tommi if he's subscribed to -legal already.)

On Fri, Aug 25, 2006 at 11:47:49AM +0200, Tommi Mäkitalo wrote:
> Hi,
> 
> I'm the author of tntdb - a C++ class library for easy database access, which 

I'm the DD who just uploaded it to the archive - I won't say "the
maintainer" until an FTP master ACCEPTS the package.

> is on the list of prospective packages for debian. Currently the license is 
> GPL with this famous openssl-clause, because a part of it (the 
> postgresql-driver) links against postgresql-libraries, which link against 
> openssl.
> 
> I would like to change the license to LGPL. The problem here is, that the 
> mysql-driver links with mysql, which is GPL. Does this GPL of mysql mean, 
> that tntdb needs to be GPL also? Doesn't that mean, that there is a license 
> problem already, because tntdb has this openssl-exception?

While there would be a problem if a program were to link to both
OpenSSL library (via, say, postgresql) and mysql, I think that the
situation might be subtly different in this case due to the way tntdb
dlopens libraries.

To state the obvious, just plain having a GPLed program dlopen a GPL
incompatible library would not differ from the case where regular
dynamic linking was used.

Here's what files tntdb has in /usr/lib:
/usr/lib/libtntdb.so.0.0.0
/usr/lib/tntdb-mysql.so.0.0.0
/usr/lib/tntdb-sqlite.so.0.0.0
/usr/lib/tntdb-postgresql.so.0.0.0

The first one is the library itself.  The remaining three are all
libraries that libtntdb might open at run time.  I would expect that
usually using tntdb would involve dlopening just one of the tntdb-$DB
libraries.  While it would be possible to dlopen both tntdb-mysql and
tntdb-postgresql, and thus prevent having the whole work being
available under the terms of the GPL as required by mysql's license
(regular GPL with no exceptions for OpenSSL), that would not be the
usual way to use the library.

Attachment: signature.asc
Description: Digital signature


Reply to: