cc-wrapper: adding a cc-wrapper-hook to the cc-wrapper #197937
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of changes
Adding a
cc-wrapper-hook
to thecc-wrapper
. Theld-wrapper
already has apost-link-hook
. My main motivation for adding this is it will allow us to reliably generatecompile_commands.json
files which are required for LSP servers to function for C/C++ projects. Existing tools for generatingcompile_commands.json
are unreliable on nixos because they struggle to distinguish between the compiler wrappers and the compilers themselves.See my earlier PR for an example of how this could be used: #192694. This PR is just the infrastructure part of my earlier PR. Also see the discussion on discourse: https://discourse.nixos.org/t/using-nix-infrastructure-to-reliably-generate-compile-commands-json/21961/20
I am hoping that this smaller PR will be easier to merge!
Things done
cc-wrapper-hook
tocc-wrapper.sh
.cc-wrapper-hook
andpost-link-hook
.sandbox = true
set innix.conf
? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)nixos/doc/manual/md-to-db.sh
to update generated release notes