a small build system similar to make