ports/89703: [maintainer-update] textproc/refdb to 0.9.6

Paul A. Hoadley paulh at logicsquad.net
Wed Nov 30 00:51:14 UTC 2005


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?


-- 
Paul.

w  http://logicsquad.net/
h  http://paul.hoadley.name/



More information about the freebsd-ports-bugs mailing list