Fool-proofing Makefiles