Bug 252048 - security/p11-kit: dependency on glib?
Summary: security/p11-kit: dependency on glib?
Status: New
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Roman Bogorodskiy
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-12-22 11:18 UTC by Danny
Modified: 2021-01-23 22:14 UTC (History)
2 users (show)

See Also:
bugzilla: maintainer-feedback? (novel)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Danny 2020-12-22 11:18:42 UTC
I just updated p11-kit and it now depends on glib but it doesn't seem to be used?


# pkg info -d p11-kit
p11-kit-0.23.21:
        bash-completion-2.11,2
        libtasn1-4.16.0
        ca_root_nss-3.58
        libffi-3.3_1
        glib-2.66.0_1,1
        gettext-runtime-0.21


# pkg info -l p11-kit | xargs ldd '{}'
/usr/local/bin/p11-kit:
        libp11-kit.so.0 => /usr/local/lib/libp11-kit.so.0 (0x40282000)
        libc.so.7 => /lib/libc.so.7 (0x40383000)
        libffi.so.7 => /usr/local/lib/libffi.so.7 (0x4076f000)
        libthr.so.3 => /lib/libthr.so.3 (0x407b0000)
/usr/local/bin/trust:
        libp11-kit.so.0 => /usr/local/lib/libp11-kit.so.0 (0x40292000)
        libtasn1.so.6 => /usr/local/lib/libtasn1.so.6 (0x40393000)
        libc.so.7 => /lib/libc.so.7 (0x403d4000)
        libffi.so.7 => /usr/local/lib/libffi.so.7 (0x407c0000)
        libthr.so.3 => /lib/libthr.so.3 (0x40801000)
/usr/local/lib/libp11-kit.so:
        libffi.so.7 => /usr/local/lib/libffi.so.7 (0x40790000)
        libthr.so.3 => /lib/libthr.so.3 (0x40e00000)
        libc.so.7 => /lib/libc.so.7 (0x40292000)
/usr/local/lib/libp11-kit.so.0:
        libffi.so.7 => /usr/local/lib/libffi.so.7 (0x40790000)
        libthr.so.3 => /lib/libthr.so.3 (0x40e00000)
        libc.so.7 => /lib/libc.so.7 (0x40292000)
/usr/local/lib/libp11-kit.so.0.3.0:
        libffi.so.7 => /usr/local/lib/libffi.so.7 (0x40790000)
        libthr.so.3 => /lib/libthr.so.3 (0x40e00000)
        libc.so.7 => /lib/libc.so.7 (0x40292000)
/usr/local/lib/p11-kit-proxy.so:
        libffi.so.7 => /usr/local/lib/libffi.so.7 (0x40790000)
        libthr.so.3 => /lib/libthr.so.3 (0x40e00000)
        libc.so.7 => /lib/libc.so.7 (0x40292000)
/usr/local/lib/pkcs11/p11-kit-client.so:
        libffi.so.7 => /usr/local/lib/libffi.so.7 (0x40760000)
        libthr.so.3 => /lib/libthr.so.3 (0x407a1000)
        libc.so.7 => /lib/libc.so.7 (0x40292000)
/usr/local/lib/pkcs11/p11-kit-trust.so:
        libtasn1.so.6 => /usr/local/lib/libtasn1.so.6 (0x406f0000)
        libthr.so.3 => /lib/libthr.so.3 (0x40731000)
        libc.so.7 => /lib/libc.so.7 (0x40292000)
/usr/local/libexec/p11-kit/p11-kit-remote:
        libp11-kit.so.0 => /usr/local/lib/libp11-kit.so.0 (0x40282000)
        libc.so.7 => /lib/libc.so.7 (0x40383000)
        libffi.so.7 => /usr/local/lib/libffi.so.7 (0x4076f000)
        libthr.so.3 => /lib/libthr.so.3 (0x407b0000)
/usr/local/libexec/p11-kit/p11-kit-server:
        libp11-kit.so.0 => /usr/local/lib/libp11-kit.so.0 (0x40282000)
        libc.so.7 => /lib/libc.so.7 (0x40383000)
        libffi.so.7 => /usr/local/lib/libffi.so.7 (0x4076f000)
        libthr.so.3 => /lib/libthr.so.3 (0x407b0000)
Comment 1 Daniel Engberg freebsd_committer freebsd_triage 2020-12-22 17:06:13 UTC
It's the DOCS option
https://github.com/p11-glue/p11-kit/blob/master/doc/manual/meson.build#L63
Comment 2 Danny 2020-12-22 19:01:17 UTC
If it's only used to build DOCS, shouldn't it be a build time only dependency?
Comment 3 Daniel Engberg freebsd_committer freebsd_triage 2020-12-26 21:16:22 UTC
Yes, however this is an edge case and I don't think it's worth working around the ports framework as it doesn't support setting glib as a build dep without doing it "manually" (ie not using USES).
Comment 4 Ted Milker 2021-01-21 22:41:23 UTC
Could this stem from p11-kit 0.23.22 not respecting DOCS=off?

