General Makefile for C or C++