#36269 guix: build with `_GLIBCXX_USE_DEPRECATED=0`

ReviewabilityReviewsAgreementSize
#36269 fanquake guix: build with `_GLIBCXX_USE_DEPRECATED=0`Ready0Crickets0 + 4 tests
  • Prevent deprecated libstdc++ interfaces from bloating Guix release build outputs
  • Saves a small amount of debug symbol data in Linux and Windows release binaries
  • Ready for review
  • No review verdicts recorded
  • No substantive discussion or review comments yet
  • No reviewers have weighed in so far
  • 0 lines added or modified outside tests
  • 4 lines added or modified in tests
  • 4 lines removed in total
  • 4 files, 1 commits
Build and CI#53 of 56
P4 · cleanup
  • P4 because the benefit is marginal, saving only a few bytes of debug symbols in Guix outputs
  • Poses minor risk of build failures if dependencies expect deprecated libstdc++ features
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

Adds `-D_GLIBCXX_USE_DEPRECATED=0` to `HOST_CFLAGS` in Guix build scripts for Linux and Windows targets. This macro disables deprecated libstdc++ standard library features during release builds.

Problem: By default, libstdc++ enables support for deprecated C++ interfaces, which slightly bloats Guix build outputs with unnecessary debug symbols.

Evidence of importance:

  • PR description: "`_GLIBCXX_USE_DEPRECATED` is defined by default, disable it, which saves a few bytes worth of debug symbols."

Risk of a mistake: medium (build). Compiler flag changes in Guix build scripts affect reproducible release binaries and could cause compilation failures if dependencies or source files rely on deprecated libstdc++ features.

Changed since the previous assessment: The PR has been undrafted and rebased to drop its prior dependency on PR #36082.

Reviewability

Ready

Nothing known that would invalidate a review now.

Agreement

Crickets

no substantive comment either way

Objections, suggestions, and questions: none recorded.

Files

8 lines under test/bench/ci.

  • contrib/guix/libexec/build_linux.sh +1/-1
  • contrib/guix/libexec/build_linux_gui.sh +1/-1
  • contrib/guix/libexec/build_win.sh +1/-1
  • contrib/guix/libexec/build_win_gui.sh +1/-1

Card

The short text the ranking pass compares across PRs.

Adds -D_GLIBCXX_USE_DEPRECATED=0 to Guix host CFLAGS for Linux and Windows release builds. By omitting deprecated C++ standard library interfaces provided by libstdc++, it reduces debug symbol size in build artifacts by a few bytes. The change is a minor build system micro-optimization with no behavior changes for users.

Data

dossier JSON · extract JSON · model ledger, generated 2026-10-02T01:22, confidence high, input hash 8ec082193914df90
Discussion read under schema 1 rules: suggestions and questions may be missing, and an objection may combine several harms (schema history).
labels: Build system

Categories

Build and CI

P4 · cleanup

Disabling deprecated libstdc++ features provides a marginal cleanup that only "saves a few bytes worth of debug symbols" in Guix outputs.

Membership: Matches 'Build system' label and touches Guix release build scripts under contrib/guix/libexec/.

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