summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/configure_file
diff options
context:
space:
mode:
authorFrank Benkstein <frank@benkstein.net>2018-11-09 18:14:58 (GMT)
committerBrad King <brad.king@kitware.com>2018-11-13 20:01:17 (GMT)
commit6199637e9540627b03d9018ff53a14f005274607 (patch)
tree1f4fa728d2a86b0617bb6894bd69d794c075cecd /Tests/RunCMake/configure_file
parent48bc74710d4ddcf62e3dcf69e3400e4060a2bdc1 (diff)
downloadCMake-6199637e9540627b03d9018ff53a14f005274607.zip
CMake-6199637e9540627b03d9018ff53a14f005274607.tar.gz
CMake-6199637e9540627b03d9018ff53a14f005274607.tar.bz2
configure_file: canonicalize input and output path in dependencies
Represent the input file path internally in canonical form. Otherwise multiple `configure_file` calls that share the same input file but specify it relative to different directories (e.g. via `../`) result in multiple copies of the dependency on the rule to re-run CMake. This causes the Ninja generator to emit duplicate phony build statements for these dependencies, which generates an error with `-w dupbuild=err`, which will be default in Ninja 1.9. Also canonicalize the output path for consistency. Add a test case. Fixes: #18584
Diffstat (limited to 'Tests/RunCMake/configure_file')
-rw-r--r--Tests/RunCMake/configure_file/DirInput-stderr.txt2
1 files changed, 1 insertions, 1 deletions
diff --git a/Tests/RunCMake/configure_file/DirInput-stderr.txt b/Tests/RunCMake/configure_file/DirInput-stderr.txt
index 2e0cd14..165ad80 100644
--- a/Tests/RunCMake/configure_file/DirInput-stderr.txt
+++ b/Tests/RunCMake/configure_file/DirInput-stderr.txt
@@ -1,7 +1,7 @@
CMake Error at DirInput.cmake:[0-9]+ \(configure_file\):
configure_file input location
- .*/Tests/RunCMake/configure_file/.
+ .*/Tests/RunCMake/configure_file
is a directory but a file was expected.
Call Stack \(most recent call first\):