Ninja: remove implicit dependency on custom command outputs

Revert aa2e1e9caef92b10083a03c2ded5c937703e69b8
With this commit all files are rebuild when only one moc file has changed.

BUG 0013874
Merge topic 'ninja-custom-command-implicit' into next

bbea30e Ninja: remove implicit dependency on custom command outputs
Ninja: use absolute paths for sources and includes

Thanks to Mika Fischer:

Using relative paths makes it unnecessarily difficult for tools parsing
the generated errors to find the referenced file. In particular, jumping
to error locations in vim only works when the current directory is the
root of the build directory, otherwise the relative paths in the error
messages point to the wrong location.

The Unix Makefile generator uses absolute filenames for source files and
thus does not suffer from this.

BUG 0013894
Merge topic 'ninja-absolute-paths' into next

df7f179 Ninja: use absolute paths for sources and includes
Revert "Ninja: use absolute paths for sources and includes"

This reverts commit df7f1790b7cf69def45f55cb03ce0f9cef1eddb5.

It shows that absolute paths breaks dependency tracing and adds
lot of emtpy build commands.
Merge topic 'ninja-absolute-paths' into next

3030142 Revert "Ninja: use absolute paths for sources and includes"