diff options
author | Giotis Nikos <giotis.nikos@gmail.com> | 2012-02-07 01:32:44 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-02-08 07:48:43 +0100 |
commit | 6b807a283cace845c235c24543a071e41cee0dac (patch) | |
tree | f35f2c8877058a6035321ecca4b7d96bdc58a12c /qmake | |
parent | b113644acbeda7171b4442fba2aac3e51f9c5b0f (diff) |
Fix qmake evaluation of QMAKE_TARGET.arch on msvc2010 x86_64
This change is needed because msvc2010 tools have a '\' character at
the end of environment variable VCINSTALLDIR. This variable on msvc2008
does not have this '\' character at its end. Without this change
QMAKE_TARGET.arch on msvc2010 x64 evaluates to x86 instead of x86_64.
Task-number: QTBUG-22686
Change-Id: Ifba833e9361c97568b8b3de9976023e8537b208a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Diffstat (limited to 'qmake')
-rw-r--r-- | qmake/project.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/qmake/project.cpp b/qmake/project.cpp index d898483a47..fbeb033b86 100644 --- a/qmake/project.cpp +++ b/qmake/project.cpp @@ -3165,8 +3165,14 @@ QStringList &QMakeProject::values(const QString &_var, QHash<QString, QStringLis QString ret, type = var.mid(13); if(type == "arch") { QString paths = qgetenv("PATH"); - QString vcBin64 = qgetenv("VCINSTALLDIR").append("\\bin\\amd64"); - QString vcBinX86_64 = qgetenv("VCINSTALLDIR").append("\\bin\\x86_amd64"); + QString vcBin64 = qgetenv("VCINSTALLDIR"); + if (!vcBin64.endsWith('\\')) + vcBin64.append('\\'); + vcBin64.append("bin\\amd64"); + QString vcBinX86_64 = qgetenv("VCINSTALLDIR"); + if (!vcBinX86_64.endsWith('\\')) + vcBinX86_64.append('\\'); + vcBinX86_64.append("bin\\x86_amd64"); if(paths.contains(vcBin64,Qt::CaseInsensitive) || paths.contains(vcBinX86_64,Qt::CaseInsensitive)) ret = "x86_64"; else |