Plugins: Add compilation database plugin

Introduce compilation database project support.

Pass the arguments list for each file directly to
ClangCodeModel via extraCodeModelFlags therefore
introduce a dependency from the ClangCodeModel plugin.

Change-Id: Iea5760d379de1ea246382dce56de0adf7ab5673d
Task-number: QTCREATORBUG-21115
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
This commit is contained in:
Ivan Donchevskii
2018-08-13 11:15:27 +02:00
parent 8195c60917
commit c99fb5d0bc
14 changed files with 583 additions and 1 deletions

View File

@@ -28,6 +28,7 @@
#include "cppprojectfilecategorizer.h"
#include <projectexplorer/headerpath.h>
#include <projectexplorer/projectexplorerconstants.h>
namespace CppTools {
namespace Internal {
@@ -56,6 +57,10 @@ public:
m_projectPart.warningFlags = m_flags.warningFlags;
// For compilation database pass the command line flags directly.
if (m_projectPart.toolchainType == ProjectExplorer::Constants::COMPILATION_DATABASE_TOOLCHAIN_TYPEID)
m_projectPart.extraCodeModelFlags = m_flags.commandLineFlags;
mapLanguageVersion();
mapLanguageExtensions();