在阴谋集团中连接构建工具(Haskell)

在阴谋集团中连接构建工具(Haskell),haskell,build,compiler-construction,cabal,bnfc,Haskell,Build,Compiler Construction,Cabal,Bnfc,我试图使用bnfc工具为我生成一系列文件,比如lexer、parser等。这个很好用。现在,我想通过不必手动编译bnfc文件并让它生成大量文件来整理我的/src文件夹来清理一下这个问题 我尝试了Cabal机制,您在.Cabal文件的buildtools字段中列出了工具,并提到了希望由额外源文件字段生成的文件。这对我来说对Alex和Happy起到了作用,因为他们被阴谋集团视为构建工具,但bnfc却不是。有没有办法让我将bnfc或任何工具与阴谋集团连接起来,让阴谋集团将它们识别为构建工具?显然阴谋集

我试图使用
bnfc
工具为我生成一系列文件,比如lexer、parser等。这个很好用。现在,我想通过不必手动编译
bnfc
文件并让它生成大量文件来整理我的
/src
文件夹来清理一下这个问题


我尝试了Cabal机制,您在
.Cabal
文件的
buildtools
字段中列出了工具,并提到了希望由
额外源文件
字段生成的文件。这对我来说对Alex和Happy起到了作用,因为他们被阴谋集团视为构建工具,但bnfc却不是。有没有办法让我将bnfc或任何工具与阴谋集团连接起来,让阴谋集团将它们识别为构建工具?

显然阴谋集团不知道bnfc(没有出现在屏幕上)


看起来仅仅使用.cabal文件是没有办法的,但是这里有一个例子,说明了如何使用用户hook
hookedPreProcessors
(所有钩子都在)

将对BNFC的支持添加到cabal中: