From 6a8f64136e7c38fa4e94c916a57b83856ded3a8d Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Thu, 3 May 2012 15:36:03 +0200 Subject: introduce /get property variants properties are now split into a write location $$[FOO] and a read location $$[FOO/get]. the write locations are hard-coded and configurable via qt.conf/Paths as before, while the read locations are configured via qt.conf/EffectivePaths. this finally provides a clean solution to the problem that during the qt build itself tools and libraries need to be taken from somewhere else than they are installed to. Change-Id: I956c43bd082afd465e690fe75d0bee3c2c0f7c25 Reviewed-by: Joerg Bornemann Reviewed-by: Robin Burchell --- qmake/property.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'qmake/property.cpp') diff --git a/qmake/property.cpp b/qmake/property.cpp index 076c45fc3c..8d2e14ca11 100644 --- a/qmake/property.cpp +++ b/qmake/property.cpp @@ -79,7 +79,8 @@ QMakeProperty::QMakeProperty() : settings(0) { for (int i = 0; i < sizeof(propList)/sizeof(propList[0]); i++) { QString name = QString::fromLatin1(propList[i].name); - QString val = QLibraryInfo::rawLocation(propList[i].loc); + m_values[name + "/get"] = QLibraryInfo::rawLocation(propList[i].loc, QLibraryInfo::EffectivePaths); + QString val = QLibraryInfo::rawLocation(propList[i].loc, QLibraryInfo::FinalPaths); if (!propList[i].raw) { m_values[name] = QLibraryInfo::location(propList[i].loc); name += "/raw"; @@ -214,9 +215,12 @@ QMakeProperty::exec() foreach (QString prop, specialProps) { QString val = value(prop); QString pval = value(prop + "/raw"); + QString gval = value(prop + "/get"); fprintf(stdout, "%s:%s\n", prop.toLatin1().constData(), val.toLatin1().constData()); if (!pval.isEmpty() && pval != val) fprintf(stdout, "%s/raw:%s\n", prop.toLatin1().constData(), pval.toLatin1().constData()); + if (!gval.isEmpty() && gval != (pval.isEmpty() ? val : pval)) + fprintf(stdout, "%s/get:%s\n", prop.toLatin1().constData(), gval.toLatin1().constData()); } return true; } -- cgit v1.2.3