fix: sccache does not generate new object file if "-gsplit-dwarf" is enabled and the filename or directory of the object is changed #2264
+15
−1
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.
when output dir changed, and -g -gsplit-dwarf is enabled, new object file should be gererated, but not old cached object.
case:
1 echo "int test(){}" > test.cc
2 mkdir o1 o2
3 sccache g++ -c -g -gsplit-dwarf test.cc -o o1/test.o
4 sccache -z
5 sccache g++ -c -g -gsplit-dwarf test.cc -o o2/test.o
6 strings o2/test.o |grep o2/test.dwo