diff options
author | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2012-05-03 15:36:03 +0200 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2012-06-19 16:39:58 +0200 |
commit | 6a8f64136e7c38fa4e94c916a57b83856ded3a8d (patch) | |
tree | 9c48605b999fc124d97cdd754b653da4c8f9ac0e /qmake/project.cpp | |
parent | ab0d55e361778177eed60964dcddbfe0809b9fbe (diff) |
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 <joerg.bornemann@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Diffstat (limited to 'qmake/project.cpp')
-rw-r--r-- | qmake/project.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/qmake/project.cpp b/qmake/project.cpp index 8508059e9c..f7102162b8 100644 --- a/qmake/project.cpp +++ b/qmake/project.cpp @@ -632,7 +632,8 @@ QStringList qmake_feature_paths(QMakeProperty *prop, bool host_build) } for(QStringList::Iterator concat_it = concat.begin(); concat_it != concat.end(); ++concat_it) - feature_roots << (QLibraryInfo::location(QLibraryInfo::HostDataPath) + + feature_roots << (QLibraryInfo::rawLocation(QLibraryInfo::HostDataPath, + QLibraryInfo::EffectivePaths) + mkspecs_concat + (*concat_it)); feature_roots.removeDuplicates(); return feature_roots; @@ -652,7 +653,7 @@ QStringList qmake_mkspec_paths() ret << project_build_root + concat; if (!project_root.isEmpty()) ret << project_root + concat; - ret << QLibraryInfo::location(QLibraryInfo::DataPath) + concat; + ret << QLibraryInfo::rawLocation(QLibraryInfo::HostDataPath, QLibraryInfo::EffectivePaths) + concat; ret.removeDuplicates(); return ret; @@ -3802,7 +3803,8 @@ QStringList &QMakeProject::values(const QString &_var, QHash<QString, QStringLis place[var] = QStringList(Option::fixPathToTargetOS( !Option::qmake_abslocation.isEmpty() ? Option::qmake_abslocation - : QLibraryInfo::location(QLibraryInfo::HostBinariesPath) + "/qmake", + : QLibraryInfo::rawLocation(QLibraryInfo::HostBinariesPath, + QLibraryInfo::EffectivePaths) + "/qmake", false)); } #if defined(Q_OS_WIN32) && defined(Q_CC_MSVC) |