Skip site navigation (1)Skip section navigation (2)
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>