Stephen Kelly wrote: > The aim is to generate a structured file containing metadata relating the > buildsystem.
I've been quiet on this thread for a while, so I think it is time for an update. I became more ambitious in mid March and started prototyping a more-complete design for CMake IDE integration. Instead of teaching CMake to generate a metadata file, I want to add a server mode to CMake, so that IDEs can run the server in the build directory and query it for buildsystem metadata, code completion, etc. It can be implemented efficiently and it doesn't have to re-configure the build from the beginning each time. A lot of things become possible with such a design, but I'm being economic with details because I don't want to make promises I don't deliver in the end, even though I have high confidence that I actually can :). The good news is that I have done some proof of concept work on all aspects of this, but I don't yet have one branch which contains all of the individual proof of concepts combined. Doing this properly requires refactoring CMake quite a bit, which I've already been doing for a while to create a cmState class. The bad news is that because this is more ambitious, it will take more time and will not be part of the CMake 3.3 release early this summer. I do believe it can be implemented for the following release 3 months later though. Here's some prior art in other tools: http://thread.gmane.org/gmane.comp.compilers.clang.devel/21780 https://sourceware.org/gdb/onlinedocs/gdb/GDB_002fMI.html http://thread.gmane.org/gmane.comp.lib.boost.build/26905 We can use JSON as the wire protocol, and we can talk about exactly what the protocol will be once the refactoring of CMake is done (that will take some more weeks). I'll post a more complete design proposal and my prototype at that point too. Thanks, Steve. -- 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