Enhance Makefile as Yamakaky suggested

Enhance Makefile to use implicit rule and extends CFLAGS instead of setting it if it doesn't exists.