Add embeds, file sets#116
Conversation
Add attributes to support the C/C++ `#embed` directive which was
recently standardized. Introduce a 'file set' object to the schema, with
corresponding `file_sets` attribute. These are being combined mostly for
the sake of the corresponding schema version bump, but 'embeds' are one
of the supported file set types.
For now, file sets are primarily informative, offering a way for certain
tools to match `#include`/`#embed` directives in consumer's sources to
specific components, which is useful for various sorts of correctness
validation ("linting").
b23f883 to
72b9a68
Compare
|
cc @dcbaker @grafikrobot @cfrankmiller
Personally I'm fine with filesets going in. No one had strong objections to purely informative file sets. To be clear, this is in support of tools like link-what-you-include, which want to be able to map specific headers to specific components. It's not a build-correctness feature at the moment, for emission or consumption. I'll hold off on approval in case anyone wants to raise strong objections. |
|
Yeah, reasoning behind I was also planning to give this a week or so to "marinate", so we're on the same page there. 🙂 For now, I'm hoping to avoid allowing per-configuration |
There was a problem hiding this comment.
This all looks good to me.
@nickelpro thanks for mentioning that filesets are for external tools ATM, I've had a string of conflicts with the call for the last couple of months and am a bit out of the loop.
Add attributes to support the C/C++
#embeddirective which was recently standardized. Introduce a 'file set' object to the schema, with correspondingfile_setsattribute. These are being combined mostly for the sake of the corresponding schema version bump, but 'embeds' are one of the supported file set types.For now, file sets are primarily informative, offering a way for certain tools to match
#include/#embeddirectives in consumer's sources to specific components, which is useful for various sorts of correctness validation ("linting").