在Setup.hs中找出我们正在构建的标志

Pet*_*ter 5 haskell cabal

我需要找出在Setup.hs中构建的标志(在cabal文件中找到的类型).我想我正在寻找FlagAssignment类型的东西.我怎么能得到这个?

Ech*_*lan 1

Idris 必须这样做,您可以在此处查看代码。简而言之,阅读您可以从记录字段中获得的configConfigurationsFlags内容。当您使用 时会传递到每个钩子。ConfigFlagsconfigFlagsLocalBuildInfoLocalBuildInfodefaultMainWithHooks

注意:此信息只是传递给配置的标志,因此任何未指定的标志都不会存在,而不是具有默认值。我认为这是一个错误,但截至 2016 年 1 月尚未修复。

2016 年 10 月更新:在 Cabal-1.24 中,有一个flagAssignment字段LocalBuildInfo包含通过配置解析后的标志。