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

Reply via email to