forked from qt-creator/qt-creator
CMake: Move more code into BuildDirManager
Continue to concentrate all the code reading random cmake files in BuildDirManager. Now the task is to clean up the code, make it less dependent on values it should not depend on (kits, etc.), make it handle changes better and finally add another implementation that uses the cmake server mode to extract the data. Change-Id: I533625e376b969b64287bc205bd2e4be7a605306 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
@@ -45,6 +45,7 @@ QT_FORWARD_DECLARE_CLASS(QTemporaryDir);
|
||||
QT_FORWARD_DECLARE_CLASS(QFileSystemWatcher);
|
||||
|
||||
namespace Core { class IDocument; }
|
||||
namespace CppTools { class ProjectPartBuilder; }
|
||||
|
||||
namespace ProjectExplorer {
|
||||
class FileNode;
|
||||
@@ -80,6 +81,7 @@ public:
|
||||
bool persistCMakeState();
|
||||
|
||||
void generateProjectTree(CMakeProjectNode *root);
|
||||
QSet<Core::Id> updateCodeModel(CppTools::ProjectPartBuilder &ppBuilder);
|
||||
|
||||
QList<CMakeBuildTarget> buildTargets() const;
|
||||
CMakeConfig parsedConfiguration() const;
|
||||
@@ -117,6 +119,10 @@ private:
|
||||
void processCMakeOutput();
|
||||
void processCMakeError();
|
||||
|
||||
QStringList getCXXFlagsFor(const CMakeBuildTarget &buildTarget, QHash<QString, QStringList> &cache);
|
||||
bool extractCXXFlagsFromMake(const CMakeBuildTarget &buildTarget, QHash<QString, QStringList> &cache);
|
||||
bool extractCXXFlagsFromNinja(const CMakeBuildTarget &buildTarget, QHash<QString, QStringList> &cache);
|
||||
|
||||
bool m_hasData = false;
|
||||
|
||||
CMakeBuildConfiguration *m_buildConfiguration = nullptr;
|
||||
|
||||
Reference in New Issue
Block a user