defineTest(setTaoVersion) { TAO_VERSION_TAG = 1.0 # current commit hash REVISION=$$system("git rev-parse HEAD") REVISION=$$str_member($${REVISION}, 0, $$num_add(10, -1)) isEmpty(REVISION) { REVISION = 0000000000 } # last tag Ver=$$system("git describe --abbrev=0 --tags") isEmpty(Ver) { Ver=0.0.0 } VerList =$$split(Ver, .) MAJ = $$take_first(VerList) MIN = $$take_first(VerList) PAT = $$take_first(VerList) equals(TEMPLATE, lib) { CONFIG += skip_target_version_ext VER_MAJ = $${MAJ} VER_MIN = $${MIN} VER_PAT = $${PAT} VERSION = $${Ver} } TaoREVISION=$${REVISION} TaoREVISIONSTR=\"$${REVISION}\" TaoVer=\"$${Ver}\" TaoMAJ=$${MAJ} TaoMIN=$${MIN} TaoPAT=$${PAT} TaoDATETIME=\"$${_DATE_}\" CXX_COMPILER_ID=\"$${QMAKE_COMPILER}\" export(TaoREVISION) export(TaoREVISIONSTR) export(TaoVer) export(TaoMAJ) export(TaoMIN) export(TaoPAT) export(TaoDATETIME) export(CXX_COMPILER_ID) DEFINES += TaoREVISION=$${REVISION} DEFINES += TaoREVISIONSTR=\"\\\"$${REVISION}\\\"\" DEFINES += TaoVer=\"\\\"$${Ver}\\\"\" DEFINES += TaoMAJ=$${MAJ} DEFINES += TaoMIN=$${MIN} DEFINES += TaoPAT=$${PAT} DEFINES += TaoDATETIME=\"\\\"$${_DATE_}\\\"\" DEFINES += CXX_COMPILER_ID=\"\\\"$${QMAKE_COMPILER}\\\"\" export(CONFIG) export(VER_MAJ) export(VER_MIN) export(VER_PAT) export(VERSION) export(DEFINES) }