Stack中条件选择整数简单

时间:2017-07-18 10:09:51

标签: haskell licensing haskell-stack

由于许可限制,我们需要在Windows平台上编译时使用GHC的integer-simple变体。目前,这在我们的stack.yaml文件中指定:

ghc-variant: integersimple
# ...
extra-deps:
- text-1.2.2.1
# Override default flag values for local packages and extra-deps
flags: 
  text: 
    integer-simple: true

但是,这不适用于Linux。

根据主机架构有条件地包含上面的代码是一种很好的方法。有没有办法使用堆栈这样做,如果没有,你会如何解决这个问题?

我现在能想到的唯一选择是拥有两个堆栈文件,但我想避免这种情况。

1 个答案:

答案 0 :(得分:0)

TLDR :使用自定义Setup.hs

目前似乎不可能,因为.cabal不允许将标志传递给包(尽管您可以通过命令行执行此操作)并且.yaml不允许目前的条件 1

1。我发现堆栈和cabal文档有点迟钝和杂乱无章。除此之外,API似乎经常发生变化,并且很容易看出人们如何忽略可能解决您问题的某些功能。睁大眼睛。