* xxx_DEST: redefine output for artifact (program, lib)
* MAKEFOO_NAMED_(OBJ|BUILD)DIR: to separate build/obj dirs for components
* object files depend on generated files
* TODO added
* all, clean, build are now just dependants of makefoo.(all|clean|build)