我想Cabalize一个Haskell项目,以便将其上传到Hackage.它由一个构建引导程序可执行文件的标准.hs文件和八个非标准.lhs文件组成,这些文件由引导程序可执行文件处理,以生成构建生产可执行文件的.hs文件.
换句话说,我的项目是一个自定义文字预处理器(带有HTML标记,代码修饰,这里是文档),它自己编写.它取决于bootstrap版本,它可以翻译生产版本的文字代码,但不适合一般使用.所以我不希望bootstrap版本是一个单独的包; 它只能在这里使用一次.
我一直在使用Makefile,这在Cabal中是可能的,但不是在Cabal的精神中.什么是干净的方式,这最大限度地利用了Cabal的普遍性?我没有在在线文档中看到任何建议,没有重写Distribution.Simple或使用Makefile.