state of the cabal (preprocessors)
Isaac Jones
ijones at syntaxpolice.org
Mon Oct 18 23:33:38 EDT 2004
Hey all.
Just thought I'd give an update... Cabal now does something [1] for
preprocessors, though it's perhaps not perfect. I need a real test
case, a smallish program that uses a preprocessor (except for cpp,
which isn't yet supported). Any suggestions? Something that uses
happy perhaps?
Once I have such an example, and get cpp working nicely, then I'll
release 0.2.
Here's the cabal web page:
http://www.haskell.org/cabal/
You can of course see what I have now by using darcs to check out the
repository. On Debian simply:
% apt-get install darcs
% darcs get http://cvs.haskell.org/darcs/cabal
peace,
isaac
[1] Foo.y is a happy grammer which, when processed, will produce Foo.hs.
The description file should include the module Foo.
./setup sdist (source distribution): Include Foo.y, not Foo.hs. Maybe
we could add a flag to include Foo.hs as well. This makes sense for
some preprocessors and not for others, but I'm wary of including too
much preprocessor-specific behavior.
./setup clean: Removes Foo.hs if Foo.y exists.
./setup build: Preprocesses Foo.y to Create Foo.hs before any
compilation.
The issue with cpp is that we can't go by extensions as we do with the
rest of the preprocessors... There is a function in HMake which tests
to see if a file needs to be cpp'd, so we can employ that. I think
we'll probably have to just treat cpp a little differently from the
others, unfortunitely, and I haven't gotten around to it.
More information about the Libraries
mailing list