On 04/02/2015 10:29 AM, Anton Makeev wrote: > I see, but how will having include_directories help ‘Add include > directory’-like actions? > I mean, simply having this list (without additional info like backtraces) > doesn’t seem to help much.
We'll have to see :). >> So, in the end, we probably need tooling to be able to get the information >> in both forms. Ie, as an array of directories, and as a string of compiler >> command line options. >> >> We already have the latter in the form of compile-commands.json. One of the >> reasons I wonder if you are using that already is to know whether >> >> 1) That is already a good enough solution >> or >> 2) The new metadata file should contain similar information >> >> I'm wondering if we can learn anything from your experience with the >> existing file. > I’m afraid we don’t have much to contribute here, since we don’t use this > file at the moment. > After a brief investigation, it seems to have the necessary command lines we > expect in the form > that can be easily parsed (apart from -o <path> -c <path> that will need to > be cut out, but it’s not a big deal). I'm sure we can generate content without those lines if we refactor the Module files a bit. > > Just to make sure, you mentioned that this file should be deprecated with > this new metadata.json, > is that correct? I'm not sure I mentioned that, just that it's an externally defined format and we didn't want to try to extend it, but instead define a different format. The new format will hopefully make it unnecessary for IDEs to parse the compile-commands.json. However, there are other users of the compile-commands.json, so it will remain and the feature for generation of it will not be deprecated. >> Does that make sense? That means you would read the "all_compile_flags" for >> the specific source file if it is present, and use the "all_compile_flags" >> for the target otherwise (which you already have cached). > That sounds like a brilliant idea. This way we’ll have minimum duplication > and minimum logic required on > the IDE-side. > Great. Good to know this will work for you. I'll integrate the idea into the next design iteration. 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