haskell / haskell/cabal

"main-is" misparsed in if/else, only by sdist

未关闭
#807 8 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
Cabal: other Cabal: parser old-milestone: ⊥ type: bug
主要语言
Haskell
星标
1.7k
派生
750
平均合并
4 天 3 小时
30 天内合并 PR
28

描述

(Imported from [Trac #817](http://hackage.haskell.org/trac/hackage/ticket/817), reported by @jeffwheeler on 2011-03-22)

An if/else block which sets the main-is value for an executable based on a flag is misparsed when running "cabal sdist" (it's parsed correctly when running "cabal install").

Upon failure, it appears that it's looking for a filename that is the two main-is options concatenated together. E.g., I get the error "cabal: `HackerMain?`.hsMain.hs doesn't exist".

The problematic bit looks like:

if flag(hacking)


main-is: `HackerMain?`.hs

else


main-is: Main.hs

My entire config can be found on hpaste: [http://hpaste.org/44939/yicabal](http://hpaste.org/44939/yicabal) (problematic lines around 268).

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。