split makefile into fragments; should still work; need improvement