On 11/04/17 22:27, Roger Leigh wrote:
[..] If your projects are buildable in parallel with the third-party sources, you can add each third-party source, plus each first-party project, as a separate external project and then build the entire collection in parallel.
We effectively have this arrangement in place already, except it's of our own creation instead of being CMake rules. So yes, this approach works in principle.
The only thing that's changed with the superbuild vs a completely self-contained project is the location of the higher-level organisation. With the superbuild, that is moved out into a separate project which coordinates the building of everything with appropriate inter-project dependencies.
What's also different in the level to which the machine can be loaded. If you were to look at our graph of dependencies, it's not a very nicely balanced one and some of the third party packages don't compile reliably in parallel. So in order to get the best and most even load on our build servers, it makes sense to have a self contained CMake so that we have target level dependencies, as opposed to project level. I suppose there's not many generic solutions to this as without having a "super build" it's a bit of a chicken-egg problem. Thanks, W This transmission contains information that may be confidential and contain personal views which are not necessarily those of YouView TV Ltd. YouView TV Ltd (Co No:7308805) is a limited liability company registered in England and Wales with its registered address at YouView TV Ltd, 3rd Floor, 10 Lower Thames Street, London, EC3R 6YT. For details see our web site at http://www.youview.com -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake-developers