[PATCH] D79400: [CMAKE] Fix build failure when source directory is read only

Scott Linder via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue May 5 14:03:50 PDT 2020


scott.linder added a comment.

Can you provide more context in the diff? Looking at the current `master` locally it seems like this patch changes the behavior of the `llvm_vcsrevision_h` target when `logs/HEAD` isn't found, such that it only depends on the generation script. I.e. if you configure CMake without the `HEAD` file present, and then you do something which changes the working directory and creates `HEAD` the target will not be out of date and won't be rebuilt. Before this patch it would have noticed the change to `HEAD` and forced regenerating the version header.

I don't know how much this matters? In the case where the filesystem is read-only from CMake's perspective would it make more sense to always regenerate the header instead, or is the assumption that nobody else is modifying it either?

Also for the case where the filesystem is not read-only do we want to retain the old behavior? I.e. could we try to write the file and if it fails just proceed rather than `FATAL_ERROR`? I don't know if this is possible with CMake's `file()`?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D79400/new/

https://reviews.llvm.org/D79400





More information about the cfe-commits mailing list