• Frank Benkstein's avatar
    configure_file: canonicalize input and output path in dependencies · 6199637e
    Frank Benkstein authored
    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
    6199637e