forked from qt-creator/qt-creator
Adjust after upstream AnalyzerStartParameter changes
Change-Id: I92a6dcee0c201905132e069291eb40e6da6da128 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
This commit is contained in:
@@ -130,8 +130,8 @@ bool ClangStaticAnalyzerPlugin::initializeEnterpriseFeatures(const QStringList &
|
|||||||
|
|
||||||
auto widgetCreator = [tool] { return tool->createWidgets(); };
|
auto widgetCreator = [tool] { return tool->createWidgets(); };
|
||||||
auto runControlCreator = [tool](const AnalyzerStartParameters &sp,
|
auto runControlCreator = [tool](const AnalyzerStartParameters &sp,
|
||||||
ProjectExplorer::RunConfiguration *runConfiguration) {
|
ProjectExplorer::RunConfiguration *runConfiguration, Core::Id runMode) {
|
||||||
return tool->createRunControl(sp, runConfiguration);
|
return tool->createRunControl(sp, runConfiguration, runMode);
|
||||||
};
|
};
|
||||||
|
|
||||||
const QString toolTip = tr("Clang Static Analyzer uses the analyzer from the clang project "
|
const QString toolTip = tr("Clang Static Analyzer uses the analyzer from the clang project "
|
||||||
|
@@ -36,6 +36,7 @@
|
|||||||
#include <cpptools/cppprojectfile.h>
|
#include <cpptools/cppprojectfile.h>
|
||||||
|
|
||||||
#include <projectexplorer/abi.h>
|
#include <projectexplorer/abi.h>
|
||||||
|
#include <projectexplorer/buildconfiguration.h>
|
||||||
#include <projectexplorer/kitinformation.h>
|
#include <projectexplorer/kitinformation.h>
|
||||||
#include <projectexplorer/project.h>
|
#include <projectexplorer/project.h>
|
||||||
#include <projectexplorer/runconfiguration.h>
|
#include <projectexplorer/runconfiguration.h>
|
||||||
@@ -57,15 +58,20 @@ namespace Internal {
|
|||||||
|
|
||||||
ClangStaticAnalyzerRunControl::ClangStaticAnalyzerRunControl(
|
ClangStaticAnalyzerRunControl::ClangStaticAnalyzerRunControl(
|
||||||
const Analyzer::AnalyzerStartParameters &startParams,
|
const Analyzer::AnalyzerStartParameters &startParams,
|
||||||
ProjectExplorer::RunConfiguration *runConfiguration,
|
RunConfiguration *runConfiguration,
|
||||||
|
Core::Id runMode,
|
||||||
const ProjectInfo &projectInfo)
|
const ProjectInfo &projectInfo)
|
||||||
: AnalyzerRunControl(startParams, runConfiguration)
|
: AnalyzerRunControl(startParams, runConfiguration, runMode)
|
||||||
, m_projectInfo(projectInfo)
|
, m_projectInfo(projectInfo)
|
||||||
, m_wordWidth(runConfiguration->abi().wordWidth())
|
, m_wordWidth(runConfiguration->abi().wordWidth())
|
||||||
, m_initialFilesToProcessSize(0)
|
, m_initialFilesToProcessSize(0)
|
||||||
, m_filesAnalyzed(0)
|
, m_filesAnalyzed(0)
|
||||||
, m_filesNotAnalyzed(0)
|
, m_filesNotAnalyzed(0)
|
||||||
{
|
{
|
||||||
|
Target *target = runConfiguration->target();
|
||||||
|
BuildConfiguration *buildConfiguration = target->activeBuildConfiguration();
|
||||||
|
QTC_ASSERT(buildConfiguration, return);
|
||||||
|
m_environment = buildConfiguration->environment();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void prependWordWidthArgumentIfNotIncluded(QStringList *arguments, unsigned char wordWidth)
|
static void prependWordWidthArgumentIfNotIncluded(QStringList *arguments, unsigned char wordWidth)
|
||||||
@@ -347,7 +353,7 @@ bool ClangStaticAnalyzerRunControl::startEngine()
|
|||||||
m_progress.reportStarted();
|
m_progress.reportStarted();
|
||||||
|
|
||||||
// Start process(es)
|
// Start process(es)
|
||||||
qCDebug(LOG) << "Environment:" << startParameters().environment;
|
qCDebug(LOG) << "Environment:" << m_environment;
|
||||||
m_runners.clear();
|
m_runners.clear();
|
||||||
const int parallelRuns = ClangStaticAnalyzerSettings::instance()->simultaneousProcesses();
|
const int parallelRuns = ClangStaticAnalyzerSettings::instance()->simultaneousProcesses();
|
||||||
QTC_ASSERT(parallelRuns >= 1, emit finished(); return false);
|
QTC_ASSERT(parallelRuns >= 1, emit finished(); return false);
|
||||||
@@ -406,11 +412,10 @@ ClangStaticAnalyzerRunner *ClangStaticAnalyzerRunControl::createRunner()
|
|||||||
QTC_ASSERT(!m_clangExecutable.isEmpty(), return 0);
|
QTC_ASSERT(!m_clangExecutable.isEmpty(), return 0);
|
||||||
QTC_ASSERT(!m_clangLogFileDir.isEmpty(), return 0);
|
QTC_ASSERT(!m_clangLogFileDir.isEmpty(), return 0);
|
||||||
|
|
||||||
ClangStaticAnalyzerRunner *runner
|
auto runner = new ClangStaticAnalyzerRunner(m_clangExecutable,
|
||||||
= new ClangStaticAnalyzerRunner(m_clangExecutable,
|
m_clangLogFileDir,
|
||||||
m_clangLogFileDir,
|
m_environment,
|
||||||
startParameters().environment,
|
this);
|
||||||
this);
|
|
||||||
connect(runner, &ClangStaticAnalyzerRunner::finishedWithSuccess,
|
connect(runner, &ClangStaticAnalyzerRunner::finishedWithSuccess,
|
||||||
this, &ClangStaticAnalyzerRunControl::onRunnerFinishedWithSuccess);
|
this, &ClangStaticAnalyzerRunControl::onRunnerFinishedWithSuccess);
|
||||||
connect(runner, &ClangStaticAnalyzerRunner::finishedWithFailure,
|
connect(runner, &ClangStaticAnalyzerRunner::finishedWithFailure,
|
||||||
|
@@ -21,6 +21,7 @@
|
|||||||
|
|
||||||
#include <analyzerbase/analyzerruncontrol.h>
|
#include <analyzerbase/analyzerruncontrol.h>
|
||||||
#include <cpptools/cppprojects.h>
|
#include <cpptools/cppprojects.h>
|
||||||
|
#include <utils/environment.h>
|
||||||
|
|
||||||
#include <QFutureInterface>
|
#include <QFutureInterface>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
@@ -45,9 +46,10 @@ class ClangStaticAnalyzerRunControl : public Analyzer::AnalyzerRunControl
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit ClangStaticAnalyzerRunControl(const Analyzer::AnalyzerStartParameters &startParams,
|
ClangStaticAnalyzerRunControl(const Analyzer::AnalyzerStartParameters &startParams,
|
||||||
ProjectExplorer::RunConfiguration *runConfiguration,
|
ProjectExplorer::RunConfiguration *runConfiguration,
|
||||||
const CppTools::ProjectInfo &projectInfo);
|
Core::Id runMode,
|
||||||
|
const CppTools::ProjectInfo &projectInfo);
|
||||||
|
|
||||||
bool startEngine();
|
bool startEngine();
|
||||||
void stopEngine();
|
void stopEngine();
|
||||||
@@ -75,6 +77,7 @@ private:
|
|||||||
const CppTools::ProjectInfo m_projectInfo;
|
const CppTools::ProjectInfo m_projectInfo;
|
||||||
const unsigned char m_wordWidth;
|
const unsigned char m_wordWidth;
|
||||||
|
|
||||||
|
Utils::Environment m_environment;
|
||||||
QString m_clangExecutable;
|
QString m_clangExecutable;
|
||||||
QString m_clangLogFileDir;
|
QString m_clangLogFileDir;
|
||||||
QFutureInterface<void> m_progress;
|
QFutureInterface<void> m_progress;
|
||||||
|
@@ -109,14 +109,7 @@ RunControl *ClangStaticAnalyzerRunControlFactory::create(RunConfiguration *runCo
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
AnalyzerStartParameters sp;
|
return AnalyzerManager::createRunControl(AnalyzerStartParameters(), runConfiguration, runMode);
|
||||||
sp.displayName = runConfiguration->displayName();
|
|
||||||
sp.runMode = runMode;
|
|
||||||
BuildConfiguration * const buildConfiguration = target->activeBuildConfiguration();
|
|
||||||
QTC_ASSERT(buildConfiguration, return 0);
|
|
||||||
sp.environment = buildConfiguration->environment();
|
|
||||||
|
|
||||||
return AnalyzerManager::createRunControl(sp, runConfiguration);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace Internal
|
} // namespace Internal
|
||||||
|
@@ -160,7 +160,8 @@ QWidget *ClangStaticAnalyzerTool::createWidgets()
|
|||||||
|
|
||||||
AnalyzerRunControl *ClangStaticAnalyzerTool::createRunControl(
|
AnalyzerRunControl *ClangStaticAnalyzerTool::createRunControl(
|
||||||
const AnalyzerStartParameters &sp,
|
const AnalyzerStartParameters &sp,
|
||||||
ProjectExplorer::RunConfiguration *runConfiguration)
|
RunConfiguration *runConfiguration,
|
||||||
|
Core::Id runMode)
|
||||||
{
|
{
|
||||||
QTC_ASSERT(runConfiguration, return 0);
|
QTC_ASSERT(runConfiguration, return 0);
|
||||||
QTC_ASSERT(m_projectInfoBeforeBuild.isValid(), return 0);
|
QTC_ASSERT(m_projectInfoBeforeBuild.isValid(), return 0);
|
||||||
@@ -176,8 +177,8 @@ AnalyzerRunControl *ClangStaticAnalyzerTool::createRunControl(
|
|||||||
return 0);
|
return 0);
|
||||||
m_projectInfoBeforeBuild = CppTools::ProjectInfo();
|
m_projectInfoBeforeBuild = CppTools::ProjectInfo();
|
||||||
|
|
||||||
ClangStaticAnalyzerRunControl *engine
|
auto engine = new ClangStaticAnalyzerRunControl(sp, runConfiguration, runMode,
|
||||||
= new ClangStaticAnalyzerRunControl(sp, runConfiguration, projectInfoAfterBuild);
|
projectInfoAfterBuild);
|
||||||
connect(engine, &ClangStaticAnalyzerRunControl::starting,
|
connect(engine, &ClangStaticAnalyzerRunControl::starting,
|
||||||
this, &ClangStaticAnalyzerTool::onEngineIsStarting);
|
this, &ClangStaticAnalyzerTool::onEngineIsStarting);
|
||||||
connect(engine, &ClangStaticAnalyzerRunControl::newDiagnosticsAvailable,
|
connect(engine, &ClangStaticAnalyzerRunControl::newDiagnosticsAvailable,
|
||||||
|
@@ -53,7 +53,8 @@ public:
|
|||||||
|
|
||||||
QWidget *createWidgets();
|
QWidget *createWidgets();
|
||||||
Analyzer::AnalyzerRunControl *createRunControl(const Analyzer::AnalyzerStartParameters &sp,
|
Analyzer::AnalyzerRunControl *createRunControl(const Analyzer::AnalyzerStartParameters &sp,
|
||||||
ProjectExplorer::RunConfiguration *runConfiguration);
|
ProjectExplorer::RunConfiguration *runConfiguration,
|
||||||
|
Core::Id runMode);
|
||||||
void startTool();
|
void startTool();
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
|
Reference in New Issue
Block a user