You may want to have a look at the new FetchContent <https://cmake.org/cmake/help/latest/module/FetchContent.html> module added in the 3.11 release (currently in release candidate stage). It already brings a production-tested dependency downloading system, but still leaves how to build those dependencies up to the project. It may form a good basis for the GSoC work and I can probably answer questions related to that module if needed.
Also consider other existing systems which may have already sufficiently solved this problem for you or at least be useful for showing how aspects of the work could be done. There are a number of popular systems worth checking out that are often mentioned on this list, including hunter, Spack, cget and others (I'll let the various stakeholders in the relevant projects chime in with their views rather than me potentially misrepresent some). On Wed, Mar 7, 2018 at 7:57 PM, Kolja Lampe <[email protected]> wrote: > Hey everybody, > > the Kodi Team is also offering a CMake related Project. > Please check it out: > > *Description:* Kodi has its own system for building the many libraries > Kodi depends on that supports most platforms (Linux, Android, OS X, iOS) > and cross-compiling called depends. At the moment, it is implemented with > autotools and hand-crafted Makefiles. This has lead to a lot of code > duplication, poor maintainability, and not being very user-friendly. Also, > it does not currently work on Windows. This task would be about replacing > the current system with a new implementation in CMake that has better > maintainability. > > *Expected outcome:* A CMake-based dependency build system that offers > roughly the same features as depends (i.e. all required libraries covered, > diverse platform support, crosscompilation). If the solution can also be > applied to Windows by e.g. adding minimal CMake files to replace some > UNIX-only build systems, that would be a big plus, but it is not necessary. > > *Skills preferred:* CMake, shell scripting, general familiarity with > UNIX/Linux > > *Possible mentors:* wsnipex > > *Difficulty:* Medium > > *Type:* Infrastructure/Automation > > https://kodi.wiki/view/Google_Summer_of_Code/2018#Replacing_ > depends_with_a_CMake-based_system > > Thanks! > > -- > > 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: > https://cmake.org/mailman/listinfo/cmake > > -- Craig Scott Melbourne, Australia https://crascit.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: https://cmake.org/mailman/listinfo/cmake
