shake-build-system - 如何在命令行上覆盖 Shake 配置

标签 shake-build-system

我维护通过 usingConfigFile 读取的每个项目的小型配置文件。我希望能够覆盖命令行上的任何这些设置。似乎使用 shakeArgsWith (而不是 shakeArgs)是第一步,但我没有看到一种明显的方法将其连接到 生成的值>获取配置。是否有执行此操作的标准方法?

最佳答案

没有标准方法,但我知道几个较大的构建系统已经发明了一些东西。 shakeArgsWithreadConfigFileusingConfig 的组合应该可以做到这一点。像(未经测试)的东西:

main = shakeArgsWith shakeOptions [] $ \_ args -> return $ Just $ do
    file <- readConfigFile "myfile.cfg"
    usingConfig $ Map.union (argsToSettings args) file
    myNormalRules

其中 argsToSettings 是一些解析参数并将其转换为设置的函数 - 例如在第一个 = 符号或类似符号上中断。

关于shake-build-system - 如何在命令行上覆盖 Shake 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38670777/

相关文章:

haskell - 如何跳过摇动 Action ?

shake-build-system - 为交叉编译而摇晃?

haskell:cd 命令在 shake/command 库中不起作用

shake-build-system - 添加系统的操作应该改变规则历史

shake-build-system - 如何在 Shake 中获取控制台输入?

haskell - 如果文件的一部分发生更改则运行操作

haskell - 如何在 Shake 中编写定点构建规则,例如 latex

haskell - 从(操作 a)的内容动态生成规则

haskell - 为什么 Shake 建议禁用空闲垃圾收集?