CMake: Make configitem optionally use a macroexpander instead of a kit

Change-Id: I218979aff626630abd3b7113596ac5c731309432
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
Tobias Hunger
2016-10-17 14:25:19 +02:00
parent a2871e5513
commit 1f1ee1ec2b
2 changed files with 8 additions and 1 deletions

View File

@@ -136,7 +136,12 @@ QStringList CMakeConfigItem::cmakeSplitValue(const QString &in, bool keepEmpty)
QString CMakeConfigItem::expandedValue(const ProjectExplorer::Kit *k) const
{
return k->macroExpander()->expand(QString::fromUtf8(value));
return expandedValue(k->macroExpander());
}
QString CMakeConfigItem::expandedValue(const Utils::MacroExpander *expander) const
{
return expander->expand(QString::fromUtf8(value));
}
std::function<bool (const CMakeConfigItem &a, const CMakeConfigItem &b)> CMakeConfigItem::sortOperator()

View File

@@ -31,6 +31,7 @@
#include <functional>
namespace ProjectExplorer { class Kit; }
namespace Utils { class MacroExpander; }
namespace CMakeProjectManager {
@@ -49,6 +50,7 @@ public:
bool isNull() const { return key.isEmpty(); }
QString expandedValue(const ProjectExplorer::Kit *k) const;
QString expandedValue(const Utils::MacroExpander *expander) const;
static std::function<bool(const CMakeConfigItem &a, const CMakeConfigItem &b)> sortOperator();
static CMakeConfigItem fromString(const QString &s);