clang -extract-api should accept multiple headers and forward them to a
single CC1 instance. This change introduces a new ExtractAPIJobAction.
Currently API Extraction is done during the Precompile phase as this is
the current phase that matches the requirements the most. Adding a new
phase would need to change some logic in how phases are scheduled. If
the headers scheduled for API extraction are of different types the
driver emits a diagnostic.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Nice! Thank you for adding support for multiple headers. Is this a step towards the json input file list?
clang/include/clang/Basic/DiagnosticDriverKinds.td | ||
---|---|---|
467 | Could you please add a test for this? |
If people think it would be preferable to add a new phase and change phase scheduling a little I am happy to do that too!
My understanding was that for this iteration at least we were going with just feeding the headers directly to clang without an input file list. Maybe we should talk about this offline as I might be missing something.
Add test to check that command line with different header kinds gets diagnosed
appropriately.
In my initial proposed design, clang-extract-api takes in multiple headers directly as inputs. What would be the need to have a json file list?
It might be better if we need to pass in information about specific headers. We can discuss more offline but I don't think it is necessary for this iteration at least.
Could you please add a test for this?