It might be a good idea to be able to set up a dependencies between the components, so the build system is aware which parts should be build first, and the sequentially or in parallel.
With new configuration DSL introduced in
BIGTOP-1494 we can have a directional graph like this
which will allow to collect all dependencies information cross components, build the graph and test it for loops. This information can be used by the build system to order the build process: if hadoop-deb is invoked it will automatically tries to build zookeeper; for hbase it will invoke hadoop build first, etc.