diff --git a/src/plugins/projectexplorer/buildsettingspropertiespage.cpp b/src/plugins/projectexplorer/buildsettingspropertiespage.cpp
index 3b67ab18856b4df52fc57fe6c3a724132e090d4b..e319388f8bfb795fcc43323093b6420725a7e633 100644
--- a/src/plugins/projectexplorer/buildsettingspropertiespage.cpp
+++ b/src/plugins/projectexplorer/buildsettingspropertiespage.cpp
@@ -35,6 +35,7 @@
 
 #include <coreplugin/coreconstants.h>
 #include <extensionsystem/pluginmanager.h>
+#include <utils/qtcassert.h>
 
 #include <QtCore/QDebug>
 #include <QtCore/QPair>
@@ -151,23 +152,30 @@ BuildSettingsWidget::BuildSettingsWidget(Project *project)
 {
     QVBoxLayout *vbox = new QVBoxLayout(this);
     vbox->setContentsMargins(0, -1, 0, -1);
-    QHBoxLayout *hbox = new QHBoxLayout();
-    hbox->addWidget(new QLabel(tr("Edit Build Configuration:"), this));
-    m_buildConfigurationComboBox = new QComboBox(this);
-    m_buildConfigurationComboBox->setSizeAdjustPolicy(QComboBox::AdjustToContents);
-    hbox->addWidget(m_buildConfigurationComboBox);
-
-    m_addButton = new QPushButton(this);
-    m_addButton->setText(tr("Add"));
-    m_addButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
-    hbox->addWidget(m_addButton);
-
-    m_removeButton = new QPushButton(this);
-    m_removeButton->setText(tr("Remove"));
-    m_removeButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
-    hbox->addWidget(m_removeButton);
-    hbox->addSpacerItem(new QSpacerItem(0, 0, QSizePolicy::Expanding, QSizePolicy::Fixed));
-    vbox->addLayout(hbox);
+
+    { // Edit Build Configuration row
+        QHBoxLayout *hbox = new QHBoxLayout();
+        hbox->addWidget(new QLabel(tr("Edit Build Configuration:"), this));
+        m_buildConfigurationComboBox = new QComboBox(this);
+        m_buildConfigurationComboBox->setSizeAdjustPolicy(QComboBox::AdjustToContents);
+        hbox->addWidget(m_buildConfigurationComboBox);
+
+        m_addButton = new QPushButton(this);
+        m_addButton->setText(tr("Add"));
+        m_addButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
+        hbox->addWidget(m_addButton);
+
+        m_removeButton = new QPushButton(this);
+        m_removeButton->setText(tr("Remove"));
+        m_removeButton->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
+        hbox->addWidget(m_removeButton);
+        hbox->addSpacerItem(new QSpacerItem(0, 0, QSizePolicy::Expanding, QSizePolicy::Fixed));
+        vbox->addLayout(hbox);
+    }
+
+    m_makeActiveLabel = new QLabel(this);
+    m_makeActiveLabel->setVisible(false);
+    vbox->addWidget(m_makeActiveLabel);
 
     m_subWidgets = new BuildSettingsSubWidgets(this);
     vbox->addWidget(m_subWidgets);
@@ -178,6 +186,9 @@ BuildSettingsWidget::BuildSettingsWidget(Project *project)
 
     m_buildConfiguration = m_project->activeBuildConfiguration()->name();
 
+    connect(m_makeActiveLabel, SIGNAL(linkActivated(QString)),
+            this, SLOT(makeActive()));
+
     connect(m_buildConfigurationComboBox, SIGNAL(currentIndexChanged(int)),
             this, SLOT(currentIndexChanged(int)));
 
@@ -186,12 +197,21 @@ BuildSettingsWidget::BuildSettingsWidget(Project *project)
 
     connect(m_project, SIGNAL(buildConfigurationDisplayNameChanged(const QString &)),
             this, SLOT(buildConfigurationDisplayNameChanged(const QString &)));
+
+    connect(m_project, SIGNAL(activeBuildConfigurationChanged()),
+            this, SLOT(checkMakeActiveLabel()));
+
     if (m_project->buildConfigurationFactory())
         connect(m_project->buildConfigurationFactory(), SIGNAL(availableCreationTypesChanged()), SLOT(updateAddButtonMenu()));
 
     updateBuildSettings();
 }
 
+void BuildSettingsWidget::makeActive()
+{
+    m_project->setActiveBuildConfiguration(m_project->buildConfiguration(m_buildConfiguration));
+}
+
 void BuildSettingsWidget::updateAddButtonMenu()
 {
     m_addButtonMenu->clear();
@@ -273,6 +293,18 @@ void BuildSettingsWidget::activeBuildConfigurationChanged()
             buildStepWidget->init(m_buildConfiguration);
         }
     }
+    checkMakeActiveLabel();
+}
+
+void BuildSettingsWidget::checkMakeActiveLabel()
+{
+    m_makeActiveLabel->setVisible(false);
+    if (!m_project->activeBuildConfiguration() || m_project->activeBuildConfiguration()->name() != m_buildConfiguration) {
+        BuildConfiguration *bc = m_project->buildConfiguration(m_buildConfiguration);
+        QTC_ASSERT(bc, return);
+        m_makeActiveLabel->setText(tr("<a href=\"#\">Make %1 active.</a>").arg(bc->displayName()));
+        m_makeActiveLabel->setVisible(true);
+    }
 }
 
 void BuildSettingsWidget::createConfiguration()
diff --git a/src/plugins/projectexplorer/buildsettingspropertiespage.h b/src/plugins/projectexplorer/buildsettingspropertiespage.h
index f80b6b73265db283dd2eb4da507769e8914d7674..583835ecfc8b7e71eb5e5c5f346e5a78561be545 100644
--- a/src/plugins/projectexplorer/buildsettingspropertiespage.h
+++ b/src/plugins/projectexplorer/buildsettingspropertiespage.h
@@ -101,6 +101,8 @@ private slots:
     void cloneConfiguration();
     void deleteConfiguration();
     void updateAddButtonMenu();
+    void checkMakeActiveLabel();
+    void makeActive();
 
 private:
     void cloneConfiguration(const QString &toClone);
@@ -113,6 +115,7 @@ private:
     BuildSettingsSubWidgets *m_subWidgets;
     QString m_buildConfiguration;
     QMenu *m_addButtonMenu;
+    QLabel *m_makeActiveLabel;
 };
 
 } // namespace Internal