I think asio being on track to be included in the standard library is a strong point in its favor, but in my opinion there are two strong reasons to prefer libuv:
- libuv is entirely a C library. I don't think this is a hard requirement but most of kwsys is C and I suspect there is a reason for this; although maybe it's entirely historical. - asio is header only; and a lot of headers at that. With essentially identical functionality, I don't think it makes sense to take the build time hit; which as far as I can tell is substantial. If/when ASIO gets into the standard, I think it'd make sense to re-evaluate that, but we are a long time away from that, and even when it gets into the standard it'll take a maddeningly long time for that standard to be properly supported for all the supported platforms for cmake. - Justin On Thu, Aug 17, 2017 at 6:46 AM, Ben Boeckel <ben.boec...@kitware.com> wrote: > On Wed, Aug 16, 2017 at 23:02:52 +0200, Jean-Michaël Celerier wrote: > > @Ben Boeckel : > > > The idea for process creation is to migrate to libuv once all of the > > dependencies are supported. > > Quick question : why not asio instead ? it's bound to end up in the > > standard library at some point (e.g. > > https://github.com/chriskohlhoff/networking-ts-impl) and already has an > > event loop. > > CMake uses curl for networking (all sync), but libuv was added for the > server mode's event loop. It also comes with process execution, some > filesystem helpers and other things that kwsys does today that we can > drop once we move to it. AFAICT, asio looks like it's mostly a > networking library and doesn't overlap well with libuv and CMake's > requirements. > > > Or even Qt's event loop since it's already here. > > Qt isn't required by core CMake, just cmake-gui. > > --Ben > -- > > 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 >
-- 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