Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Nov 2005 16:13:38 +0100
From:      Volker Stolz <vs@FreeBSD.org>
To:        "Paul A. Hoadley" <paulh@logicsquad.net>
Cc:        seanc@FreeBSD.org, freebsd-ports-bugs@FreeBSD.org, delphij@FreeBSD.org
Subject:   Re: ports/89703: [maintainer-update] textproc/refdb to 0.9.6
Message-ID:  <20051130151338.GF26259@i2.informatik.rwth-aachen.de>
In-Reply-To: <20051130005103.GB93035@bigbird.logicsquad.net>
References:  <200511291335.jATDZkD8037402@freefall.freebsd.org> <20051130005103.GB93035@bigbird.logicsquad.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Am 30. Nov 2005 um 01:51 CET schrieb Paul A. Hoadley:
> On Tue, Nov 29, 2005 at 01:35:46PM +0000, Volker Stolz wrote:
> 
> > Although your intent to use versioned dependencies is honorable,
> > it'll mean that LIB_DEPENDS is incomplete (missing
> > libdbi).
> 
> LIB_DEPENDS is similarly incomplete in the current version of this
> port.  Dependency on libdbi was only ever expressed indirectly by
> BUILD_DEPENDS on the various backend drivers in libdbi-drivers.  For
> example, if the user selected 'MySQL' as the DB backend for refdb, the
> Makefile adds the following:
> 
> USE_MYSQL=      yes
> # If libdbi-drivers has been built without MySQL driver, abort
> .if exists(${LOCALBASE}/lib/dbd) && !exists(${LOCALBASE}/lib/dbd/libmysql.so)
> IGNORE=         Rebuild databases/libdbi-drivers with MySQL support
> .elif !exists(${LOCALBASE}/lib/dbd)
> BUILD_DEPENDS+= ${LOCALBASE}/lib/dbd:${PORTSDIR}/databases/libdbi-drivers
> .endif
> 
> The .if is true if libdbi exists, but libmysql.so was never installed.
> There's no way to automate the consequence, as libdbi-drivers uses
> OPTIONS in its Makefile, and so we can't force libmysql.so to be
> built.  The .elif is true if libdbi was never built, in which case we
> make database/libdbi-drivers a BUILD_DEPENDS, and rely on the user to
> select the right backend.
> 
> > Unfortunately, I don't see an easy fix. I'd say let's go for a
> > regular LIB_DEPENDS again since running with stale dependencies is
> > never really supported.
> 
> I don't see an easy fix either, and I think even the approach for the
> existing port is a bit of a mess.  Are you saying it would be
> sufficient to add 'dbi:${PORTSDIR}/databases/libdbi' to LIB_DEPENDS?

Hm, it looks like there's no apropriate logic to get libdbi/dbi-drivers
to do what you want. In that case, maybe you could set additionally
RUN_DEPENDS. I think there'll still be a way by installing from
packages that will lead to missing dependencies, though.
Maybe if dbi-drivers were to use several slave-ports, we'd have a
solution...

I'm cc:ing the dbi (seanc@) and dbi-drivers (delphij@) guys for comments.

Volker
-- 
http://www-i2.informatik.rwth-aachen.de/stolz/ *** PGP *** S/MIME
Receive and transmit



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20051130151338.GF26259>