Qt .pro文件 - 如何在OSX版本上添加条件?

时间:2014-11-10 01:49:55

标签: c++ macos qt build build-process

我在两台开发机器之间共享一个Qt代码库。一个是OSX 10.8.5,一个是OSX 10.9.5。

除非我包括:

,否则该项目不会在10.9.5上编译

QMAKE_MAC_SDK = macosx10.9

因此我有两个.pro文件,一个有/没有那行。如何根据检测到的Mac OSX版本有条件地包含该行?。

1 个答案:

答案 0 :(得分:2)

我最近在其上发现了一些info,它似乎是可行的(应用一次):

OS_VERSION = $$system(uname -r)                             # common to Unix
contains(OS_VERSION, VersionTag):SOURCES += example.c       # can apply to different options
contains(OS_VERSION, VersionTag):QMAKE_MAC_SDK = macosx10.9 # like that?

回答Tay2510,由于某种原因,只有完整的字符串在Linux上工作:

OS_VERSION = $$system(uname -r)
message($$OS_VERSION)
contains( OS_VERSION, 3.13.0-39-generic ) {
    message(Generic)
}

#Output:

Project MESSAGE: 3.13.0-39-generic
Project MESSAGE: Generic