[all-commits] [llvm/llvm-project] ca2ab7: [clang] Canonicalize absolute paths in dependency ...

xtex via All-commits all-commits at lists.llvm.org
Wed Jan 1 00:29:25 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ca2ab74838c41a4146835b5bcc91ce4732273f7d
      https://github.com/llvm/llvm-project/commit/ca2ab74838c41a4146835b5bcc91ce4732273f7d
  Author: xtex <xtex at envs.net>
  Date:   2025-01-01 (Wed, 01 Jan 2025)

  Changed paths:
    M clang/include/clang/Frontend/Utils.h
    M clang/lib/Frontend/DependencyFile.cpp
    M clang/test/Frontend/dependency-gen-symlink.c
    M clang/test/Frontend/dependency-gen-windows-duplicates.c
    M clang/test/VFS/external-names.c

  Log Message:
  -----------
  [clang] Canonicalize absolute paths in dependency file (#117458)

This fixes #117438.

If paths in dependency file are not absoulte, make (or ninja) will
canonicalize them.
While their canonicalization does not involves symbolic links expansion
(for IO performance concerns), leaving a non-absolute path in dependency
file may lead to unexpected canonicalization.
For example, '/a/../b', where '/a' is a symlink to '/c/d', it should be
'/c/b' but make (and ninja) canonicalizes it as '/b', and fails for file
not found.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list