[Haskell-cafe] How to use cabal's data-files feature and run in-place?
balodja
balodja at zlug.asia
Fri Apr 22 17:41:35 CEST 2011
On Fri, 2011-04-22 at 05:51 +0400, Richard Cobbe wrote:
> I did some googling and came across a blog post
>
(http://neilmitchell.blogspot.com/2008/02/adding-data-files-using-cabal.html)
> which suggested that I provide my own Paths_pkg.hs file that points to
the
> files' location in the development copy. When I build with Cabal, the
> generated form of this module would override my hand-written one, and
it
> should therefore work in the installed case as well.
>
> Unfortunately, that's not happening. Cabal is clearly generating the
> module; I can see it in dist/build/autogen. But my copy is overriding
the
> autogenerated one, even for cabal builds -- at least, that's what I'm
> seeing when I run the binary out of dist/build/<package>/<executable>.
>
> Is there a way to be able to use data files in both contexts?
For such purposes I use separate directory for Paths_pkg.hs and don't
notice it in pkg.cabal. For example, imagine "src" directory with
source files (appropriately mentioned in pkg.cabal with "hs-source-dirs:
src") and additional "plugs" directory with "Paths_pkg.hs" (that is not
mentioned in pkg.cabal). In such case cabal builds project with
autogenerated Paths_pkg.hs and ghci also can be launched in "src"
directory with "ghci Main.hs -i../plugs".
Vladimir
More information about the Haskell-Cafe
mailing list