[Haskell-cafe] cabal-install failure

Gwern Branwen gwern0 at gmail.com
Thu Jun 19 12:30:56 EDT 2008


On 2008.06.14 08:56:34 +0100, Duncan Coutts <duncan.coutts at worc.ox.ac.uk> scribbled 1.3K characters:
>
> On Fri, 2008-06-13 at 22:10 -0400, Gwern Branwen wrote:
>
> > I think this may be Cabal's fault anyway. The yi.cabal includes the line:
> >          build-tools:   alex >= 2.0.1 && < 3
> >
> > in the 'executable yi' section, right after the build-depends, so Yi
> > is being straightforward and upfront about its needs. Now, Cabal is
> > obviously checking that the build-depends is satisfied first, but why
> > isn't it checking that alex is available when it has the information
> > it needs to check, presumably anything in build-tools is *required*,
> > and the field name suggests that it would be checked?
>
> Yes, you're right. This is the ticket you filed last time:
>
> http://hackage.haskell.org/trac/hackage/ticket/227
>
> and my comment:
>
>         One problem is that not all build-tools correspond to haskell
>         packages. Some do some don't. We have a hard coded list of them
>         at the moment (which can be extended in Setup.hs files) so we
>         could extend that with what haskell package if any the tools
>         correspond to. Any better suggestions to make it a tad more
>         generic?
>
> If anyone has a godd suggestion I'm happy to hear it. Otherwise we can
> just add a Maybe Dependency to the Program type to indicate that some
> build tools have a corresponding haskell package.
>
> Duncan

Well, one work-around would be to have everyone do a library/executable split for their tools. This exposes a library module and allows it to be listed in build-depends:.

(This is something of a hack, but I think it has some nice effects - it's polite to allow people access to the core logic so they can try to improve on your version, and it encourages you to make the executable more of a wrapper around a library.)

--
gwern
benelux EIP Red CISD LUK on botux Bletchley 2E781 Connections
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://www.haskell.org/pipermail/haskell-cafe/attachments/20080619/973fb6c0/attachment.bin


More information about the Haskell-Cafe mailing list