shared & makefile