summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel Rosdahl <joel@rosdahl.net>2022-05-08 16:31:37 +0200
committerJoel Rosdahl <joel@rosdahl.net>2022-05-08 16:31:37 +0200
commite15af963082f39a0595a7d623da2316b2fe3b282 (patch)
tree8fc3f7befbcbe4e1e2865afdeb3ee3816ef02a6e
parent02268786a7a3897923bf4d899c993ce0f197a8c1 (diff)
downloadccache-e15af963082f39a0595a7d623da2316b2fe3b282.tar.gz
docs: Add warning about base_dir
See #1042.
-rw-r--r--doc/MANUAL.adoc6
1 files changed, 6 insertions, 0 deletions
diff --git a/doc/MANUAL.adoc b/doc/MANUAL.adoc
index 601e6c6e..99ffa6b9 100644
--- a/doc/MANUAL.adoc
+++ b/doc/MANUAL.adoc
@@ -411,6 +411,12 @@ differ. With *base_dir* set to `/` there will be a cache miss since the
relative path to `/usr/include/example` will be different. With *base_dir* set
to `/home/bob/stuff/project1` there will a cache miss since the path to
project2 will be a different absolute path.
++
+WARNING: Rewriting absolute paths to relative is kind of a brittle hack. It
+works OK in many cases, but there might be cases where things break. One known
+issue is that absolute paths are not reproduced in dependency files, which can
+mess up dependency detection in tools like Make and Ninja. If possible, use
+relative paths in the first place instead instead of using *base_dir*.
[#config_cache_dir]
*cache_dir* (*CCACHE_DIR*)::