diff --git a/src/plugins/cmakeprojectmanager/servermodereader.cpp b/src/plugins/cmakeprojectmanager/servermodereader.cpp index 874c8f4f74c..59f6113b36b 100644 --- a/src/plugins/cmakeprojectmanager/servermodereader.cpp +++ b/src/plugins/cmakeprojectmanager/servermodereader.cpp @@ -702,14 +702,15 @@ void ServerModeReader::addFileGroups(ProjectNode *targetRoot, } // Split up files in groups (based on location): + const bool inSourceBuild = (m_parameters.buildDirectory == m_parameters.sourceDirectory); QList sourceFileNodes; QList buildFileNodes; QList otherFileNodes; foreach (FileNode *fn, toList) { - if (fn->filePath().isChildOf(m_parameters.sourceDirectory)) - sourceFileNodes.append(fn); - else if (fn->filePath().isChildOf(m_parameters.buildDirectory)) + if (fn->filePath().isChildOf(m_parameters.buildDirectory) && !inSourceBuild) buildFileNodes.append(fn); + else if (fn->filePath().isChildOf(m_parameters.sourceDirectory)) + sourceFileNodes.append(fn); else otherFileNodes.append(fn); }