fixed: linux build
commit
afc1bf87b changed the behavior so that build fails if a .d file
cannot be found. Rather than simply reverting to the old behavior (using
cp ; rather than cp &&), fix the problem instead.
gcc by default creates .d files where the Makefile was invoked, rather
than in the path of the source/object file. We can use the -MF param to
specify that it needs to go in the same path as the object.
As a side effect this also cleans up a great deal of console spew
(missing .d files) during build.