Cabal: bindir/libdir/datadir

Ian Lynagh igloo at earth.li
Thu Oct 6 06:43:02 EDT 2005


On Thu, Oct 06, 2005 at 11:29:30AM +0100, Simon Marlow wrote:
> While I was away last week I hacked into Cabal support for
> bindir/libdir/datadir, as previously discussed on this list.  However,
> while doing it I changed my mind about the design so thought I'd run it
> past the list.
> 
> The problem with bindir/libdir/datadir is that they are specified as
> absolute  pathnames, but in reality most of the time they will be
> relative to (i.e. subdirectories of) prefix.
[...]
> In the end I plumped for relative pathnames, but I renamed the options:
> 
>    --bindirrel=<dir>
>    --libdirrel=<dir>
>    --datadirrel=<dir>
>    --libexecdirrel=<dir>
[...]
> There's one thing I'm not sure about yet: the default $libdirrel on Unix
> systems is lib/<pkgid>/<compiler>, eg. lib/pkg-0.2/ghc-6.4, and you
> might want to change just the "lib" bit, eg. to get
> lib64/pkg-0.2/ghc-6.4.  It's annoying to have to specify the <pkgid> and
> <compiler> when Cabal knows them, so we might want a simple substitution
> syntax, such as --libdirrel=lib64/%p/%c.  Sound reasonable?

Is there a reason not to use

    --libdir=%prefix/lib/%package/%compiler/

by default, thus making it easy to give either relative or absolute
paths?


Thanks
Ian



More information about the Libraries mailing list