#36270 build: ensure release binaries don't contain `depends` references
| Reviewability | Reviews | Agreement | Size | ||||
|---|---|---|---|---|---|---|---|
| #36270 build: ensure release binaries don't contain `depends` references | Ready | 0 | Crickets | 4 + 7 tests | |||
|
|
|
|
| |||
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
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