diff --git a/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp b/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp index 41ae3acf03b..66448835cff 100644 --- a/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp +++ b/src/plugins/qmakeprojectmanager/qmakeparsernodes.cpp @@ -45,6 +45,7 @@ #include #include #include +#include #include #include @@ -1870,9 +1871,11 @@ FileName QmakeProFile::buildDir(QmakeBuildConfiguration *bc) const const QString relativeDir = srcDirRoot.relativeFilePath(directoryPath().toString()); if (!bc && m_project->activeTarget()) bc = static_cast(m_project->activeTarget()->activeBuildConfiguration()); - if (!bc) - return { }; - return FileName::fromString(QDir::cleanPath(QDir(bc->buildDirectory().toString()).absoluteFilePath(relativeDir))); + const QString buildConfigBuildDir = bc ? bc->buildDirectory().toString() : QString(); + const QString buildDir = buildConfigBuildDir.isEmpty() + ? m_project->projectDirectory().toString() + : buildConfigBuildDir; + return FileName::fromString(QDir::cleanPath(QDir(buildDir).absoluteFilePath(relativeDir))); } FileNameList QmakeProFile::generatedFiles(const FileName &buildDir,