我正在为一个项目使用 hpack+stack,并且有一个硬编码路径(用于调试,我不想正确执行此操作),这对于 mac os x 和 linux 是不同的。现在我把它放在一个自己的 gitignored 文件上,这个文件在我的工作站之间有所不同,但我更愿意让预处理器来处理它。
理想情况下,我想要等效于 的东西#ifdef __linux__
,它不起作用。我什至会很高兴操纵package.yaml
提出-D
编译器标志。hpack(我认为使用Data.Yaml
)是否具有此功能?
我正在为一个项目使用 hpack+stack,并且有一个硬编码路径(用于调试,我不想正确执行此操作),这对于 mac os x 和 linux 是不同的。现在我把它放在一个自己的 gitignored 文件上,这个文件在我的工作站之间有所不同,但我更愿意让预处理器来处理它。
理想情况下,我想要等效于 的东西#ifdef __linux__
,它不起作用。我什至会很高兴操纵package.yaml
提出-D
编译器标志。hpack(我认为使用Data.Yaml
)是否具有此功能?
hpack
确实支持这一点:hpack conditionals。它看起来像这样:
when:
- condition: os(darwin)
then:
extra-lib-dirs: lib/darwin
else:
extra-lib-dirs: lib/linux