← Back to issue list

[Feature] Add support for dpkg-buildflags for C/C++/Rust

View original Github issue

Metadata

Project
debcraft
Number
#149
Type
issue
State
open
Author
hector-cao
Labels
Status: Triaged
Created
Updated
Closed
—

Current evaluation

Feature request to inject dpkg-buildflags (C/C++/Rust) automatically into part builds. Implemented and merged via commit a0afaae (PR #170), which passes dpkg-buildflags output as build_environment to the parts lifecycle; unit-tested.

Suggested action: close resolved

Reason: The feature landed in commit a0afaae ("feat: pass build environment to the parts lifecycle (#170)"), the newest commit touching debcraft/services/lifecycle.py and present at pinned HEAD e176a546. `_gen_dpkg_buildflags()` runs `dpkg-buildflags --export=sh` and is passed as `build_environment=_gen_dpkg_buildflags()` in `Lifecycle.setup()` (lifecycle.py:55), so flags reach the parts lifecycle automatically rather than being hand-injected via meson-parameters as the reporter described. Coverage exists in tests/unit/services/test_lifecycle.py:68 (`test_build_environment`), which asserts CFLAGS/CXXFLAGS/LDFLAGS are forwarded. Confidence is high on the code evidence; the only uncertainty is process-level (the issue is still labeled 'Triaged' with just an automated Jira bot comment, so no maintainer explicitly confirmed closure).

Evaluated by: mr-cal-bot

Impact: 55 Quick Win: 35 Complexity: 30 Confidence: 90 Actionability: 90

Issue body

Debian package building allows to set global build policies for a package building via **dpkg-buildflags**. This has been true for a long time for C/C++ applications and recently the support for Rust has been added. As of now, developers can inject these options manually by playing with the build plugin options and parameters. Example for meson: ``` meson-parameters: - -Dc_args="$(dpkg-buildflags --get CFLAGS)" ``` But I think debcraft should handle this automatically as this is an integral part of the Debian package building process.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 55
Quick Win: 35
Complexity: 30
Confidence: 90
Actionability: 90
close resolved Feature request to inject dpkg-buildflags (C/C++/Rust) automatically into part builds. Implemented and merged via commit a0afaae (PR #170), which passes dpkg-buildflags output as build_environment to the parts lifecycle; unit-tested.
stealth/space-bunny-alpha
Impact: 55
Quick Win: 35
Complexity: 30
Confidence: 93
Actionability: 92
close resolved Feature request to handle dpkg-buildflags automatically for C/C++/Rust builds instead of hand-injecting flags via plugin parameters. Already implemented in merged PR #170 but the issue was never closed.
qwen/qwen3.6-35b-a3b
Impact: 70
Quick Win: 39
Complexity: 30
Confidence: 95
Actionability: 80
close resolved Feature request to add dpkg-buildflags support for C/C++/Rust builds. This has been implemented and merged in PR #170, which passes dpkg-buildflags output as the build environment to the parts lifecycle.
qwen/qwen3.8-27b
Impact: 55
Quick Win: 30
Staleness: 55
Complexity: 45
Confidence: 75
Support Request: 15
keep open Feature request to automatically pass dpkg-buildflags (CFLAGS, CXXFLAGS, RUSTFLAGS, etc.) to the build environment. Triaged with Jira ticket DEBCRAFT-70. Code in lifecycle.py already implements this via _gen_dpkg_buildflags() added in PR #170.
qwen/qwen3.6-35b-a3b
Staleness: 45
Complexity: 45
Confidence: 75
Support Request: 10
keep open Feature request to automatically apply dpkg-buildflags for C/C++/Rust builds in debcraft. Triaged and internally tracked, but inactive for 60 days.
qwen3.6-35b-a3b-mtp-q6
Staleness: 45
Complexity: 50
Confidence: 85
Support Request: 10
keep open Feature request to automatically integrate dpkg-buildflags for C/C++/Rust builds in debcraft, replacing manual parameter injection. Currently triaged and awaiting implementation.

Update history

No update history recorded yet.

Related work

  • Likely Fixed By: debcraft#170 (confidence 90%)

    Commit a0afaae 'feat: pass build environment to the parts lifecycle (#170)' adds _gen_dpkg_buildflags() and wires it into Lifecycle.setup() as build_environment; verified present at pinned HEAD e176a546 with unit test coverage.

Related issues

Issue Project State Summary Similarity
#170 feat: pass build environment to the parts lifecycle debcraft merged Merged PR #170 in commit a0afaae, passing dpkg-buildflags-derived environment variables into the parts lifecycle.
75%