我有一个Haskell库,它可以导出几个模块。我用GHC和GHCJS编译了这个库。我正在使用stack构建库。其中一个模块依赖于reflex-dom。问题是,由于无法在OSX上链接reflex-dom,所以我无法在GHC上编译gtk+3。因此,如果编译器是GHC,我想排除这个库。我怎样才能做到这一点?
exposed-modules:
MyLib.Foo
MyLib.Bar
MyLib.App.Backend.Reflex
MyLib.App.Backend.Gloss
...
build-depends:
base ...
reflex-dom >= 0.2 && <0.3发布于 2016-02-26 21:57:02
虽然您可能不想这样做,但是在“阴谋用户手册”的“配置”部分中描述了这样做的方法:
https://www.haskell.org/cabal/users-guide/developing-packages.html#configurations
特别是,您应该能够将相关部分写成这样:
exposed-modules:
MyLib.Foo
MyLib.Bar
MyLib.App.Backend.Reflex
MyLib.App.Backend.Gloss
if !impl(ghc)
exposed-modules:
OtherModule
build-depends: etc, etc, etc
if !impl(ghc)
build-depends: etc1, etc2https://stackoverflow.com/questions/34953338
复制相似问题