In my opinion, we should list every source file to be
included to prevent
unexpected side effects.
Actually I think listing *every* source file is not really the best way,
because most of the build modules include all of their respective source
files, with the only exception being 3rd party modules.
Unbuildable and unnecessary .c files floating in the code base are those
unexpected "side effects" which need to be cleared/fixed.
WBR,
Aleksey Bragin.