diff options
author | Brad King <brad.king@kitware.com> | 2021-07-19 16:58:49 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2021-07-19 16:59:01 (GMT) |
commit | 4ff651eb52215ca0e1ffe5e5356b56b57913fee0 (patch) | |
tree | 93ec15f0f95d41a8122d56b9a85ffd6ff91f6fde /Source | |
parent | 095f49ec36b49a695344b2e7c8f610b1c326cdfb (diff) | |
parent | aa874dc6090cf6b6c9621572419738d105ff4ba3 (diff) | |
download | CMake-4ff651eb52215ca0e1ffe5e5356b56b57913fee0.zip CMake-4ff651eb52215ca0e1ffe5e5356b56b57913fee0.tar.gz CMake-4ff651eb52215ca0e1ffe5e5356b56b57913fee0.tar.bz2 |
Merge topic 'cmake-presets-no-binary-dir-no-s' into release-3.21
aa874dc609 CMakePresets.json: Fix expansion issue with empty binaryDir
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6358
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmCMakePresetsFile.cxx | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/Source/cmCMakePresetsFile.cxx b/Source/cmCMakePresetsFile.cxx index 2f9972c..fd578fa 100644 --- a/Source/cmCMakePresetsFile.cxx +++ b/Source/cmCMakePresetsFile.cxx @@ -197,11 +197,13 @@ bool ExpandMacros(const cmCMakePresetsFile& file, std::string binaryDir = preset.BinaryDir; CHECK_EXPAND(out, binaryDir, macroExpanders, file.GetVersion(preset)) - if (!cmSystemTools::FileIsFullPath(binaryDir)) { - binaryDir = cmStrCat(file.SourceDir, '/', binaryDir); + if (!binaryDir.empty()) { + if (!cmSystemTools::FileIsFullPath(binaryDir)) { + binaryDir = cmStrCat(file.SourceDir, '/', binaryDir); + } + out->BinaryDir = cmSystemTools::CollapseFullPath(binaryDir); + cmSystemTools::ConvertToUnixSlashes(out->BinaryDir); } - out->BinaryDir = cmSystemTools::CollapseFullPath(binaryDir); - cmSystemTools::ConvertToUnixSlashes(out->BinaryDir); if (!preset.InstallDir.empty()) { std::string installDir = preset.InstallDir; |