> How easy is it to ship binaries which work on any platform without also > shipping all of the necessary platform backends as well?
So on Windows and Mac, there is only one backend, the native one. And so there is nothing to manage. On the remaining Unix's with IUP you pick one when you build it. Usually GTK3 or GTK2. As far as I know, the GTK ABI itself is stable (everything is C which also helps), so on something like Linux, the only issue is the usual how do you deal glibc and your own dependencies. My typical approach is build on old distro like Ubuntu 12.04LTS, though I've been moving to Steam-Runtime since they actually care about ABI stability. > There's already a JSON library in CMake: jsoncpp. Even better. > The idea for process creation is to migrate to libuv once all of the > dependencies are supported. Looking at the implementation here it > is…naïve at best. It uses `sh -c` instead of `exec` to do its work which > means that CMake would need to do manual pipe management anyways. As I've said, there are tons of different ones. And I've even written my own. Wrapping Unix fork/exec and Windows CreateProcess is a known quantity so I'm just suggesting it doesn't need a massive library dependency to accomplish. -Eric -- 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