#36270 build: ensure release binaries don't contain `depends` references

ReviewabilityReviewsAgreementSize
#36270 fanquake build: ensure release binaries don't contain `depends` referencesReady0Crickets4 + 7 tests
  • Keep build-host paths out of distributed Linux release binaries
  • Avoids debug symbols and runtime fallbacks referencing paths that do not exist on user systems
  • Ready for review
  • No blockers or pending changes noted
  • No review verdicts recorded
  • No substantive reviews or comments yet
  • No reviewers have weighed in on the changes
  • 4 lines added or modified outside tests
  • 7 lines added or modified in tests
  • 2 lines removed in total
  • 7 files, 4 commits
Build and CI#17 of 56
P3 · cleanup
  • P3 because it improves release binary hygiene without fixing an active build breakage
  • Removes build-host references and ensures automated checks catch future regressions
Reviewability: ReadyStalePaused
Agreement: StrongPositivePositive w/ caveatsNeutralMildDisputedBlockedCrickets
Reviews: current code-review ACKs, then (+stale ACKs) and -NACKs; greener = more ACKs.
Size: lines added or modified outside tests, then in tests; greener = smaller.

Goal

Strips build-host `/bitcoin/depends` directory paths out of Linux Guix release binaries using prefix mapping and explicit configure options for Qt and its dependencies. It also extends `symbol-check.py` to enforce that ELF binaries do not contain `/bitcoin/depends/` string remnants.

Problem: Release binaries currently retain debug symbols and runtime fallback paths pointing to `/bitcoin/depends/` on the Guix build host, which do not exist on user systems.

Reviewability

Ready

Nothing known that would invalidate a review now.

Agreement

Crickets

no substantive comment either way

Objections, suggestions, and questions: none recorded.

Files

7 lines under test/bench/ci.

  • contrib/guix/symbol-check.py +5/-0
  • depends/packages/native_qt.mk +1/-1
  • depends/packages/qt.mk +1/-1
  • contrib/guix/libexec/build_linux.sh +1/-0
  • contrib/guix/libexec/build_linux_gui.sh +1/-0
  • depends/packages/libxcb_util_cursor.mk +1/-0
  • depends/packages/libxkbcommon.mk +1/-0

Card

The short text the ranking pass compares across PRs.

PR #36270 prevents `/bitcoin/depends` build directory paths from ending up in Linux release binaries. It adds prefix-map compiler flags, sets default system paths in depends packages (Qt, libxkbcommon, libxcb_util_cursor), and adds an automated assertion in `symbol-check.py`. It solves path leakage in release binaries that can point runtime lookups to non-existent build dirs. The PR is a draft opened recently by fanquake with no reviews yet.

Data

dossier JSON · extract JSON · model ledger, generated 2026-09-18T03:14, confidence high, input hash 7430f72d3b433ccc
Discussion read under schema 1 rules: suggestions and questions may be missing, and an objection may combine several harms (schema history).
labels: Build system · draft

Categories

Build and CI

P3 · cleanup

Strips build-host `/bitcoin/depends/` directory paths from release binaries and adds verification to `symbol-check.py`. This improves release hygiene by removing non-existent host fallback paths and debug remnants, but does not fix a build-breaking failure.

Membership: Touches depends packages, Guix build scripts, and Guix symbol-check to sanitize release binaries, matching the 'Build system' label.

Factors: security/stability 1, bug 1, performance 0, user value 0, leverage 0