build: root XLOG categories and debug paths past ccache - #648
Open
michalhosna wants to merge 1 commit into
Open
Conversation
Contributor
|
Should the build dir get a relative map too, or do generated headers not go through base_dir? |
Member
Author
|
They do go through base_dir. ccache makes paths relative to the build dir, so
|
The same TU logged under moqx.ServiceMatcher without ccache and under a src-rooted category with it. The block comment carries the cause. - macro- and debug- maps stay separate: categories want an opaque root, debug info wants paths a debugger started at the worktree root opens. - Objects carry no worktree path either way, so a cache shared between worktrees stops handing back another worktree's DW_AT_comp_dir. - STRIP_PREFIXES takes the build root alone now that the src map supplies the category root it used to strip.
michalhosna
force-pushed
the
mh/xlog-prefix-map
branch
from
August 27, 2026 17:03
c20b111 to
0453dee
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Sharing one ccache across work trees was quietly breaking correctness.
Cause: ccache with base_dir rewrites the source path it forwards to the compiler but leaves -f*-prefix-map untouched, so the map stopped matching. The block comment carries the detail.
Fixes: An object now embeds no worktree path. The shared cache becomes sound
This change is