Cabal共享沙箱和沙箱范围的cabal.config

时间:2015-03-24 13:58:41

标签: haskell cabal

我使用cabal沙箱功能为我的Haskell项目创建了一个独立的构建环境,该项目有很多软件包。为此,我有一个构建脚本,首先通过

创建一个沙箱
cabal sandbox init

在构建目录中,然后调用

cabal sandbox add-source <path-to-project>

在我的每个包的目录中。另外,为了简化我启动的开发过程

cabal sandbox init --sandbox <path-to-sandbox>

在我拥有的每个包目录中。这允许我从所需的包目录中执行cabal install并构建所有依赖项并将包安装到我的沙箱中。

现在我的配置文件有问题。我在构建目录中的cabal.config旁边创建了cabal.sandbox.config,它有几个cabal标志(以及extra-include-dirs等)。它在我启动时起作用(并且似乎应用了设置),例如,cabal install HsOpenSSL并且我当前的目录是构建目录(我称之为cabal sandbox init,其中cabal.config居住)。

现在,如果我尝试从HsOpenSSL项目目录启动cabal install,我的沙箱中的cabal.config将被忽略(尽管事先已正确调用cabal sandbox init --sandbox <path-to-sandbox>并且cabal发出通知安装到沙箱)。

问题是我是否可以为添加到我的沙箱中的所有包指定cabal选项,即使我只是从包目录中启动cabal configure/build/install,这些选项也会适用?

我使用的是Windows和cabal-install-1.22.0.0。

0 个答案:

没有答案