← Back to issue list

refactor: rewrite elf file support

View original Github issue

Metadata

Project
debcraft
Number
#75
Type
pull request
State
merged
Author
cmatsuoka
Labels
Created
Updated
Closed

Current evaluation

Merged rewrite of ELF file support to better match deb building needs, replacing Snapcraft's implementation. Handles needed libraries; symbol support deferred. Approved by two reviewers, passed all CI checks, and resolves #72.

Suggested action:

No scores available.

Issue body

Replace ELF file support from Snapcraft with an implementation that better matches deb building needs. This currently handles needed libraries. Symbols support to be added in a forthcoming PR. Fixes: #72 - [ ] Have you followed the guidelines for contributing? - [ ] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)? - [ ] Have you successfully run `make lint && make test`? ---

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged rewrite of ELF file support to better match deb building needs, replacing Snapcraft's implementation. Handles needed libraries; symbol support deferred. Approved by two reviewers, passed all CI checks, and resolves #72.
qwen3.6-35b-a3b-mtp-q6 Merged. Replaced Snapcraft's ELF file support with a deb-focused implementation handling needed libraries, resolving #72. Symbol support deferred to a subsequent PR.
qwen3.6-35b-a3b-mtp-q6 Merged a refactor replacing Snapcraft's ELF support with a deb-focused implementation handling needed libraries. Resolves #72. Symbol support deferred to a future update.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#3841 elf: add elf file patcher snapcraft merged Merged an ELF file patcher using patchelf, ported from Snapcraft 6.x. Approved by one reviewer, passed CI checks, and increased test coverage by 0.26%. Resolves CRAFT-1191.
77%
#3839 elf: add elf file handler class snapcraft merged Merged into main. Introduces an ELF file handler class with extraction helpers, ported from Snapcraft 6.x. Approved by a reviewer, rebased on main, and merged with a 0.46% test coverage increase.
75%
#2081 elf: patch everything instead of a subset of elf files snapcraft merged Merged a pull request that restores Snapcraft 2.39 behavior by patching all ELF files instead of a subset, reverting a prior change. Approved and passed CI.
75%
#1976 elf: only consider regular files as possible ELF binaries snapcraft merged Merged a fix restricting ELF binary detection to regular files, resolving Snapcraft core snap build failures caused by device files being misidentified. Approved by reviewers and passed CI checks.
74%
#3408 elf: extract defined symbol versions snapcraft merged Merged into master. Adds defined symbol version extraction to the ElfFile class, enabling Snapcraft to detect missing or duplicate libraries. Approved by two reviewers, passed CI, and modified three files.
74%
#1881 elf: better handling for newer libc6 snapcraft merged Merged. Updates ELF handling for newer libc6 by requiring explicit libc6 declaration in snapcraft.yaml. Resolves dependency tracking, incorporates reviewer feedback, and passes CI. Segfaults on bionic are managed via adapter configuration.
73%
#2746 elf: handle missing dependencies not found on system snapcraft merged Merged updates to handle missing ELF dependencies when ldd fails to resolve them. The change prevents filtering unresolved libraries, refactors ldd parsing for reliability, and adds unit tests. Approved by one reviewer and passed CI checks.
73%
#68 refactor: reorganize infrastructure for binary helpers debcraft merged Merged following approval and passing CI. Refactored binary helper infrastructure to add ELF handling and modularize md5sums, control, and deb generation. Superseded by #72 and #73 for updated ELF support and service layout changes.
73%
#335 Redo pkg-config handling with library collecting snapcraft merged Merged. Redoes pkg-config handling for library collecting and implements ELF dependency tracking from host to snap. Approved after integration tests passed, with known sudo/armhf test failures deferred for a future release.
72%
#1950 elf: better debug messages snapcraft merged Merged pull request polishing ELF debug messages for linker and library exclusion checks. Changes eliminate repetitive logging and reduce unnecessary calls. Approved by reviewers, passed CI, and successfully integrated.
71%