From b684d4c827f3f2904200ea0e8e6a64c47d574983 Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Thu, 25 Jun 2020 15:02:05 +0200 Subject: CMake: Fix handling of setting for Ninja path When Ninja is installed via the installer, it writes the full path to the Ninja binary into the settings. Change-Id: I95a19c8c1afbf980c899fb1eeb8656e7e86ad4a2 Reviewed-by: Tobias Hunger --- src/plugins/cmakeprojectmanager/builddirparameters.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/plugins/cmakeprojectmanager') diff --git a/src/plugins/cmakeprojectmanager/builddirparameters.cpp b/src/plugins/cmakeprojectmanager/builddirparameters.cpp index 1c71396c76..942485cad0 100644 --- a/src/plugins/cmakeprojectmanager/builddirparameters.cpp +++ b/src/plugins/cmakeprojectmanager/builddirparameters.cpp @@ -64,8 +64,11 @@ BuildDirParameters::BuildDirParameters(CMakeBuildConfiguration *bc) environment.set("ICECC", "no"); CMakeSpecificSettings *settings = CMakeProjectPlugin::projectTypeSpecificSettings(); - if (!settings->ninjaPath().isEmpty()) - environment.appendOrSetPath(settings->ninjaPath().toString()); + if (!settings->ninjaPath().isEmpty()) { + const Utils::FilePath setting = settings->ninjaPath(); + const Utils::FilePath path = setting.toFileInfo().isFile() ? setting.parentDir() : setting; + environment.appendOrSetPath(path.toString()); + } cmakeToolId = CMakeKitAspect::cmakeToolId(k); -- cgit v1.2.3