For a first pass it might be best to just follow what is in cmIDEFlagTable as this would largely be unintrusive and just get the architecture there.
That would look like { "library":[ { "name":"ErrorReporting", "command":"ERRORREPORT:PROMPT", "comment":"PromptImmediately", "value":"PromptImmediately" }, { "name":"ErrorReporting", "command":"ERRORREPORT:QUEUE", "comment":"Queue For Next Login", "value":"QueueForNextLogin" } .. ] } Where flags would be optional. Another option would actually group the values together. { "library":{ "ErrorReporting":{ "values":[ { "command":"ERRORREPORT:PROMPT", "comment":"PromptImmediately", "value":"PromptImmediately" }, { "command":"ERRORREPORT:QUEUE", "comment":"Queue For Next Login", "value":"QueueForNextLogin" } ] } } } Again flags would be optional. If there are not multiple values then it would look something like this. { "library":{ "AdditionalLibraryDirectories":{ "command":"LIBPATH:", "comment":"Additional Library Directories", "value":"", "flags":[ "UserValue", "SemicolonAppendable" ] } } } You could also do instead of flags a type. So "type": "StringList" which would then map the flags properly. I'm up for whatever you think would be best. The first is certainly the most verbose but has a direct mapping. The rest end up requiring more of a transformation to get it into the current format. -----Original Message----- From: Brad King [mailto:brad.k...@kitware.com] Sent: Wednesday, August 24, 2016 11:31 AM To: Olmstead, Don <don.olmst...@sony.com> Cc: cmake-developers@cmake.org Subject: Re: [cmake-developers] VS Toolchain Support On 08/24/2016 02:25 PM, Olmstead, Don wrote: > I would be interested in the JSON format. Do you have any opinions on > what that would look like or would you just like to see some > implementation before proceding? Please propose a sample format. Just take a few entries from one of the existing flag tables and manually convert it to some kind of JSON array of objects to post here for discussion. Thanks, -Brad -- 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