make: support for dependencies and build locking