diff options
author | Eike Ziller <eike.ziller@qt.io> | 2020-06-25 15:02:05 +0200 |
---|---|---|
committer | Eike Ziller <eike.ziller@qt.io> | 2020-06-30 10:33:31 +0000 |
commit | b684d4c827f3f2904200ea0e8e6a64c47d574983 (patch) | |
tree | e59f313426969131218a414977b5915301e3abb1 | |
parent | 2c2cd08761372b212e14de7e2b46590d658d13bd (diff) |
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 <tobias.hunger@qt.io>
-rw-r--r-- | src/plugins/cmakeprojectmanager/builddirparameters.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
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); |