Date: Tue, 20 Feb 2024 14:15:55 -0600 From: "John Marino (FreeBSD)" <freebsd@marino.st> To: Jan Beich <jbeich@freebsd.org>, freebsd-ports@freebsd.org Subject: Re: Installed audio/alsa-plugins and dependencies Message-ID: <CAONZFgMpwoQZ5GS4BGvgtPPp4CJBfy2GzAGBLokbaFuE9=bP6A@mail.gmail.com> In-Reply-To: <cysq-di47-wny@FreeBSD.org> References: <eddc-lg8j-wny@FreeBSD.org> <641ffb1d-1a6a-46bc-81ce-1daba2dec27b@chen.org.nz> <1b27f0f5d3062493151897d85e562740@chen.org.nz> <cysq-di47-wny@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> Port dependencies are not package dependencies It's literally defined as LIB_DEPENDS in the makefile. By definition LIB_DEPENDS are run time dependencies. > If you want to install only "alsa-plugins" (aka "main" subpackage) withou= t extra plugins/dependencies just do it like before with all port options u= nset. It's not about what people want. These subpackages are included via OPTIONS. In the case that the OPTIONS are set, the alsa-plugins package needs to pull in the subpackages included by the options. Honestly, I don't see any other interpretation. The package manifest is wrong. If they are not intended to be package dependency, then the subpackages should be defined as BUILD_DEPENDS, not LIB_DEPENDS. But the manifest bug remains regardless of the intend of this particular port. On Tue, Feb 20, 2024 at 1:57=E2=80=AFPM Jan Beich <jbeich@freebsd.org> wrot= e: > > jonc@chen.org.nz writes: > > >>> It appears to be missing the SUBPACKAGE dependencies. Is this > >>> intentional, or a bug? > >> > >> Intentional. See pkg-message: > >> > >> Plugins with extra dependencies moved into subpackages: > >> - alsa-plugins-ffmpeg > >> - alsa-plugins-jack > >> - alsa-plugins-pulseaudio > >> - alsa-plugins-samplerate > >> - alsa-plugins-speex > > > > In my opinion, that's _not_ correct. When we install any > > non-SUBPACKAGE package, anything listed in LIB_DEPENDS or USES are > > automatically listed as package dependencies. However, if I install > > audio/alsa-plugins, the only way I know what dependencies are required > > is to by consulting /usr/ports/audio/alsa-plugins/Makefile. And if > > audio/alsa-plugins was to be compiled with non-standard OPTIONS, it's > > impossible to tell what dependencies are _actually_ required. > > Port dependencies are not package dependencies. With subpackages a > single port can build multiple packages. As such, runtime dependencies[1] > and files are split between multiple packages. However, all build-only > dependencies are shared and not recorded in binary packages. When you > build from ports you build every subpackage[2], so you need to use > options to limit dependencies. > > If you want to install only "alsa-plugins" (aka "main" subpackage) > without extra plugins/dependencies just do it like before with all port > options unset. > > [1] what "make run-depends-list" shows > [2] until https://reviews.freebsd.org/D43789 >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAONZFgMpwoQZ5GS4BGvgtPPp4CJBfy2GzAGBLokbaFuE9=bP6A>