summaryrefslogtreecommitdiffstats
path: root/Source/cmFileCommand.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2020-06-29 13:18:06 (GMT)
committerBrad King <brad.king@kitware.com>2020-06-29 13:20:42 (GMT)
commite5f5eeca2f632608cf4709cffef9d82f6f5be6f3 (patch)
tree17a6f581732c79732c82a1b682fb2e34443e692f /Source/cmFileCommand.cxx
parente66fe75792a2fbe9f3ffe237c748008906ae7116 (diff)
downloadCMake-e5f5eeca2f632608cf4709cffef9d82f6f5be6f3.zip
CMake-e5f5eeca2f632608cf4709cffef9d82f6f5be6f3.tar.gz
CMake-e5f5eeca2f632608cf4709cffef9d82f6f5be6f3.tar.bz2
file: Fix CONFIGURE output relative path
In commit a6fee09484 (file: Add CONFIGURE subcommand, 2020-03-06, v3.18.0-rc1~584^2) we accidentally treated relative path outputs with respect to the current working directory. Treat them with respect to the current binary directory instead. Fixes: #20885
Diffstat (limited to 'Source/cmFileCommand.cxx')
-rw-r--r--Source/cmFileCommand.cxx3
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/cmFileCommand.cxx b/Source/cmFileCommand.cxx
index 268c5d1..e218a07 100644
--- a/Source/cmFileCommand.cxx
+++ b/Source/cmFileCommand.cxx
@@ -2862,7 +2862,8 @@ bool HandleConfigureCommand(std::vector<std::string> const& args,
// Check for generator expressions
const std::string input = args[4];
- std::string outputFile = args[2];
+ std::string outputFile = cmSystemTools::CollapseFullPath(
+ args[2], status.GetMakefile().GetCurrentBinaryDirectory());
std::string::size_type pos = input.find_first_of("<>");
if (pos != std::string::npos) {