Qt. Automatically adding version for application

2019-02-06 09:13发布

In a .pro file, I can set version of application such:

VERSION = <some version>

Is there a way of doing this automatically (e.g. getting the value from Mercurial)?

标签: qt qmake
1条回答
\"骚年 ilove
2楼-- · 2019-02-06 09:52

If you can get the version from a shell command, you can assign it to the variable with the $$system qmake function.

So, for mercurial, you could try:

# if the version tag is <major version>.<minor version> 
VERSION = $$system(hg parents --template '{latesttag}.{latesttagdistance}')
# or if you fill all 3 positions manually: <major>.<minor>.<patchset>
VERSION = $$system(hg parents --template '{latesttag}')

Or if you are using the local revision number as the version:

VERSION = $$system(hg parents --template '{rev}')

which will only print that number without the uncommitted change indicator ('+').

查看更多
登录 后发表回答