summaryrefslogtreecommitdiffstats
path: root/qmake/property.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qmake/property.cpp')
-rw-r--r--qmake/property.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/qmake/property.cpp b/qmake/property.cpp
index 1952b5069b..8d2e14ca11 100644
--- a/qmake/property.cpp
+++ b/qmake/property.cpp
@@ -49,6 +49,8 @@
QT_BEGIN_NAMESPACE
+QStringList qmake_mkspec_paths(); //project.cpp
+
static const struct {
const char *name;
QLibraryInfo::LibraryLocation loc;
@@ -77,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";
@@ -115,7 +118,7 @@ QMakeProperty::value(QString v, bool just_check)
if (!val.isNull())
return val;
else if(v == "QMAKE_MKSPECS")
- return Option::mkspecPaths().join(Option::dirlist_sep);
+ return qmake_mkspec_paths().join(Option::dirlist_sep);
else if(v == "QMAKE_VERSION")
return qmake_version();
#ifdef QT_VERSION_STR
@@ -212,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;
}