const GoCompilerBuildStep *GoBuildConfiguration::goCompilerBuildStep() const { BuildStepList *steps = stepList(ProjectExplorer::Constants::BUILDSTEPS_BUILD); QTC_ASSERT(steps, return nullptr); foreach (BuildStep *step, steps->steps()) if (step->id() == Constants::C_GOCOMPILERBUILDSTEP_ID) return qobject_cast<GoCompilerBuildStep *>(step); return nullptr; }
MakeStep *QmakeBuildConfiguration::makeStep() const { MakeStep *ms = 0; BuildStepList *bsl = stepList(Core::Id(ProjectExplorer::Constants::BUILDSTEPS_BUILD)); Q_ASSERT(bsl); for (int i = 0; i < bsl->count(); ++i) if ((ms = qobject_cast<MakeStep *>(bsl->at(i))) != 0) return ms; return 0; }
void AndroidQmakeBuildConfiguration::initialize(const BuildInfo *info) { QmakeBuildConfiguration::initialize(info); BuildStepList *buildSteps = stepList(ProjectExplorer::Constants::BUILDSTEPS_BUILD); buildSteps->appendStep(new AndroidPackageInstallationStep(buildSteps)); buildSteps->appendStep(new QmakeAndroidBuildApkStep(buildSteps)); updateCacheAndEmitEnvironmentChanged(); }
void GenericBuildConfiguration::initialize(const BuildInfo *info) { BuildConfiguration::initialize(info); BuildStepList *buildSteps = stepList(ProjectExplorer::Constants::BUILDSTEPS_BUILD); buildSteps->appendStep(new GenericMakeStep(buildSteps, "all")); BuildStepList *cleanSteps = stepList(ProjectExplorer::Constants::BUILDSTEPS_CLEAN); cleanSteps->appendStep(new GenericMakeStep(cleanSteps, "clean")); updateCacheAndEmitEnvironmentChanged(); }
bool S60DeployConfiguration::isSigned() const { DeployConfiguration *dc = target()->activeDeployConfiguration(); QTC_ASSERT(dc, return false); BuildStepList *bsl = dc->stepList(); QTC_ASSERT(bsl, return false); QList<BuildStep *> steps = bsl->steps(); foreach (const BuildStep *step, steps) { if (const S60CreatePackageStep *packageStep = qobject_cast<const S60CreatePackageStep *>(step)) { return packageStep->signingMode() != S60CreatePackageStep::NotSigned; } } return false; }
bool S60DeployConfiguration::runSmartInstaller() const { DeployConfiguration *dc = target()->activeDeployConfiguration(); QTC_ASSERT(dc, return false); BuildStepList *bsl = dc->stepList(); QTC_ASSERT(bsl, return false); QList<BuildStep *> steps = bsl->steps(); foreach (const BuildStep *step, steps) { if (const S60CreatePackageStep *packageStep = qobject_cast<const S60CreatePackageStep *>(step)) { return packageStep->createsSmartInstaller(); } } return false; }
void QmakeBuildConfigurationFactory::configureBuildConfiguration(Target *parent, QmakeBuildConfiguration *bc, const QmakeBuildInfo *qmakeInfo) const { BaseQtVersion *version = QtSupport::QtKitInformation::qtVersion(parent->kit()); BaseQtVersion::QmakeBuildConfigs config = version->defaultBuildConfig(); if (qmakeInfo->buildType == BuildConfiguration::Debug) config |= QtSupport::BaseQtVersion::DebugBuild; else config &= ~QtSupport::BaseQtVersion::DebugBuild; bc->setDefaultDisplayName(qmakeInfo->displayName); bc->setDisplayName(qmakeInfo->displayName); BuildStepList *buildSteps = bc->stepList(Core::Id(ProjectExplorer::Constants::BUILDSTEPS_BUILD)); BuildStepList *cleanSteps = bc->stepList(Core::Id(ProjectExplorer::Constants::BUILDSTEPS_CLEAN)); Q_ASSERT(buildSteps); Q_ASSERT(cleanSteps); QMakeStep *qmakeStep = new QMakeStep(buildSteps); buildSteps->insertStep(0, qmakeStep); MakeStep *makeStep = new MakeStep(buildSteps); buildSteps->insertStep(1, makeStep); MakeStep *cleanStep = new MakeStep(cleanSteps); cleanStep->setClean(true); cleanStep->setUserArguments(QLatin1String("clean")); cleanSteps->insertStep(0, cleanStep); QString additionalArguments = qmakeInfo->additionalArguments; if (!additionalArguments.isEmpty()) qmakeStep->setUserArguments(additionalArguments); qmakeStep->setLinkQmlDebuggingLibrary(qmakeInfo->config.linkQmlDebuggingQQ2); qmakeStep->setSeparateDebugInfo(qmakeInfo->config.separateDebugInfo); qmakeStep->setUseQtQuickCompiler(qmakeInfo->config.useQtQuickCompiler); bc->setQMakeBuildConfiguration(config); Utils::FileName directory = qmakeInfo->buildDirectory; if (directory.isEmpty()) { directory = defaultBuildDirectory(parent->project()->projectFilePath().toString(), parent->kit(), qmakeInfo->displayName, bc->buildType()); } bc->setBuildDirectory(directory); }
IosDeployStep *IosRunConfiguration::deployStep() const { IosDeployStep * step = 0; DeployConfiguration *config = target()->activeDeployConfiguration(); BuildStepList *bsl = config->stepList(); if (bsl) { const QList<BuildStep *> &buildSteps = bsl->steps(); for (int i = buildSteps.count() - 1; i >= 0; --i) { step = qobject_cast<IosDeployStep *>(buildSteps.at(i)); if (step) break; } } Q_ASSERT_X(step, Q_FUNC_INFO, "Impossible: iOS build configuration without deploy step."); return step; }
Qt4BuildConfiguration *Qt4BuildConfiguration::setup(Target *t, QString defaultDisplayName, QString displayName, BaseQtVersion::QmakeBuildConfigs qmakeBuildConfiguration, QString additionalArguments, QString directory, bool importing) { // Add the build configuration. Qt4BuildConfiguration *bc = new Qt4BuildConfiguration(t); bc->setDefaultDisplayName(defaultDisplayName); bc->setDisplayName(displayName); BuildStepList *buildSteps = bc->stepList(Core::Id(ProjectExplorer::Constants::BUILDSTEPS_BUILD)); BuildStepList *cleanSteps = bc->stepList(Core::Id(ProjectExplorer::Constants::BUILDSTEPS_CLEAN)); Q_ASSERT(buildSteps); Q_ASSERT(cleanSteps); QMakeStep *qmakeStep = new QMakeStep(buildSteps); buildSteps->insertStep(0, qmakeStep); MakeStep *makeStep = new MakeStep(buildSteps); buildSteps->insertStep(1, makeStep); MakeStep *cleanStep = new MakeStep(cleanSteps); cleanStep->setClean(true); cleanStep->setUserArguments(QLatin1String("clean")); cleanSteps->insertStep(0, cleanStep); bool enableQmlDebugger = Qt4BuildConfiguration::removeQMLInspectorFromArguments(&additionalArguments); if (!additionalArguments.isEmpty()) qmakeStep->setUserArguments(additionalArguments); if (importing) qmakeStep->setLinkQmlDebuggingLibrary(enableQmlDebugger); bc->setQMakeBuildConfiguration(qmakeBuildConfiguration); if (!directory.isEmpty()) bc->setShadowBuildAndDirectory(directory != t->project()->projectDirectory(), directory); return bc; }
void GoBuildConfiguration::initialize(const BuildInfo &info) { BuildConfiguration::initialize(info); GoProject *project = qobject_cast<GoProject *>(target()->project()); QTC_ASSERT(project, return); // Add nim compiler build step { BuildStepList *buildSteps = stepList(ProjectExplorer::Constants::BUILDSTEPS_BUILD); buildSteps->appendStep(new GoCompilerGetStep(buildSteps)); buildSteps->appendStep(new GoCompilerBuildStep(buildSteps)); } // Add clean step { BuildStepList *cleanSteps = stepList(ProjectExplorer::Constants::BUILDSTEPS_CLEAN); cleanSteps->appendStep(new GoCompilerCleanStep(cleanSteps)); } }
BuildConfiguration *GenericBuildConfigurationFactory::create(Target *parent, const Core::Id id, const QString &name) { if (!canCreate(parent, id)) return 0; //TODO asking for name is duplicated everywhere, but maybe more // wizards will show up, that incorporate choosing the nam bool ok = true; QString buildConfigurationName = name; if (buildConfigurationName.isNull()) buildConfigurationName = QInputDialog::getText(0, tr("New Configuration"), tr("New configuration name:"), QLineEdit::Normal, QString(), &ok); buildConfigurationName = buildConfigurationName.trimmed(); if (!ok || buildConfigurationName.isEmpty()) return 0; GenericBuildConfiguration *bc = new GenericBuildConfiguration(parent); bc->setDisplayName(buildConfigurationName); BuildStepList *buildSteps = bc->stepList(Constants::BUILDSTEPS_BUILD); BuildStepList *cleanSteps = bc->stepList(Constants::BUILDSTEPS_CLEAN); Q_ASSERT(buildSteps); GenericMakeStep *makeStep = new GenericMakeStep(buildSteps); buildSteps->insertStep(0, makeStep); makeStep->setBuildTarget(QLatin1String("all"), /* on = */ true); Q_ASSERT(cleanSteps); GenericMakeStep *cleanMakeStep = new GenericMakeStep(cleanSteps); cleanSteps->insertStep(0, cleanMakeStep); cleanMakeStep->setBuildTarget(QLatin1String("clean"), /* on = */ true); cleanMakeStep->setClean(true); return bc; }