forked from qt-creator/qt-creator
Conan: Add "Build missing" option to conan install step
By default this option is set to true. Task-number: QTCREATORBUG-25275 Change-Id: Ia7d628026e4ff7d20cf4b22db89d9b5b6ff5a9ca Reviewed-by: Kai Koehne <kai.koehne@qt.io>
This commit is contained in:
@@ -78,13 +78,21 @@ ConanInstallStep::ConanInstallStep(BuildStepList *bsl, Id id)
|
||||
additionalArguments->setLabelText(tr("Additional arguments:"));
|
||||
additionalArguments->setDisplayStyle(StringAspect::LineEditDisplay);
|
||||
|
||||
setCommandLineProvider([this, conanFile, additionalArguments] {
|
||||
auto buildMissing = addAspect<BoolAspect>();
|
||||
buildMissing->setSettingsKey("ConanPackageManager.InstallStep.BuildMissing");
|
||||
buildMissing->setLabel("Build missing:", BoolAspect::LabelPlacement::InExtraLabel);
|
||||
buildMissing->setDefaultValue(true);
|
||||
|
||||
setCommandLineProvider([=] {
|
||||
BuildConfiguration::BuildType bt = buildConfiguration()->buildType();
|
||||
const QString buildType = bt == BuildConfiguration::Release ? QString("Release")
|
||||
: QString("Debug");
|
||||
|
||||
CommandLine cmd(ConanPlugin::conanSettings()->conanFilePath());
|
||||
cmd.addArgs({"install", "-s", "build_type=" + buildType, conanFile->value()});
|
||||
cmd.addArgs({"install", "-s", "build_type=" + buildType});
|
||||
if (buildMissing->value())
|
||||
cmd.addArg("--build=missing");
|
||||
cmd.addArg(conanFile->value());
|
||||
cmd.addArgs(additionalArguments->value(), CommandLine::Raw);
|
||||
return cmd;
|
||||
});
|
||||
|
Reference in New Issue
Block a user