Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 01 Dec 2020 18:46:05 +0000
From:      bugzilla-noreply@freebsd.org
To:        ports-bugs@FreeBSD.org
Subject:   [Bug 251509] Mk/Uses/gnome.mk: USE_GNOME_IMPL does not propagate :build etc, creating bogus dependencies
Message-ID:  <bug-251509-7788@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D251509

            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@FreeBSD.org
          Reporter: greg@unrelenting.technology
             Flags: maintainer-feedback?(x11@FreeBSD.org)
          Assignee: x11@FreeBSD.org

graphics/libdrm has this:

MANPAGES_USE=3D           GNOME=3Dlibxslt:build

Obviously the intention is to use libxslt only during the build.

Now, gnome.mk has:

libxslt_USE_GNOME_IMPL=3D libxml2

and the way these implications are handled is (minus the unknown check):

. for component in ${USE_GNOME:C/^([^:]+).*/\1/}
_USE_GNOME+=3D    ${${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=3Dlibxml2 =E2=80=
=94 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:

=3D=3D=3D>   mesa-devel-20.3.b.786 depends on package: libva>0 - not found
=3D=3D=3D>   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: ......... do=
ne
pkg-static: Missing dependency 'libxml2'


=E2=80=A6granted, it *shouldn't* fail, it should find the libxml2 dependenc=
y, which of
course *was* added to RUN_DEPENDS at the port level, so something went wron=
g in
poudriere for me here. but I'm glad it did, because idk if anyone would've
found that issue otherwise.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-251509-7788>