In a "fresh build" (e.g. after a make clean) we create the .d and the
.o file in one go to speed up this common case. However if one runs
"make clean" followed by e.g. "make para_audioc", this will create
*all* object and dependency files, not just the ones needed to build
para_audioc. This behaviour is unfortunate because most dependencies
are irrelevant for a single target, and even the few which do matter
are ignored as well in this case because the object file does not
exist and needs to be recreated anyway,
Work around this shortcoming by shuffling the commands of the four
rules a little so that the clean target only removes object files
but keeps the dependency files.
Also remove the calls to SAY because with the rm commands spellt out
it is clear what is being removed.