Cabal“os”标志,带有操作系统版本

时间:2015-03-30 20:40:13

标签: haskell cabal

我想要一个以操作系统版本为准的标志,而不仅仅是操作系统:

if os(darwin) && os-version() >= 10.7

if os-version(>=10.7)

或具有该行为的东西。

我可以使用makesw_vers -productVersion执行此操作,但我希望将Cabal文件保留为build-type: Simple(我的意思是它甚至有一个frameworks字段)。< / p>

上下文:我对OSX 10.7中引入的一些Cocoa函数有一些绑定。我希望Cabal不要试图在旧的Mac上构建,而不是通过无用的“符号未找到”错误或其他方式向安装包的人发送垃圾邮件。

https://www.haskell.org/cabal/users-guide/developing-packages.html#configurations(在“条件”下)似乎说不。

1 个答案:

答案 0 :(得分:1)

你是对的。 Cabal不提供此功能。这是relevant ticket。但是,对于OS X,您无需从build-type: Simple移动。相反,您可以使用CPP和apple提供的宏,如another SO question中所述。