cabal beginner issues (other-modules, build-depends)

Simon Marlow simonmar at microsoft.com
Fri Sep 23 04:50:18 EDT 2005


On 23 September 2005 08:45, Johannes Waldmann wrote:

>> Another way to look at both issues is that if ghc can figure out
>> other modules and packages itself, the user shouldn't be required to
>> specify them in a cabal file. ...
> 
> Definitely. Having the list of modules in the .cabal is unnecessary
> duplication of information (because it's in the sources already).
> This is bound to get out-of-sync during development -
> unless you use some kind of Makefile to generate the .cabal file,
> which defeats the very purpose of Cabal itself.

I know how to do this using GHC, but I'm not sure about other compilers.
With GHC, we can generate the dependencies using 'ghc -M' and then parse
the generated Makefile (a bit of a long way around, but I can't think of
an easier way).  Of course we'd avoid splatting an existing Makefile by
redirecting the dependencies to a temporary file.

How would we do this with nhc98 or Hugs?  Perhaps because these systems
don't actually need to know the value of other-modules we can get away
with it.  Comments?

> Unrelated question: can someone please share an example that shows
> how to put user-defined options for  haddock  in a .cabal?

There's no good way to do it right now.  You can override the whole
haddock command using hooks, but you'd have to write quite a bit of code
to do this.    I plan to add something to allow extra Haddock args to be
given (the Haddock support is a very bare-bones right now, it should get
better).

Cheers,
	Simon


More information about the Libraries mailing list