Subject: Re: XFree86 4.0.2 snapshot available (was Re: Successful NetBSD
To: Frederick Bruckman <fb@enteract.com>
From: Jared D. McNeill <jmcneill@invisible.yi.org>
List: port-i386
Date: 01/03/2001 02:39:32
On Wed, 3 Jan 2001, Frederick Bruckman wrote:
> On Tue, 2 Jan 2001, Jared D. McNeill wrote:
> > Maybe we need something similar to ONLY_FOR_PLATFORM, except for X.
> > Example, if a package requires XFree86 4.0 or greater:
> >   ONLY_FOR_X=	XFree86-[4-9].*
>
> AFAIK, there's no "uname" for X. IMO, the best thing would be to

X -version gives version information -- that would be easy to parse:

  X -version 2>&1 | grep '^XFree86 Version' | cut -d \  -f 3

Returns '3.3.6' on my system.

> follow the example of IS_BUILTIN_XPM, and do some kind of feature
> test, as required. Note that anything in bsd.pkg.mk only helps for
> building packages from source. It's so when the release switches to
> XFree86-4.0.x, pkgsrc will be ready. Many binary packages built
> against 4.0.2 would have missing dependencies or be otherwise broken
> on stock NetBSD-1.5.

What if, for example, somebody packages DRI for NetBSD? This requires
XFree86 4.0 or greater. If somebody is building packages against the
current release (which ships with XFree86 3.3.6), the package will not
build. Wouldn't it be better to give a message saying 'This package
requires XFree86 4.0 or greater' than to have the package build
mysteriously die? If somebody decides that they want to build a set of
binary packages against XFree86 4.0, the DRI package will be present. If
they're building against 3.3.6, the DRI package won't be built. Pkgsrc
may be ready for XFree86 4.0, but we're losing out on the features that it
offers if we require that packages build against both.

ONLY_FOR_X would also be useful for the xpm and Mesa packages -- neither
of these are needed with XFree86 4.0, so why bother building them?

Jared