From 79c710463e9249762dcdf3d1badcfaa1beecd132 Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Mon, 23 Nov 2015 12:45:47 +0100 Subject: [PATCH] CMakeKitInformation: Expose cmake path to MacroExpander Task-number: QTCREATORBUG-15367 Change-Id: Ia685b738c242b77eef2a96932dee1f7ebfe1787e Reviewed-by: Tobias Hunger --- src/plugins/cmakeprojectmanager/cmakekitinformation.cpp | 9 +++++++++ src/plugins/cmakeprojectmanager/cmakekitinformation.h | 2 ++ 2 files changed, 11 insertions(+) diff --git a/src/plugins/cmakeprojectmanager/cmakekitinformation.cpp b/src/plugins/cmakeprojectmanager/cmakekitinformation.cpp index 7ae8379c4fd..baada0b59a3 100644 --- a/src/plugins/cmakeprojectmanager/cmakekitinformation.cpp +++ b/src/plugins/cmakeprojectmanager/cmakekitinformation.cpp @@ -126,6 +126,15 @@ KitConfigWidget *CMakeKitInformation::createConfigWidget(Kit *k) const return new Internal::CMakeKitConfigWidget(k, this); } +void CMakeKitInformation::addToMacroExpander(Kit *k, Utils::MacroExpander *expander) const +{ + expander->registerFileVariables("CMake:Executable", tr("Path to the cmake executable"), + [k]() -> QString { + CMakeTool *tool = CMakeKitInformation::cmakeTool(k); + return tool ? tool->cmakeExecutable().toString() : QString(); + }); +} + // -------------------------------------------------------------------- // CMakeGeneratorKitInformation: // -------------------------------------------------------------------- diff --git a/src/plugins/cmakeprojectmanager/cmakekitinformation.h b/src/plugins/cmakeprojectmanager/cmakekitinformation.h index 9a008d134f5..591e915fe37 100644 --- a/src/plugins/cmakeprojectmanager/cmakekitinformation.h +++ b/src/plugins/cmakeprojectmanager/cmakekitinformation.h @@ -51,6 +51,8 @@ public: void fix(ProjectExplorer::Kit *k) override; ItemList toUserOutput(const ProjectExplorer::Kit *k) const override; ProjectExplorer::KitConfigWidget *createConfigWidget(ProjectExplorer::Kit *k) const override; + + void addToMacroExpander(ProjectExplorer::Kit *k, Utils::MacroExpander *expander) const override; }; class CMAKE_EXPORT CMakeGeneratorKitInformation : public ProjectExplorer::KitInformation