Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FR: Add ability to generate clang indexstore files for CC builds #15983

Open
brentleyjones opened this issue Jul 26, 2022 · 4 comments · May be fixed by #17984
Open

FR: Add ability to generate clang indexstore files for CC builds #15983

brentleyjones opened this issue Jul 26, 2022 · 4 comments · May be fixed by #17984
Labels
not stale Issues or PRs that are inactive but not considered stale P4 This is either out of scope or we don't have bandwidth to review a PR. (No assignee) team-Rules-CPP Issues for C++ rules type: feature request

Comments

@brentleyjones
Copy link
Contributor

Description of the feature request:

Allow (probably via a feature) the ability for C/C++/Obj-C files to generate clang indexstore files (-index-store-path) for each source file. This is similar to the #15191 request.

What underlying problem are you trying to solve with this feature?

I have an IDE integration (Xcode) use case where I want -index-store-path index_store_path to be applied to each C/C++/Obj-C compilation, as the IDE consumes these files for indexing. These files need to be fetched from cache as well, so they need to be a declared output.

Which operating system are you running Bazel on?

No response

What is the output of bazel info release?

No response

If bazel info release returns development version or (@non-git), tell us how you built Bazel.

No response

What's the output of git remote get-url origin; git rev-parse master; git rev-parse HEAD ?

No response

Have you found anything relevant by searching the web?

No response

Any other information, logs, or outputs that you want to share?

I'm willing to contribute this change, if it will be accepted.

@brentleyjones
Copy link
Contributor Author

cc @DavidGoldman

@DavidGoldman
Copy link
Contributor

This seems like a reasonable FR, but a couple of things:

  • Not all toolchains will support this (only Apple Clang can)
  • I wonder if a tree artifact or zip file is better to store the indexstore output, if you go the route where each TU has its own index store, there can be a lot of duplicate record files making the indexstore output fairly large

@oquenchil oquenchil added P4 This is either out of scope or we don't have bandwidth to review a PR. (No assignee) and removed untriaged labels Oct 26, 2022
@brentleyjones
Copy link
Contributor Author

I plan on working on this in the near term.

Copy link

github-actions bot commented Mar 9, 2024

Thank you for contributing to the Bazel repository! This issue has been marked as stale since it has not had any activity in the last 1+ years. It will be closed in the next 90 days unless any other activity occurs. If you think this issue is still relevant and should stay open, please post any comment here and the issue will no longer be marked as stale.

@github-actions github-actions bot added the stale Issues or PRs that are stale (no activity for 30 days) label Mar 9, 2024
@brentleyjones brentleyjones added not stale Issues or PRs that are inactive but not considered stale and removed stale Issues or PRs that are stale (no activity for 30 days) labels Mar 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
not stale Issues or PRs that are inactive but not considered stale P4 This is either out of scope or we don't have bandwidth to review a PR. (No assignee) team-Rules-CPP Issues for C++ rules type: feature request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants