forked from qt-creator/qt-creator
CMake: work-around for CodeBlocks lack of framework support.
CodeBlocks is utterly ignorant of frameworks on Mac, and won't report framework paths. The work-around is to check if the include path ends in ".framework", and if so, add the parent directory as framework path. Task-number: QTCREATORBUG-11445 Change-Id: I794dd72d755d5593e36ebf59543d0a5e9fda3cce Reviewed-by: Daniel Teske <daniel.teske@digia.com> Reviewed-by: Eike Ziller <eike.ziller@digia.com>
This commit is contained in:
committed by
Erik Verbruggen
parent
139a1a8dbe
commit
c4ef72dd39
@@ -349,7 +349,22 @@ bool CMakeProject::parseCMakeLists()
|
||||
|
||||
// This explicitly adds -I. to the include paths
|
||||
part->includePaths += projectDirectory();
|
||||
part->includePaths += cbpparser.includeFiles();
|
||||
|
||||
foreach (const QString &includeFile, cbpparser.includeFiles()) {
|
||||
// CodeBlocks is utterly ignorant of frameworks on Mac, and won't report framework
|
||||
// paths. The work-around is to check if the include path ends in ".framework", and
|
||||
// if so, add the parent directory as framework path.
|
||||
if (includeFile.endsWith(QLatin1String(".framework"))) {
|
||||
const int slashIdx = includeFile.lastIndexOf(QLatin1Char('/'));
|
||||
if (slashIdx != -1) {
|
||||
part->frameworkPaths += includeFile.left(slashIdx);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
part->includePaths += includeFile;
|
||||
}
|
||||
|
||||
part->projectDefines += cbpparser.defines();
|
||||
|
||||
CppTools::ProjectFileAdder adder(part->files);
|
||||
|
||||
Reference in New Issue
Block a user