| Summary: | lang/gnatcross-sysroot-aarch64: package declares FreeBSD-base libraries as being provided in its manifest | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Ports & Packages | Reporter: | dfr | ||||
| Component: | Individual Port(s) | Assignee: | Fernando Apesteguía <fernape> | ||||
| Status: | Closed FIXED | ||||||
| Severity: | Affects Some People | CC: | chris.tipper, emaste, fernape, freebsd, portmgr | ||||
| Priority: | --- | Flags: | fernape:
maintainer-feedback?
|
||||
| Version: | Latest | ||||||
| Hardware: | Any | ||||||
| OS: | Any | ||||||
| Attachments: |
|
||||||
I can work around this with something like 'pkg install -r FreeBSD-base ...' but so far my attempts to use priorities to prefer shlibs from FreeBSD-base don't work. I notice that this port currently doesn't have a maintainer - perhaps it can be disabled? this port should use BUNDLE_LIBS=yes and not expose its libs Apparently this has caused problems for people not using pkgbase at least once: https://docs.freebsd.org/cgi/getmsg.cgi?fetch=161079+0+archive/2021/freebsd-current/20210321.freebsd-current. I don't have a ports commit bit otherwise I would add BUNDLE_LIBS myself :( Created attachment 235969 [details]
patch to add BUNDLE_LIBS
Could you try this patch?
Looks reasonable to me but I'm not a ports committer so I can't commit it. Let's see if portmgr@ can say something... Hello, This port is unmaintained, you don't need portmgr or other approval to fix it. (In reply to Antoine Brodin from comment #7) Oh, I know that part, but regarding BUNDLE_LIBS the handbook says "Always ask the Ports Management Team <portmgr@FreeBSD.org> before adding this to a port." (In reply to Fernando Apesteguía from comment #8) In comment #2, bapt belongs to portmgr A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=6706c7424c96d9947a624237f61b261dac85b099 commit 6706c7424c96d9947a624237f61b261dac85b099 Author: Fernando Apesteguía <fernape@FreeBSD.org> AuthorDate: 2022-08-17 06:15:37 +0000 Commit: Fernando Apesteguía <fernape@FreeBSD.org> CommitDate: 2022-08-28 11:45:40 +0000 lang/gnatcross-sysroot-aarch64: Use BUNDLE_LIBS Package declares FreeBSD-base libraries as being provided in its manifest. Use BUNDLE_LIBS so the package does not expose its libs. PR: 265570 Reported by: dfr@rabson.org MFH: 2022Q3 lang/gnatcross-sysroot-aarch64/Makefile | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) Committed, Thanks! |
A fragment of the +MANIFEST is included below showing that it declares that it provides base libraries. Note that the package declares that its ABI is FreeBSD:13:amd64 but the libraries contained are for aarch64. Normally this doesn't cause problems since most installations and jails use base.txz and this contains all the base libraries. I created a tiny base image containing FreeBSD-runtime, FreeBSD-pkg-bootstrap and supporting libraries and added a repo declaration for FreeBSD-base pointing at alpha.pkgbase.live. When I try to install extra packages from base, instead of installing dependencies from base, pkg chooses gnatcross-sysroot-aarch64 instead, resulting in a non-functional image. { "name": "gnatcross-sysroot-aarch64", "origin": "lang/gnatcross-sysroot-aarch64", "version": "1_1", "comment": "FreeBSD sysroots for C/Ada cross-compiler (amd64)", "maintainer": "ports@FreeBSD.org", "www": "http://www.dragonlace.net", "abi": "FreeBSD:13:amd64", "arch": "freebsd:13:x86:64", "prefix": "/usr/local/FreeBSD_ARM64", "flatsize": 184282577, "licenselogic": "single", "desc": "This package is used by the lang/gnatcross-aarch64 Ada cross-compiler to\ninstall the system root of FreeBSD ARM64 (aarch64).\n\nWWW: http://www.dragonlace.net", "categories": [ "lang" ], "shlibs_provided": [ "libsdp.so.4", "libcap_pwd.so.0", "libkrb5.so.11", "libprivatebsdstat.so.1", "libhdb.so.11", "libmagic.so.4", "libheimbase.so.11", ...