I've got DOCS UNSET by default in my /etc/make.conf as well as adding it to security_p11-kit_UNSET and did a 'make config' to turn it off and /var/db/ports/security_p11-kit looks correct but it won't stop building(and installing all the extra dependencies) for DOCS.  When I run 'make showconfig' it shows DOCS=on no matter what.  BASH works properly, so I know this isn't my config.  This causes:

gtk-doc
py37-pygments
itstool
py37-libxml2
yelp-tools
yelp-xsl

to all install and I don't need any of those otherwise.  I can uninstall them all after the fact but it's a pain.
Comment 5 Daniel Engberg freebsd_committer freebsd_triage 2021-01-23 21:26:43 UTC
(In reply to Ted Milker from comment #4)

Works for me just fine, on both 13-CURRENT and 12.2

Taken from a 12.2 box

root@hanekawa:/usr/ports/security/p11-kit # make showconfig
===> The following configuration options are available for p11-kit-0.23.22:
     BASH=on: Install programmable completions for Bash
     DOCS=off: Build and/or install documentation
     MANPAGES=off: Build and/or install manual pages
     TEST=off: Build and/or run tests
===> Use 'make config' to modify these settings
root@hanekawa:/usr/ports/security/p11-kit # make build-depends-list
/usr/ports/ports-mgmt/pkg
/usr/ports/security/ca_root_nss
/usr/ports/shells/bash-completion
/usr/ports/devel/meson
/usr/ports/devel/ninja
/usr/ports/devel/pkgconf
/usr/ports/security/libtasn1
/usr/ports/devel/libffi
root@hanekawa:/usr/ports/security/p11-kit # make run-depends-list
/usr/ports/security/libtasn1
/usr/ports/devel/libffi
/usr/ports/security/ca_root_nss
/usr/ports/shells/bash-completion
Comment 6 Ted Milker 2021-01-23 21:31:44 UTC
Sorry, forgot to mention, this is on the latest FreeBSD 11.4 release.
Comment 7 Ted Milker 2021-01-23 21:37:51 UTC
Here's the relevant output from my system:

[ted@gamma /usr/ports/security/p11-kit]$ uname -a
FreeBSD gamma.dsndata.com 11.4-RELEASE-p5 FreeBSD 11.4-RELEASE-p5 #0: Tue Dec  1 11:46:55 UTC 2020     root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC  amd64

[ted@gamma /usr/ports/security/p11-kit]$ cat /etc/make.conf | grep DOCS
OPTIONS_UNSET=DOCS IPV6 NLS X11 EXAMPLES CUPS JAVA
security_p11-kit_UNSET=DOCS BASH

[ted@gamma /usr/ports/security/p11-kit]$ make showconfig                   
===> The following configuration options are available for p11-kit-0.23.22:
     BASH=off: Install programmable completions for Bash
     DOCS=on: Build and/or install documentation
     MANPAGES=on: Build and/or install manual pages
     TEST=off: Build and/or run tests
===> Use 'make config' to modify these settings

[ted@gamma /usr/ports/security/p11-kit]$ make build-depends-list
/usr/ports/ports-mgmt/pkg
/usr/ports/security/ca_root_nss
/usr/ports/textproc/gtk-doc
/usr/ports/textproc/libxslt
/usr/ports/devel/meson
/usr/ports/devel/ninja
/usr/ports/devel/pkgconf
/usr/ports/security/libtasn1
/usr/ports/devel/libffi
/usr/ports/devel/glib20
/usr/ports/devel/gettext-runtime

[ted@gamma /usr/ports/security/p11-kit]$ make run-depends-list
/usr/ports/security/libtasn1
/usr/ports/devel/libffi
/usr/ports/devel/glib20
/usr/ports/devel/gettext-runtime
/usr/ports/security/ca_root_nss
Comment 8 Daniel Engberg freebsd_committer freebsd_triage 2021-01-23 22:11:40 UTC
(In reply to Ted Milker from comment #7)
I don't have a 11.4 box here but what happens of you run make rmconfig? UNSET wont "override" already set/available configs.
Comment 9 Ted Milker 2021-01-23 22:14:34 UTC
[ted@gamma /usr/ports/security/p11-kit]$ make rmconfig
===> No user-specified options configured for p11-kit-0.23.22

│[ted@gamma /usr/ports/security/p11-kit]$ make showconfig
│===> The following configuration options are available for p11-kit-0.23.22:
│     BASH=off: Install programmable completions for Bash
│     DOCS=on: Build and/or install documentation
│     MANPAGES=on: Build and/or install manual pages
│     TEST=off: Build and/or run tests
│===> Use 'make config' to modify these settings

I didn't expect it to change, I don't use user configs at all, only /etc/make.conf so I can maintain the same options across development and production machines.  This issue isn't unique to this machine either, it happened on all three of my machines(dev, staging and production) when I updated p11-kit recently.