如何让 Stack 调用 Happy、Alex 和其他构建工具?
How can I make Stack call Happy, Alex and other build tools?
作为编译器的一部分,我需要 alex
和 happy
到 运行 作为构建过程的一部分。 Stack 如何支持这种情况?
奖励:如何将 alex
和 happy
注册为编译时依赖项?
cabal
理解alex文件后缀.x
和happy文件后缀.y
,会自动使用alex和happy构建对应的.hs
文件
进行的步骤:
- 将
.x
和 .y
文件添加到您的 extra-source-files:
部分
- 将
alex
和 happy
添加到您的 build-tools:
部分
- 如果您的源文件是
Foo.Bar.x
,请确保 Foo.Bar
列在 exposed-module:
或 other-modules:
中
使用 alex 和 happy 的包的一个很好的例子是 language-python 包:
https://github.com/bjpop/language-python/blob/master/language-python.cabal
更新: 这也与堆栈有关。其实stack也会为你打造alex和happy
作为编译器的一部分,我需要 alex
和 happy
到 运行 作为构建过程的一部分。 Stack 如何支持这种情况?
奖励:如何将 alex
和 happy
注册为编译时依赖项?
cabal
理解alex文件后缀.x
和happy文件后缀.y
,会自动使用alex和happy构建对应的.hs
文件
进行的步骤:
- 将
.x
和.y
文件添加到您的extra-source-files:
部分 - 将
alex
和happy
添加到您的build-tools:
部分 - 如果您的源文件是
Foo.Bar.x
,请确保Foo.Bar
列在exposed-module:
或other-modules:
中
使用 alex 和 happy 的包的一个很好的例子是 language-python 包:
https://github.com/bjpop/language-python/blob/master/language-python.cabal
更新: 这也与堆栈有关。其实stack也会为你打造alex和happy