elf: make patchelf a dependency
Metadata
Current evaluation
Merged PR #1888 via commit 7c947f5ec, moving Patchelf out of project_loader build tools and into the deb and snap delivery mechanisms.
Resolution: closed resolved
Reason: PR #1888 was merged as commit 7c947f5ec. It added Patchelf through Snapcraft's existing Debian and snap packaging mechanisms.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Making it a build_tools entry in the project_loader was the wrong
call, we do not for example do the same for xdelta3. We should
instead be handling it through the delivery mechanisms in place,
such that it is in debian/control for the deb and bundled in the
snapcraft snap when running from there.
Signed-off-by: Sergio Schvezov <sergio.schvezov@canonical.com>
- [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [x] If this is a bugfix. Have you checked that there is a bug report open for the issue you are trying to fix on [bug reports](https://bugs.launchpad.net/snapcraft)?
- [x] If this is a new feature. Have you discussed the design on the [forum](https://forum.snapcraft.io)?
- [x] Have you successfully run `./runtests.sh static`?
- [x] Have you successfully run `./runtests.sh unit`?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1888 via commit 7c947f5ec, moving Patchelf out of project_loader build tools and into the deb and snap delivery mechanisms. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1888 (7c947f5ec), moving Patchelf out of project_loader build tools and into Snapcraft's Debian and snap delivery mechanisms. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged after reviewer approval and CI checks. The change corrects patchelf handling by removing it from build_tools and properly configuring it as a dependency via debian/control for deb packages and snapcraft bundling for snaps. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Moved patchelf from build_tools to proper delivery mechanisms, ensuring it is included in debian/control for Debian packages and bundled within the snapcraft snap. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1864 debian/control: Add patchelf to Depends: | snapcraft | closed | Closed unmerged; the apt dependency change was superseded by #1888 (commit 7c947f5ec), which added Patchelf to Snapcraft's deb and snap delivery mechanisms. | |
| #3841 elf: add elf file patcher | snapcraft | merged | Merged PR #3841 in commit e03a971b3, adding a patchelf-based ELF file patcher ported from Snapcraft 6.x for CRAFT-1191. | |
| #3589 snap: correct patch apply for patchelf | snapcraft | merged | Merged PR #3589 fixed PatchELF patch application in the snap build via commit d9484faf9 (merge a636d26b5). | |
| #1873 elf: cleaner patchelf experience | snapcraft | merged | Merged as df6992224: Snapcraft now prefers system Patchelf outside snaps and copies target files to avoid hard-link patching conflicts. | |
| #1967 project_loader: improve the logic to install patchelf as a build tool | snapcraft | merged | Merged PR #1967 as commit 84aaac591, improving patchelf build-tool installation and excluding broken Xenial armhf/s390x packages. | |
| #2006 many: use packaging logic to get patchelf | snapcraft | merged | Merged PR #2006 in commit aa2a40322, replacing separate patchelf retrieval with shared packaging logic so snap and deb builds use the same version. | |
| #3277 pluginhandler: support using patchelf on strict snaps | snapcraft | merged | Merged PR #3277 as fd8e95c3d, adding per-part enable-patchelf support to patch ELF rpaths and interpreters in strictly confined snaps. | |
| #1742707 patchelf is missing from snapcraft Depends: | snapcraft (launchpad) | closed | Reported missing patchelf apt dependency since snapcraft 2.38. Fixed by PR #1888 (commit 7c947f5ec, "elf: make patchelf a dependency"), released in snapcraft 2.40; issue closed by sergiusens. | |
| #5486 build: add patchelf to make dependencies | snapcraft | merged | Merged PR #5486 (commit 8ae6349b9) adds the patchelf apt package to the Make dev dependencies, fixing test failures on self-hosted CI runners where patchelf was missing. | |
| #1669 patchelf with ld-linux from the future | snapcraft | closed | Resolved by commit bdaf0b7f1, which added Snapcraft handling for PatchELF and ELF files when the built glibc/linker does not match the base. |