QmakePM: Fix executableFor() on macOS

Ensure that target is not empty and avoid storing a path instead of
the real executable.

Change-Id: I408a54befbbb7004773d04f4bdd3898469efbaa7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
Christian Stenger
2017-03-29 13:15:11 +02:00
parent 0683281b7b
commit a59f209bb3

View File

@@ -1312,9 +1312,9 @@ QString QmakeProject::executableFor(const QmakeProFile *file)
TargetInformation ti = file->targetInformation(); TargetInformation ti = file->targetInformation();
QString target; QString target;
if (tc->targetAbi().os() == Abi::DarwinOS) { if (tc->targetAbi().os() == Abi::DarwinOS
if (file->variableValue(Variable::Config).contains(QLatin1String("app_bundle"))) && file->variableValue(Variable::Config).contains("app_bundle")) {
target = ti.target + QLatin1String(".app/Contents/MacOS/") + ti.target; target = ti.target + ".app/Contents/MacOS/" + ti.target;
} else { } else {
QString extension = file->singleVariableValue(Variable::TargetExt); QString extension = file->singleVariableValue(Variable::TargetExt);
target = ti.target + extension; target = ti.target + extension;