Configurations proposal, take n

Ian Lynagh igloo at
Wed Nov 29 08:10:28 EST 2006

On Wed, Nov 29, 2006 at 12:28:45PM +0000, Ross Paterson wrote:
> Presumably it will be possible to have multiple Build-Depends lines,
> to allow different interactions to be treated separately.  Will it
> be possible to constrain the same package in more than one of these?
> For example,
>          build-depends: base < 2, fps >= 0.8
>          build-depends: base >= 1.5, mtl

This would mean "I need a base that is both >= 1.5 and < 2".

In the future we forsee something like (and I'm not proposing this
syntax necessarily):

    build-depends: base < 2 AS foo, fps >= 0.8
    build-depends: base >= 1.5 AS wibble, mtl
    build-depends: wibble < 6

meaning "I need a base that is < 2, and another base that is both >= 1.5
and < 6", which could be satisfied by {base 1.6} or {base 0.5, base 3}.

> Flags allow the builder to force a particular configuration even if
> others would work on the build system, but do they have sufficiently
> fine granularity?  The build system might have versions 1.2 and 1.3 of
> a package, either of which would satisfy the given dependency, but the
> target system has only 1.2.

Right, cabal should be able to take an option --package foo-1.2 which
means that if foo is build-depended-on then it must use version 1.2.


More information about the cabal-devel mailing list