logic: Added compilation database project setup

* Added CDB option to project type selection
* show CDB source files in popup
* define header paths separately
* made generic content summary in wizzard and use it everywhere
* fixed file paths not canonical in analysis
* refactored wizzard content paths to use summary instead of subpaths
* refactored files popup to simpler communication with content

bug id = 35
This commit is contained in:
Eberhard Graether
2016-03-08 13:20:37 +01:00
parent 90c0d15d20
commit 8cc8f5d534
45 changed files with 919 additions and 734 deletions
+10 -2
View File
@@ -168,12 +168,19 @@ void Project::updateFileManager()
{
std::shared_ptr<ProjectSettings> projSettings = ProjectSettings::getInstance();
std::vector<FilePath> sourcePaths(projSettings->getSourcePaths());
std::vector<FilePath> sourcePaths = projSettings->getSourcePaths();
std::vector<FilePath> headerPaths;
if (projSettings->getCompilationDatabasePath().exists())
{
headerPaths = sourcePaths;
sourcePaths = TaskParseCxx::getSourceFilesFromCDB(projSettings->getCompilationDatabasePath());
}
std::vector<std::string> sourceExtensions = projSettings->getSourceExtensions();
std::vector<std::string> includeExtensions = projSettings->getHeaderExtensions();
m_fileManager.setPaths(sourcePaths, sourceExtensions, includeExtensions);
m_fileManager.setPaths(sourcePaths, headerPaths, sourceExtensions, includeExtensions);
}
Parser::Arguments Project::getParserArguments() const
@@ -212,6 +219,7 @@ Parser::Arguments Project::getParserArguments() const
args.language = projSettings->getLanguage();
args.languageStandard = projSettings->getStandard();
args.compilationDatabasePath = projSettings->getCompilationDatabasePath();
return args;
}