Revision 666ad1df2dc5b181a40d831c125529fe7e9bf0b4 authored by Brad King on 24 February 2017, 15:07:18 UTC, committed by Brad King on 24 February 2017, 15:15:50 UTC
This reverts commit v3.7.0-rc1~275^2 (Ninja: Use full path for all
source files, 2016-08-05).  Unfortunately using absolute paths can
cause incorrect rebuilds due to ninja limitations.  The ninja
manual [1] explains:

> ... using absolute paths, your depfile may result in a mixture of
> relative and absolute paths. Paths used by other build rules need
> to match exactly.

Passing an absolute path to a source file to the compiler while using a
relative path in the ninja build manifest can cause such mixture and
lead to incorrect rebuilds.  Simply revert the change for now.

Note that there was a follow-up to the original change in commit
v3.7.0-rc2~10^2 (Ninja: Fix RC language depfile generation with
cmcldeps, 2016-10-13).  We don't need to revert that because that
change made the relevant code cleverly adapt to whatever variable
we use to reference the source file.

[1] https://ninja-build.org/manual.html#_deps

Fixes: #16675
Issue: #13894
1 parent efac65d
History
File Mode Size
CMakeLists.txt -rw-r--r-- 5.0 KB
foo.f -rw-r--r-- 182 bytes
hello.f -rw-r--r-- 44 bytes
mainc.c -rw-r--r-- 53 bytes
maincxx.c -rw-r--r-- 87 bytes
myc.c -rw-r--r-- 168 bytes
mycxx.cxx -rw-r--r-- 91 bytes
mysub.f -rw-r--r-- 158 bytes
testf.f -rw-r--r-- 51 bytes
world.f -rw-r--r-- 45 bytes
world_gnu.def -rw-r--r-- 23 bytes
world_icl.def -rw-r--r-- 22 bytes

back to top