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
Modules
CMakeLists.txt -rw-r--r-- 131 bytes
DetermineFail-result.txt -rw-r--r-- 2 bytes
DetermineFail-stderr.txt -rw-r--r-- 235 bytes
DetermineFail.cmake -rw-r--r-- 89 bytes
LINK_LANGUAGE-genex-result.txt -rw-r--r-- 2 bytes
LINK_LANGUAGE-genex-stderr.txt -rw-r--r-- 338 bytes
LINK_LANGUAGE-genex.cmake -rw-r--r-- 159 bytes
NoLangSHARED-result.txt -rw-r--r-- 2 bytes
NoLangSHARED-stderr.txt -rw-r--r-- 72 bytes
NoLangSHARED.cmake -rw-r--r-- 38 bytes
RunCMakeTest.cmake -rw-r--r-- 191 bytes
empty.cpp -rw-r--r-- 77 bytes
foo.nolang -rw-r--r-- 0 bytes
link-libraries-TARGET_FILE-genex-ok-result.txt -rw-r--r-- 2 bytes
link-libraries-TARGET_FILE-genex-ok.cmake -rw-r--r-- 165 bytes
link-libraries-TARGET_FILE-genex-result.txt -rw-r--r-- 2 bytes
link-libraries-TARGET_FILE-genex-stderr.txt -rw-r--r-- 328 bytes
link-libraries-TARGET_FILE-genex.cmake -rw-r--r-- 143 bytes

back to top