apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "William A. Rowe, Jr." <wr...@rowe-clan.net>
Subject Re: DBD driver license issues (must default to --without-driver)
Date Mon, 12 May 2008 02:08:54 GMT
Tom Donovan wrote:
> Roy T. Fielding wrote:
>> The concern is that someone building a program like httpd, on a platform
>> that just happens to have a lot of databases installed, will 
>> automatically
>> compile into apr-util hard dependencies on all of those libraries even
>> though they have no intention of using them.  In particular, it makes it
>> difficult for our own developers to build binaries for our releases that
>> can actually be redistributed under our license.
> Aha!  I see the point now.  Yes, a static build would have unexpected 
> dependencies.  Like the situation with dbm and bdb.  It makes sense that 
> all dbd drivers default to "not built", as there is nothing like sdbm 
> which can safely be bundled with apr as a default dbd driver.  ODBC on 
> Windows maybe - but nothing else seems guaranteed to be present.

Worse - not what's present, but also which version.  Which rev are we
looking at?  The headache is that unreferenced bundled code should not be
linked in, yet these dependencies remain.  Bizzare.

But -not- a regression, it has been this way in 1.2, if it was this way
in 1.3, the user can still perform the following tweak...

> Bojan Smojver wrote:
>> On Sun, 2008-05-11 at 21:35 +0200, Ruediger Pluem wrote:
>>> This already works if you compile apr-util (trunk / 1.3) with
>>> --enable-dbd-dso

But I agree...

>> Maybe that should be the default, combined with disabling of
>> MySQL/Oracle drivers by default due to possible downstream licensing
>> issues?
> I agree that --enable-dbd-dso should be the default (presuming the 
> platform supports dso), but not for licensing reasons.  The APR dso.c 
> code is already there, and apr_dbd.c adds very little additional code 
> for dso drivers; so is isn't a 'library bloat' issue.  Regardless of 
> whether the user has chosen any static dbd drivers, disabling the 
> ability to dynamically load drivers at runtime is restrictive.

Yes - drop any automatically detected dbd provider who's license is more
restrictive than APR's.  If someone such as a linux distro (GPL) wants
to turn back on the mysql dbd, this is their prerogative.

And enable dbd-dso by default even without one provider.


View raw message