[Bug 251509] Mk/Uses/gnome.mk: USE_GNOME_IMPL does not propagate :build etc, creating bogus dependencies
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Tue Dec 1 18:46:06 UTC 2020
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=251509
Bug ID: 251509
Summary: Mk/Uses/gnome.mk: USE_GNOME_IMPL does not propagate
:build etc, creating bogus dependencies
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: Individual Port(s)
Assignee: x11 at FreeBSD.org
Reporter: greg at unrelenting.technology
Flags: maintainer-feedback?(x11 at FreeBSD.org)
Assignee: x11 at FreeBSD.org
graphics/libdrm has this:
MANPAGES_USE= GNOME=libxslt:build
Obviously the intention is to use libxslt only during the build.
Now, gnome.mk has:
libxslt_USE_GNOME_IMPL= libxml2
and the way these implications are handled is (minus the unknown check):
. for component in ${USE_GNOME:C/^([^:]+).*/\1/}
_USE_GNOME+= ${${component}_USE_GNOME_IMPL} ${component}
. endfor
Oops, the :build flag is lost (literally deleted by the :C/../../ and never
handled), not propagated, so we basically have USE_GNOME=libxml2 — so this ends
up in the pkg +MANIFEST:
"deps": {
"libpciaccess": {
"origin": "devel/libpciaccess",
"version": "0.16"
},
"libxml2": {
"origin": "textproc/libxml2",
"version": "2.9.10_1"
}
},
But libdrm does not actually depend on libxml2 at runtime!!
---
How I noticed this is that poudriere fails to install anything that depends on
libdrm:
===> mesa-devel-20.3.b.786 depends on package: libva>0 - not found
===> Installing existing package /packages/All/libva-2.9.1.tzst
[unrelenting.technology] Installing libva-2.9.1...
[unrelenting.technology] `-- Installing libXfixes-5.0.3_2...
[unrelenting.technology] `-- Extracting libXfixes-5.0.3_2: .......... done
[unrelenting.technology] `-- Installing libdrm-2.4.103,1...
[unrelenting.technology] | `-- Installing libpciaccess-0.16...
[unrelenting.technology] | | `-- Installing pciids-20201025...
[unrelenting.technology] | | `-- Extracting pciids-20201025: ..... done
[unrelenting.technology] | `-- Extracting libpciaccess-0.16: ......... done
pkg-static: Missing dependency 'libxml2'
…granted, it *shouldn't* fail, it should find the libxml2 dependency, which of
course *was* added to RUN_DEPENDS at the port level, so something went wrong in
poudriere for me here. but I'm glad it did, because idk if anyone would've
found that issue otherwise.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-x11
mailing list